From 4756e0c54f41c168f782b5fabff7a757c54053c4 Mon Sep 17 00:00:00 2001 From: Jean Privat Date: Thu, 18 Jun 2009 17:11:18 -0400 Subject: [PATCH] metamodel: promote _filename to MMModule Update inits and MMSrcModule. Signed-off-by: Jean Privat --- src/metamodel/abstractmetamodel.nit | 6 +++++- src/mmloader.nit | 7 ------- src/syntax/syntax.nit | 4 +--- src/syntax/syntax_base.nit | 4 ++-- 4 files changed, 8 insertions(+), 13 deletions(-) diff --git a/src/metamodel/abstractmetamodel.nit b/src/metamodel/abstractmetamodel.nit index 65b98c0..2c7123a 100644 --- a/src/metamodel/abstractmetamodel.nit +++ b/src/metamodel/abstractmetamodel.nit @@ -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 diff --git a/src/mmloader.nit b/src/mmloader.nit index 41a64fd..ad35e01 100644 --- a/src/mmloader.nit +++ b/src/mmloader.nit @@ -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 diff --git a/src/syntax/syntax.nit b/src/syntax/syntax.nit index 6536478..5dbe44e 100644 --- a/src/syntax/syntax.nit +++ b/src/syntax/syntax.nit @@ -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 diff --git a/src/syntax/syntax_base.nit b/src/syntax/syntax_base.nit index bbb972c..096e9b3 100644 --- a/src/syntax/syntax_base.nit +++ b/src/syntax/syntax_base.nit @@ -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 -- 1.7.9.5