core :: union_find
union–find algorithm using an efficient disjoint-set data structurenitc :: actors_generation_phase
Generate a support module for each module that contain a class annotated withis actor
nitc :: actors_injection_phase
Injects model for the classes annotated with "is actor" sonitc :: api_metrics
nitc :: astbuilder
Instantiation and transformation of semantic nodes in the AST of expressions and statementscflags
and ldflags
to specify
nitc :: commands_ini
nitc :: detect_variance_constraints
Collect metrics about detected variances constraints on formal types.extra_java_files
to compile extra java files
nitc :: i18n_phase
Basic support of internationalization through the generation of id-to-string tablesnitc :: light_only
Compiler support for the light FFI only, detects unsupported usage of callbacksnitc
.
nitc :: modelbuilder
nitc :: nitmetrics
A program that collects various metrics on nit programs and librariesnitc :: nitrestful
Tool generating boilerplate code linking RESTful actions to Nit methodsthreaded
annotation
nitc :: separate_erasure_compiler
Separate compilation of a Nit program with generic type erasurenitc :: serialization_code_gen_phase
Phase generating methods (code) to serialize Nit objectsnitc :: serialization_model_phase
Phase generating methods (model-only) to serialize Nit objectsclone
method of the astbuilder tool
nitc :: uml_module
Services for generation of a UML package diagram based on aModel
# Documentation of model entities
module mdoc
import model_base
import location
# Structured documentation of a `MEntity` object
class MDoc
# Raw content, line by line
# The starting `#` and first space are stripped.
# The trailing `\n` are chomped.
var content = new Array[String]
# The entity where the documentation is originally attached to.
# This gives some context to resolve identifiers or to run examples.
var original_mentity: nullable MEntity = null is writable
# The original location of the doc for error messages
var location: Location
# The comment first line
var synopsis: String is lazy do return content.first
# All comment lines except for the synopsis
var comment: String is lazy do
var lines = content.to_a
if not lines.is_empty then lines.shift
return lines.join("\n")
end
# Full comment
var documentation: String is lazy do return content.join("\n")
end
redef class MEntity
# The documentation associated to the entity
var mdoc: nullable MDoc = null is writable
# The documentation associated to the entity or their main nested entity.
#
# * `MPackage`s fall back to their root `MGroup`.
# * `MGroup`s fall back to their `default_mmodule`.
# * `MClass`es, `MClassDef`s, `MProperty`s and `MPropDef`s fall-back to
# their introducing definition.
# * `MClassType`s fall back to their wrapped `MClass`.
# * `MVirtualType`s fall back to their wrapped `MProperty`.
# * `CallSite` fall back on the wrapped `MProperty`.
# * Other entities do not fall back.
#
# One may use `MDoc::original_mentity` to retrieve the original
# source of the documentation.
fun mdoc_or_fallback: nullable MDoc do return mdoc
# Is the entity deprecated?
#
# Used for warnings and in documentation.
# Has no other specific effect.
var deprecation: nullable MDeprecationInfo = null is writable
end
# Information about a deprecated entity
class MDeprecationInfo
# Explanation about the deprecation
var mdoc: nullable MDoc = null is writable
end
src/model/mdoc.nit:15,1--79,3