- live browsing of Self object memory -

lobby traitshashTableSet

CopyDowns: vector

CreatorPath: traits hashTableSet

Module: setAndDictionary

abstractTraits* = traits abstractSet
representationTraits* = traits hashTableSetOrDictionary

accessing

key:OrValueAt: = ( k)
keyAtOrValueAt: = ( myKeys at: i)

fast accessing and adding

at:ReplaceKey:Value: =
( 
    myKeys   at: i Put: k.
    self)
usingHashForOldKeyIfPossible:AddKey:Value: =
( 
    (comparisonTraits is: k EqualTo: v) 
      ifTrue: [resend.usingHashForOldKeyIfPossible: i AddKey: k Value: v]
       False: [add: v])
usingHashForOldKeyIfPossible:ReplaceKey:Value: =
( 
    (comparisonTraits is: k EqualTo: v)
          ifTrue: [resend.usingHashForOldKeyIfPossible: i ReplaceKey: k Value: v]
           False: [remove: k.
                      add: v])

markers

invalidKeysDo: = ( representationTraits.invalidKeysDo: b)

testing

includes: = ( includesKey: v)
includesKey: = ( representationTraits.includesKey: k)