>> when we merge a class and its metaclass:
>> a metaclass instVar will become a "class variable"
>> But we really need a way to make the distinction between a
>> sharedvariable and merged class inst var.
>> so I would like to have isShared in attribute or SmalltalkFamix
>> extension: how do I do that in
There is no solution yet. I would say isShared is a good solution.
Ok I will implement that
>> Then if I have the same variable name at the instance and
>> when I merge I have a conflict with name
>> and the importer will break.
Why should it break?
I checked and the ensure* attribute should be storing a name
method, class, namespace, package we can use object in the hashtable
but not for stff like attribte since they are not runtime objects.
ensureAttribute: name for: aClass
^(self scopeOfClass: aClass)
so I may ask for a class instance variable and get an instance
variable and vice versa. For ClassVar this is not a problem since they
should be uppercased.
Then this is just that if I query the uniqueInstance class instance
var and that the class side
You should not depend on names when storing the
variables anymore. As for looking the variable or method up
afterwards, you know at all times if you are looking on the class or
on the instance side, so you can always ask it specifically.
do you see my point?
>> So I could modify the importer to have another mapping and let in
>> resulting model
>> two attributes with the same name but different scope
>> or I could modify the name of the mapped class inst var with
>> something like CL-x (would means I was a class var
>> but I was merged). Of course this solution is uglier but easier to
>> Moose-dev mailing list
> Moose-dev mailing list
"If you interrupt the barber while he is cutting your hair, you will
end up with a messy haircut."
Moose-dev mailing list