model: add `MType::as_notnullable` to remove the `nullable` modifier
[nit.git] / src / model / mmodule.nit
index d2750ed..648eb49 100644 (file)
@@ -69,8 +69,10 @@ end
 
 # A Nit module is usually associated with a Nit source file.
 class MModule
+       super MConcern
+
        # The model considered
-       var model: Model
+       redef var model: Model
 
        # placebo for old module nesting hierarchy
        # return null if self is not nested (ie. is a top-level module)
@@ -82,7 +84,7 @@ class MModule
        var mgroup: nullable MGroup
 
        # The short name of the module
-       var name: String
+       redef var name: String
 
        # The origin of the definition
        var location: Location
@@ -219,4 +221,11 @@ class MModule
                        abort
                end
        end
+
+       # Is the mmodule created for internal purpose?
+       # Fictive module are instantied internally but they should not be
+       # exposed to the final user
+       var is_fictive: Bool writable = false
+
+       redef fun parent_concern do return mgroup
 end