Hi, I tried to use SmalltalkMethodVisitor and it is pretty unusable: as soon as you put in the importing context something more fancy than #LocalVariable, for example, #Invocations, the importer uses the method SmalltalkMethodVisitor>>resolve: to identify the invoked entity. This method at certain point execute
self methodEntity smalltalkClass theNonMetaClass.
from that invocation you end up looking into the Pharo image for the entity with that name.
Do you think would be easy to made the import of smalltalk independent from the pharo image?
Cheers, Fabrizio
2013/2/28 stephane ducasse stephane.ducasse@free.fr
Fabrizio
the importing context is an object that implements a coherent view on an extracted model. The idea is that you should not import accesses if you do not import variable. So the importing context manages such dependencies and the user just configures the importing context and the importer will follow the dependencies graph represented by the importing context.
The importer always ask shouldIImport…. to the importingContext.
Stef
On Feb 27, 2013, at 2:15 PM, Fabrizio Perin fabrizio.perin@gmail.com wrote:
Another question: what about the importing context?
I tried something basic like:
stImpo := SmalltalkImporter targetModel: self targetModel. stImpo createClass: aRBClassNode.
and a MNU rised because importingContext is nil:
createClass: aClass | class inheritance |
importingContext shouldMergeClassAndMetaclass .....
now I will try with the method parser.
Cheers, Fabrizio
2013/2/27 Fabrizio Perin fabrizio.perin@gmail.com
I believe the code will be opensource but I have to sinch with my boss.
Cheers, Fabrizio
2013/2/27 Fabrizio Perin fabrizio.perin@gmail.com
About the importer I will give a try to the SmalltalkImporter. Anyway my main concern is not to create the structure of the smalltalk application (since the app file is really linear you always have the parent of a node at hand), but the part where I have to campute method invocations and accesses. Is that second part somehow there already?
Let you know how it goes with the importer.
Thanks and cheers, Fabrizio
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev
Moose-dev mailing list Moose-dev@iam.unibe.ch https://www.iam.unibe.ch/mailman/listinfo/moose-dev