Another option could be to add magritte descriptions (and thus separating the implementation from the description).

Also it seems that SmalltalkImporter is not trying to compute types for methods... so this would also need either pragmas or descriptions...

On Tue, Sep 8, 2015 at 11:54 PM, Peter Uhnák <i.uhnak@gmail.com> wrote:
Hi,

I'm getting acquainted more with Moose and FAMIX and I am not really sure how to proceed (mostly due to lack of documentation and link rot).

What I want to do is add "multiplicity" attribute to FAMIXAttribute.
Now I see an option:
1) create a subclass of FAMIXAttribute
2) add a method.. something like
FAMIXAttribute>>multiplicity
    <MSEProperty: #multiplicity type: #MyFAMIXMultiplicity>
    ^ multiplicity

now Moose can generate models from smalltalk source code and I would like to infer this information.

For example for types, there is MooseImportingContext>>computeTypeOfAttributes
So I'm assuming I would have to do something similar.

And finally, if I want to help the importer and actually write that information into the source code, I would have to add another pragma there... something like
MyClass>>myAttribute
    <MSEMultiplicity: '2..*' type: MyType>
    ^ myAttribute

and then modify the smalltalk importer to be able to recognize this and produce MyFAMIXAttribute instead of the default one.

Am I on the right track? Should it be done differently?

Any pointers appreciated,
Peter