Login  Register

Famix2MSE importer Available in PharoMoose

Posted by Laval Jannik-2 on Feb 16, 2010; 10:06am
URL: https://forum.world.st/Famix2MSE-importer-Available-in-PharoMoose-tp1557155.html

Hi all,

With Cyrille we work on a Famix2MseImporter in Pharo Famix3.

It is a hack, in two parts:
First, we place a script between the parser and the MooseElement creation. So this script switches elements of Famix2 to Famix3. For example, a FAMIX.InheritanceDefinition in the Famix2Mse become a FamixInheritance in Famix3.

The other part of the script appears after the mooseModel creation. In Famix3, there are FamixAccess and FamixReference. But in Famix2, there is only FamixAccess.
FamixReference is for a target with type FamixClass. But, when the parser works, it is not easily possible to know the type of an attribute. So, to do it easy, when the MooseModel is created, we check all accesses and test if the target is a FamixClass. If true, the script change the link in a FamixReference.

Now, we have three elements with no possible switch:
- there is no FAMIXGlobalVariable>>declaredType in Famix2.
- in Famix3, FAMIXInvocation>>receivingVariable has disappeared.
- in Famix3, FAMIXParameter>>position has disappeared.

The meta-informations in Famix2Mse are not taken account.

Finally, this script is a hack, the aim is to provide a solution for people  who want to come to Pharo-Moose.

You can load it with:

Gofer new
squeaksource: 'Famix2Importer';
package: 'Famix2Importer';
load.

A menu item is available in MoosePanel menu.
You can try it and mail us if you have some bugs.

Cheers,
Jannik and Cyrille.


_______________________________________________
Moose-dev mailing list
[hidden email]
https://www.iam.unibe.ch/mailman/listinfo/moose-dev