Hi,
On Wed, Sep 18, 2013 at 3:54 PM, Stephan Eggermont <stephan(a)stack.nl> wrote:
When trying to walk smalltalkhub and import latest
versions to find
invocations,
we needed to make the following changes to make it work:
FAMIXAccess>variable: aStructuralEntity
(aStructuralEntity isKindOf: FAMIXAnnotationInstanceAttribute)
ifFalse: [
variable := FMMultivalueLink on: self
update: #incomingAccesses
from: self variable
to: aStructuralEntity]
This is strange. Why do you need that?
Add
MooseMonticelloVisitor>visitScriptDefinition:
aMCPostscriptDefinition
"TODO"
MooseMonticelloHTTPImporter>setRepositoryCache: aCache.
repositoryCache := aCache
MooseMonticelloMethodPopulator>ensureAnnotationType: aRBPragmaNode
^self importer ensureAnnotationType: aRBPragmaNode.
This looks Ok.
And change for performance:
MooseGroupRuntimeStorage>add: anElement
| key group |
key := anElement class.
group := byType
at: key
ifAbsentPut: [ OrderedCollection new ].
group add: anElement.
elements add: anElement.
byName at: anElement mooseName asSymbol put: anElement.
^ anElement
MooseGroupRuntimeStorage >at: uniqueName ifAbsent: exceptionBlock
| entity na |
na := uniqueName asSymbol.
"look first by name and if not found"
entity := byName at: na ifAbsent: [nil].
entity notNil ifTrue: [
entity mooseName asSymbol = na ifTrue: [
^entity]
ifFalse: [
byName at: na put: nil.
byName at: entity mooseName asSymbol put: entity.
self halt. "Should this be happening?"
]].
^ exceptionBlock value
Would they be safe to commit?
This would not work well at the moment because MooseGroupRuntimeStorage is
used also for all moose groups. We would need to have a storage that is
less demanding for handling associations, and then we could rely on having
name for everything.
Doru
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
--
www.tudorgirba.com
"Every thing has its own flow"