[squeak-dev] The Trunk: System-topa.763.mcz

commits at source.squeak.org commits at source.squeak.org
Thu Aug 27 21:40:13 UTC 2015


Tobias Pape uploaded a new version of System to project The Trunk:
http://source.squeak.org/trunk/System-topa.763.mcz

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

Name: System-topa.763
Author: topa
Time: 27 August 2015, 11:39:32.305 pm
UUID: 8731d6a1-ac9a-4cb9-90cf-92400d1289d2
Ancestors: System-mt.762

since any system event fires #prefEvent:, any addition of a class side method with some pragma will fire #addPragmaPreference. So instead of bailing, just do nothing when the method is in fact no pref.

=============== Diff against System-mt.762 ===============

Item was changed:
  ----- Method: Preferences class>>addPragmaPreference: (in category 'add/remove') -----
  addPragmaPreference: pragma
  	"Note that there will be no accessor method generated because the pragma's method does already govern that."
  	
  	| preference |
- 	self assert: pragma methodClass isMeta.
  	
  	((pragma keyword beginsWith: #preference:) and: [self respondsTo: pragma keyword])
+ 		ifFalse: [
+ 			"no pragma pref to be defined. do nothing"
+ 			^ self].
+ 	self assert: pragma methodClass isMeta.
- 		ifFalse: [Error signal: 'Cannot create pragma preference object.'. ^ self].
  	
  	preference := self
  		perform: pragma keyword
  		withArguments: pragma arguments.
  			
  	preference 
  		provider: pragma methodClass theNonMetaClass
  		getter: pragma method selector 
  		setter: pragma method selector asMutator.
  			
  	self atomicUpdatePreferences: [ :copyOfDictionaryOfPreferences |
  		copyOfDictionaryOfPreferences
  			at: preference id
  			put: preference].
  
  	^ preference!



More information about the Squeak-dev mailing list