[Pkg] The Trunk: Collections-ar.327.mcz

commits at source.squeak.org commits at source.squeak.org
Sat Mar 6 04:49:47 UTC 2010

Andreas Raab uploaded a new version of Collections to project The Trunk:

==================== Summary ====================

Name: Collections-ar.327
Author: ar
Time: 5 March 2010, 8:49:17.398 pm
UUID: cf3e56b1-2389-e54e-bf97-d2ea5eba849a
Ancestors: Collections-ar.326

Avoid dictionary protocol in Smalltalk.

=============== Diff against Collections-ar.326 ===============

Item was changed:
  ----- Method: LookupKey>>beBindingOfType:announcing: (in category 'bindings') -----
  beBindingOfType: aClass announcing: aBool
  	"Make the receiver a global binding of the given type"
  	| old new |
+ 	(Smalltalk globals associationAt: self key) == self
- 	(Smalltalk associationAt: self key) == self
  		ifFalse:[^self error:'Not a global variable binding'].
  	self class == aClass ifTrue:[^self].
  	old := self.
  	new := aClass key: self key value: self value.
  	old become: new.
  	"NOTE: Now self == read-only (e.g., the new binding)"
  	^self recompileBindingsAnnouncing: aBool!

Item was changed:
  ----- Method: Association>>objectForDataStream: (in category 'objects from disk') -----
  objectForDataStream: refStrm
  	| dp |
  	"I am about to be written on an object file.  If I am a known global, write a proxy that will hook up with the same resource in the destination system."
+ 	^ (Smalltalk globals associationAt: key ifAbsent: [nil]) == self 
- 	^ (Smalltalk associationAt: key ifAbsent: [nil]) == self 
  		ifTrue: [dp := DiskProxy global: #Smalltalk selector: #associationOrUndeclaredAt: 
  							args: (Array with: key).
  			refStrm replace: self with: dp.
  		ifFalse: [self]!

More information about the Packages mailing list