metamodel: promote _filename to MMModule
authorJean Privat <jean@pryen.org>
Thu, 18 Jun 2009 21:11:18 +0000 (17:11 -0400)
committerJean Privat <jean@pryen.org>
Wed, 24 Jun 2009 19:47:47 +0000 (15:47 -0400)
Update inits and MMSrcModule.

Signed-off-by: Jean Privat <jean@pryen.org>

src/metamodel/abstractmetamodel.nit
src/mmloader.nit
src/syntax/syntax.nit
src/syntax/syntax_base.nit

index 65b98c0..2c7123a 100644 (file)
@@ -126,6 +126,9 @@ class MMModule
        # The directory of the module
        readable attr _directory: MMDirectory
 
+       # The filename of the module
+       readable attr _filename: String
+
        # Module dependence hierarchy element
        readable attr _mhe: PartialOrderElement[MMModule] 
 
@@ -156,7 +159,7 @@ class MMModule
        # Dictionary of global classes
        attr _global_class_by_name: Map[Symbol, MMGlobalClass] = new HashMap[Symbol, MMGlobalClass]
 
-       protected init(name: Symbol, dir: MMDirectory, context: MMContext)
+       protected init(name: Symbol, dir: MMDirectory, context: MMContext, filename: String)
        do
                _name = name
                _directory = dir
@@ -167,6 +170,7 @@ class MMModule
                else
                        _full_name = dir.full_name_for(name)
                end
+               _filename = filename
        end
 
        # Register that a module is imported with a visibility
index 41a64fd..ad35e01 100644 (file)
@@ -277,7 +277,6 @@ class ModuleLoader
                        abort
                end
                var m = parse_file(context, file, filename, module_name, dir)
-               m.filename = filename
                if file != stdin then file.close
                return m
        end
@@ -290,12 +289,6 @@ class ModuleLoader
 end
 
 redef class MMModule
-       # The filename of the module
-       readable writable attr _filename: String
-
-       # Last modification time
-       readable writable attr _mtime: Int 
-
        # Recurcivelty process an import modules
        meth import_supers_modules(names: Collection[Symbol])
        do
index 6536478..5dbe44e 100644 (file)
@@ -43,9 +43,7 @@ special ModuleLoader
                end
                var node_module = node_tree.n_base
                assert node_module isa AModule
-               var module = new MMSrcModule(context, node_module, dir, name)
-               #module.filename = fname
-               #module.mtime = fname.file_stat.mtime
+               var module = new MMSrcModule(context, node_module, dir, name, filename)
                return module
        end
 
index bbb972c..096e9b3 100644 (file)
@@ -29,9 +29,9 @@ special MMModule
        # Concrete NIT source local classs by name
        readable attr _src_local_classes: Map[Symbol, MMSrcLocalClass]
 
-       init(c: MMContext, source: AModule, dir: MMDirectory, name: Symbol)
+       init(c: MMContext, source: AModule, dir: MMDirectory, name: Symbol, filename: String)
        do
-               super(name, dir, c)
+               super(name, dir, c, filename)
                _node = source
                _src_local_classes = new HashMap[Symbol, MMSrcLocalClass]
        end