compiler/PPCGuard.st
changeset 515 b5316ef15274
parent 464 f6d77fee9811
child 524 f6f68d32de73
equal deleted inserted replaced
502:1e45d3c96ec5 515:b5316ef15274
    69     
    69     
    70     classification keysAndValuesDo: [ :index :value | value ifTrue: [  
    70     classification keysAndValuesDo: [ :index :value | value ifTrue: [  
    71         (index > 32 and: [ index < 127 ]) ifTrue: [ 
    71         (index > 32 and: [ index < 127 ]) ifTrue: [ 
    72             compiler add: '(context peek == ', (Character value: index) storeString, ')'
    72             compiler add: '(context peek == ', (Character value: index) storeString, ')'
    73         ] ifFalse: [ 
    73         ] ifFalse: [ 
    74             id := compiler idFor: (Character value: index) prefixed: #character.
    74             id := compiler idFor: (Character value: index) defaultName: #character.
    75             compiler addConstant: (Character value: index) as: id.
    75             compiler addConstant: (Character value: index) as: id.
    76             compiler add: '(context peek = ', id, ')'.
    76             compiler add: '(context peek = ', id, ')'.
    77      		] 
    77      		] 
    78     ] ].
    78     ] ].
    79 !
    79 !
    90 testAny
    90 testAny
    91     ^ classification allSatisfy: [ :e | e ].
    91     ^ classification allSatisfy: [ :e | e ].
    92 !
    92 !
    93 
    93 
    94 testMessage: selector
    94 testMessage: selector
    95  		classification keysAndValuesDo: [:index :element |
    95  				classification keysAndValuesDo: [:index :element |
    96 				(element = ((Character value: index) perform: selector)) ifFalse: [ 
    96 								(element = ((Character value: index) perform: selector)) ifFalse: [ 
    97 						^ false 
    97 												^ false 
    98 				]
    98 								]
    99 		].
    99 				].
   100 		^ true
   100 				^ true
   101 !
   101 !
   102 
   102 
   103 testSingleCharacter
   103 testSingleCharacter
   104     ^ (classification select: [ :e | e ]) size = 1
   104     ^ (classification select: [ :e | e ]) size = 1
   105 ! !
   105 ! !