Hi,


On Wed, Sep 18, 2013 at 3:54 PM, Stephan Eggermont <stephan@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@iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev



--
www.tudorgirba.com

"Every thing has its own flow"