X-Git-Url: http://nitlanguage.org diff --git a/src/model/mdoc.nit b/src/model/mdoc.nit index 2f8d045..261fafe 100644 --- a/src/model/mdoc.nit +++ b/src/model/mdoc.nit @@ -16,6 +16,7 @@ module mdoc import model_base +import location # Structured documentation of a `MEntity` object class MDoc @@ -27,17 +28,25 @@ class MDoc # 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 end redef class MEntity # The documentation associated to the entity - var mdoc: nullable MDoc is writable + var mdoc: nullable MDoc = null is writable # The documentation associated to the entity or their main nested entity. # - # MProject fall-back to their root MGroup - # MGroup fall-back to their default_mmodule - # Other entities do not fall-back + # * `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.