I use Class.setContainer(Namespace) in VerveineJ

But it is a bit strange that:
- NamedEntities have a ParentPackage relationship. Maybe this ParentPackage could be removed for the sake of consistency in the metamodel and we keep the more generic belongsTo (a ContainerEntity)

- then Type as the relationship "container" (a ContainerEntity) which is explicitly documented as: "Container is a namespace, not a package (Smalltalk)."
Why not call it Namespace in this case? And, again, why should we treat differently Namespaces and Packages?


De: "Usman Bhatti" <usman.bhatti@gmail.com>
À: "Moose-related development" <moose-dev@iam.unibe.ch>
Envoyé: Mercredi 11 Mai 2011 11:55:40
Objet: [Moose-dev] Namespace and Packages

I am creating a C# extractor for Moose. I am using Fame for java to access Famix objects and populate their information (similar to VerveineJ). While creating Famix.Class objects for C# classes, I need to set parent namespace to represent the namespace that the class belongs to. 

However, the Famix.Class only provides a single method to set the parent and that take a Famix.Package as a parameter. So, the following expression is an error for a Famix.Class object.


Since, C# uses namespaces instead of Packages to organize classes, it would be good to set a Famix.Namespace to be the parent of a class. Does meta-model not provide a way that we can set Famix.Namespace as a parent of a class. I can see another method in the Famix.Class and that is SetContainer(ContainerEntity se). Can I use this method to set a Namespace to be the parent of a Class and keeping the parentPackage relationship empty?



Moose-dev mailing list