Merge: Clean old projects from `contrib`
[nit.git] / contrib / neo_doxygen / src / model / descriptions.nit
diff --git a/contrib/neo_doxygen/src/model/descriptions.nit b/contrib/neo_doxygen/src/model/descriptions.nit
deleted file mode 100644 (file)
index 66341f3..0000000
+++ /dev/null
@@ -1,118 +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.
-
-# Documentation associated to an entity.
-module model::descriptions
-
-import json::static
-import json
-
-# Documentation associated to an entity.
-#
-# The documentation is written in Markdown format.
-#
-# ~~~nit
-# var doc = new Documentation
-#
-# doc.brief_description = "Do something."
-# doc.detailed_description = ["Do not lunch a rocket."]
-# assert doc.brief_description == "Do something."
-# assert doc.detailed_description == ["Do not lunch a rocket."]
-# assert doc.to_json == """["Do something.","Do not lunch a rocket."]"""
-#
-# doc.brief_description = ""
-# doc.detailed_description = ["The answer is `42`."]
-# assert doc.brief_description == "The answer is `42`."
-# assert doc.detailed_description == ["The answer is `42`."]
-# assert doc.to_json == """["The answer is `42`."]"""
-#
-# doc.detailed_description = ["The answer is `42`."]
-# doc.brief_description = ""
-# assert doc.brief_description == "The answer is `42`."
-# assert doc.detailed_description == ["The answer is `42`."]
-# assert doc.to_json == """["The answer is `42`."]"""
-#
-# doc.detailed_description = new Array[String]
-# doc.brief_description = ""
-# assert doc.is_empty
-# assert doc.brief_description == ""
-# assert doc.detailed_description == new Array[String]
-# assert doc.to_json == "[]"
-# ~~~
-class Documentation
-       super Serializable
-
-       private var content = new JsonStringArray
-       private var has_brief_description: Bool = false
-
-       # The brief description.
-       #
-       # If it is empty, the first element of `detailed_description` will be used
-       # as brief description.
-       fun brief_description=(brief_description: String) do
-               if brief_description.is_empty then
-                       if has_brief_description then
-                               content.shift
-                               has_brief_description = false
-                       end
-               else if has_brief_description then
-                       content.first = brief_description
-               else
-                       content.unshift(brief_description)
-                       has_brief_description = true
-               end
-       end
-
-       # The brief description.
-       fun brief_description: String do
-               if not is_empty then return content.first
-               return ""
-       end
-
-       # The detailed description.
-       #
-       # Each element should represent a block.
-       fun detailed_description=(detailed_description: SequenceRead[String]) do
-               if has_brief_description then
-                       while content.length > 1 do content.pop
-               else
-                       content.clear
-               end
-               content.add_all(detailed_description)
-       end
-
-       # The detailed description.
-       #
-       # Each element should represent a block.
-       fun detailed_description: SequenceRead[String] do
-               if not has_brief_description then return content
-               if content.length > 1 then return content.subarray(1, content.length - 1)
-               return new Array[String]
-       end
-
-       # Add a block of detailed description.
-       fun add(block: String) do content.add block
-
-       # Is the documentation empty?
-       fun is_empty: Bool do return content.is_empty
-
-       redef fun serialize_to(v) do content.serialize_to v
-       redef fun accept_json_serializer(v) do content.serialize_to v
-end
-
-# A `Serializable` array of strings.
-private class JsonStringArray
-       super JsonSequenceRead[String]
-       super Array[String]
-end