Dear List,
I am currently working on a C importer based on srcML output. I created an extension of FAMIX3 (I am working with Pharo) since FAMIX3 did not express procedural languages. Essentially, 4 classes defines this extension: - CAFunction subclass of FAMIXBehaviouralEntity - CAInclue subclass of FAMIXAssociation - CAModule subclass of FAMIXScopingEntity - CAVariable subclass of FAMIXGlobalVariable
An instance of CAModule is intended to describe a C Module, instance being generated from a C file. I think this should be the right way to do.
On the other hand, there are FAMIXFolder and FAMIXFile. Ideally, a C file should be seen as a file _and_ as a module. The class FAMIXFile contains useful methods, that I would like to use on a CAModule. But having one instance of CAModule and one instance of FAMIXFile per .c file is clearly suboptimal. My intuitions argues for creating a trait TFAMIXFile, that will be used by both FAMIXFile and CAModule.
Any comment on this trait?
Cheers, Alexandre