Le 27 nov. 2012 à 20:39, Tudor Girba a écrit :
Hi,
First of all: welcome! And thanks for the questions.
On 27 Nov 2012, at 17:21, Anne Etien anne.etien@univ-lille1.fr wrote:
Hi,
I have studied the Famix metamodel and I have some questions / remarks:
- There is a reference (I think even a composition) between ScopingEntities and Function. It thus means that by inheritance, a Module, a Namespace or a Package refer to function. Does it make sense for Namespace or Package?
Yes. In C++, you can have a function in a namespace.
- Furthermore, there also exist a reference (I think even a composition) between Module and Function. In Module, how the distinction is done between the functions collection inherited from ScopingEntitiy and the specific one?
I do not understand.
I will try to better explain. There exists a reference named functions from ScopingEntity to Function. So Module as a ScopingEntity inherits from this reference. But there also exists a reference named functions from Module to Function. So my question is: Is there two references named functions in Module (and if it is the case, how we can distinguish them) or it is a kind of overloading, but in ten years I never saw it in metamodel.
- There is a reference between ImplicitVariable and BehaviouralEntity (parentBehaviouralEntity) whose opposite reference is named localVariables. However, in BehaviouralEntity, the reference named localVariables points to LocalVariables. And there is no inheritance between ImplicitVariable and LocalVariable.
This seems to be a problem. Please open an issue.
I will do it.
- There is a reference (globalVariables) (I think even a composition) between ScopingEntities and GlobalVariable with an opposite reference. There is also a reference between GlobalVariable and Module (parentModule) but without any opposite reference.
The missing reference is a problem. As for Module, it has a different intent from a Namespace in that the Module is more of a physical packaging entity more specific to C++. But, just for reference, Module is not really mature.
If the missing reference is a problem, it means that once again in Module, there are two references named globalVariables (one inherited from ScopingEntity and the other is specific to Module). Is it an overloading or something else? Since for reference, Module is not really mature, I hope my remarks will help.
Anne
Is this later an easy way to determine the module as a ScopingEntity to which a GlobalVariable belongs to or does it add something from the reference between GlobalVariable and ScopingEntities.
It would be nice if someone can give me explanations.
Anne PS: Sorry, if the questions have been already asked, I am new on the list.
No problem. Keep the questions coming.
Cheers, Doru
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
-- www.tudorgirba.com
"Live like you mean it."
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev