12345678910111213141516171819 |
- Smalltalk createPackage: 'Alybaba'!
- (Smalltalk packageAt: 'Alybaba') imports: {'axon/Axon'. 'lyst/Lyst'}!
- !Object methodsFor: '*Alybaba'!
- atLyst: aCollection consume: aBlock
- | value |
- value := self atLyst: aCollection ifAbsent: [ ^self ].
- ^ aBlock value: value
- !
- atLyst: aCollection transform: aBlock
- | value |
- aCollection last. "raise if empty"
- value := self atLyst: aCollection ifAbsent: [ ^self ].
- value := aBlock value: value.
- value := self atLyst: aCollection ifAbsent: [ ^self ] put: value.
- self registeredAxon ifNotNil: [:axon | axon changed: aCollection]
- ! !
|