From: Alexandre Terrasa Date: Tue, 12 Jun 2018 15:41:59 +0000 (-0400) Subject: src/doc/commands: merge `catalog_json` intro `templates_json` X-Git-Url: http://nitlanguage.org src/doc/commands: merge `catalog_json` intro `templates_json` Signed-off-by: Alexandre Terrasa --- diff --git a/src/catalog/catalog_json.nit b/src/catalog/catalog_json.nit deleted file mode 100644 index da1bcfc..0000000 --- a/src/catalog/catalog_json.nit +++ /dev/null @@ -1,85 +0,0 @@ -# This file is part of NIT ( http://www.nitlanguage.org ). -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Translate catalog entities to JSON -module catalog_json - -import catalog - -redef class MPackageMetadata - serialize - - redef fun core_serialize_to(v) do - super - v.serialize_attribute("license", license) - v.serialize_attribute("maintainers", maintainers) - v.serialize_attribute("contributors", contributors) - v.serialize_attribute("tags", tags) - v.serialize_attribute("tryit", tryit) - v.serialize_attribute("apk", apk) - v.serialize_attribute("homepage", homepage) - v.serialize_attribute("browse", browse) - v.serialize_attribute("git", git) - v.serialize_attribute("issues", issues) - v.serialize_attribute("first_date", first_date) - v.serialize_attribute("last_date", last_date) - end -end - -# Catalog statistics -redef class CatalogStats - serialize - - redef fun core_serialize_to(v) do - super - v.serialize_attribute("packages", packages) - v.serialize_attribute("maintainers", maintainers) - v.serialize_attribute("contributors", contributors) - v.serialize_attribute("tags", tags) - v.serialize_attribute("modules", modules) - v.serialize_attribute("classes", classes) - v.serialize_attribute("methods", methods) - v.serialize_attribute("loc", loc) - end -end - -# MPackage statistics for the catalog -redef class MPackageStats - serialize - - redef fun core_serialize_to(v) do - super - v.serialize_attribute("mmodules", mmodules) - v.serialize_attribute("mclasses", mclasses) - v.serialize_attribute("mmethods", mmethods) - v.serialize_attribute("loc", loc) - v.serialize_attribute("errors", errors) - v.serialize_attribute("warnings", warnings) - v.serialize_attribute("warnings_per_kloc", warnings_per_kloc) - v.serialize_attribute("documentation_score", documentation_score) - v.serialize_attribute("commits", commits) - v.serialize_attribute("score", score) - end -end - -redef class Person - serialize - - redef fun core_serialize_to(v) do - super - v.serialize_attribute("name", name) - v.serialize_attribute("email", email) - v.serialize_attribute("gravatar", gravatar) - end -end diff --git a/src/doc/commands/commands_json.nit b/src/doc/commands/commands_json.nit index 045f497..e4a1020 100644 --- a/src/doc/commands/commands_json.nit +++ b/src/doc/commands/commands_json.nit @@ -22,7 +22,7 @@ import commands_main import commands_usage import templates::templates_json -import catalog::catalog_json +import json::static redef class DocCommand # Return a JSON Serializable representation of `self` results diff --git a/src/doc/templates/templates_json.nit b/src/doc/templates/templates_json.nit index a75dc49..1135460 100644 --- a/src/doc/templates/templates_json.nit +++ b/src/doc/templates/templates_json.nit @@ -25,7 +25,6 @@ module templates_json import model::model_collect -import json::static import json::serialization_write import catalog import doc_down @@ -376,3 +375,72 @@ end redef class String super JsonRef end + +# Catalog + +redef class MPackageMetadata + serialize + + redef fun core_serialize_to(v) do + super + v.serialize_attribute("license", license) + v.serialize_attribute("maintainers", maintainers) + v.serialize_attribute("contributors", contributors) + v.serialize_attribute("tags", tags) + v.serialize_attribute("tryit", tryit) + v.serialize_attribute("apk", apk) + v.serialize_attribute("homepage", homepage) + v.serialize_attribute("browse", browse) + v.serialize_attribute("git", git) + v.serialize_attribute("issues", issues) + v.serialize_attribute("first_date", first_date) + v.serialize_attribute("last_date", last_date) + end +end + +# Catalog statistics +redef class CatalogStats + serialize + + redef fun core_serialize_to(v) do + super + v.serialize_attribute("packages", packages) + v.serialize_attribute("maintainers", maintainers) + v.serialize_attribute("contributors", contributors) + v.serialize_attribute("tags", tags) + v.serialize_attribute("modules", modules) + v.serialize_attribute("classes", classes) + v.serialize_attribute("methods", methods) + v.serialize_attribute("loc", loc) + end +end + +# MPackage statistics for the catalog +redef class MPackageStats + serialize + + redef fun core_serialize_to(v) do + super + v.serialize_attribute("mmodules", mmodules) + v.serialize_attribute("mclasses", mclasses) + v.serialize_attribute("mmethods", mmethods) + v.serialize_attribute("loc", loc) + v.serialize_attribute("errors", errors) + v.serialize_attribute("warnings", warnings) + v.serialize_attribute("warnings_per_kloc", warnings_per_kloc) + v.serialize_attribute("documentation_score", documentation_score) + v.serialize_attribute("commits", commits) + v.serialize_attribute("score", score) + end +end + +redef class Person + serialize + + redef fun core_serialize_to(v) do + super + v.serialize_attribute("name", name) + v.serialize_attribute("email", email) + v.serialize_attribute("gravatar", gravatar) + end +end