6 ^ self new: self defaultCapacity!
10 ^ self basicNew initialize: requestedCapacity!
21 add: anObject withOccurances: anInteger
22 (contents at: anObject)
23 isNil ifTrue: [contents at: anObject put: anInteger]
24 ifFalse: [contents at: anObject put: ((contents at: anObject) + anInteger)]!
28 self add: anObject withOccurances: 1!
31 remove: anObject ifAbsent: aBlock
33 count := (contents at: anObject).
34 count ifNil: [^ aBlock value].
35 (count := count - 1) = 0
36 ifTrue: [contents removeKey: anObject]
37 ifFalse: [contents at: anObject put: count].
41 occurancesOf: anObject
43 count := (contents at: anObject).
50 contents keysDo: [ :object | (contents at: object) timesRepeat: [aBlock value: object]]!
56 self do: [ :object | count := count + 1].
61 initialize: requestedCapacity
62 contents := Dictionary new: (self class minimumCapacity max: requestedCapacity)!