Update inits and MMSrcModule.
Signed-off-by: Jean Privat <jean@pryen.org>
# 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]
# 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
else
_full_name = dir.full_name_for(name)
end
+ _filename = filename
end
# Register that a module is imported with a visibility
abort
end
var m = parse_file(context, file, filename, module_name, dir)
- m.filename = filename
if file != stdin then file.close
return m
end
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
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
# 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