home *** CD-ROM | disk | FTP | other *** search
- Class ArrayedCollection :SequenceableCollection
- ! current !
- [
- = anArray ! i !
- (self size ~= anArray size)
- ifTrue: [^ false].
-
- i <- 0.
-
- self do: [:x | (x ~= (anArray at: (i <- i + 1)))
- ifTrue: [^ false]
- ].
- ^ true
- |
- at: key ifAbsent: exceptionBlock
- ((key <= 0) or: [key > self size])
- ifTrue: [^ exceptionBlock value].
-
- ^ self at: key
- |
- coerce: aCollection ! temp !
- temp <- self class new: aCollection size.
-
- temp replaceFrom: 1 to: aCollection size with: aCollection.
-
- ^ temp
- |
- copyFrom: start to: stop ! size temp !
- size <- stop - start + 1.
- temp <- self class new: size.
- temp replaceFrom: 1 to: size with: self startingAt: start.
- ^ temp
- |
- currentKey
- ^ current
- |
- deepCopy ! newobj !
- newobj <- self class new: self size.
-
- (1 to: self size) do: [:i | newobj at: i put: (self at: i) copy ].
-
- ^ newobj
- |
- do: aBlock
- (1 to: self size)
- do: [:i | current <- i.
- aBlock value: (self at: i)]
- |
- first
- current <- 1.
- ^ (current <= self size)
- ifTrue: [ self at: current]
- |
- firstKey
- ^ 1
- |
- lastKey
- ^ self size
- |
- next
- current <- current + 1.
- ^ (current <= self size)
- ifTrue: [ self at: current]
- |
- padTo: length
- ^ (self size < length)
- ifTrue: [ self , (self class new: (length - self size) ) ]
- ifFalse: [ self ]
- |
- shallowCopy ! newobj !
- newobj <- self class new: self size.
-
- (1 to: self size) do: [:i | newobj at: i put: (self at: i) ].
-
- ^ newobj
- ]
-