Levente Uzonyi uploaded a new version of Collections to project The Trunk:
http://source.squeak.org/trunk/Collections-ul.633.mcz ==================== Summary ==================== Name: Collections-ul.633 Author: ul Time: 5 May 2015, 7:52:50.385 pm UUID: 4937e4f5-8560-437c-a820-0cae464e47a0 Ancestors: Collections-ul.632 Don't try to use Character's ClassificationTable when the new class variables are not initialized properly. This is a possible workaround to fix the Spur bootstrap. =============== Diff against Collections-ul.632 =============== Item was changed: ----- Method: Character>>asLowercase (in category 'converting') ----- asLowercase "Answer the receiver's matching lowercase Character." + AlphaNumericMask ifNotNil: [ + value > 255 ifFalse: [ + | result | + (result := (ClassificationTable at: value + 1) bitAnd: 16rFF) > 0 + ifTrue: [ ^self class value: result ] ] ]. - value > 255 ifFalse: [ - | result | - (result := (ClassificationTable at: value + 1) bitAnd: 16rFF) > 0 - ifTrue: [ ^self class value: result ] ]. ^self class value: (self encodedCharSet toLowercaseCode: value)! Item was changed: ----- Method: Character>>asUppercase (in category 'converting') ----- asUppercase "Answer the receiver's matching uppercase Character." + AlphaNumericMask ifNotNil: [ + value > 255 ifFalse: [ + | result | + (result := ((ClassificationTable at: value + 1) bitShift: -8) bitAnd: 16rFF) > 0 + ifTrue: [ ^self class value: result ] ] ]. - value > 255 ifFalse: [ - | result | - (result := ((ClassificationTable at: value + 1) bitShift: -8) bitAnd: 16rFF) > 0 - ifTrue: [ ^self class value: result ] ]. ^self class value: (self encodedCharSet toUppercaseCode: value)! Item was changed: ----- Method: Character>>isAlphaNumeric (in category 'testing') ----- isAlphaNumeric "Answer whether the receiver is a letter or a digit." + AlphaNumericMask ifNotNil: [ + value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: AlphaNumericMask) > 0 ] ]. - value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: AlphaNumericMask) > 0 ]. ^self encodedCharSet isAlphaNumeric: self! Item was changed: ----- Method: Character>>isDigit (in category 'testing') ----- isDigit + DigitBit ifNotNil: [ + value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: DigitBit) > 0 ] ]. - value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: DigitBit) > 0 ]. ^self encodedCharSet isDigit: self. ! Item was changed: ----- Method: Character>>isLetter (in category 'testing') ----- isLetter + LetterMask ifNotNil: [ + value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: LetterMask) > 0 ] ]. - value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: LetterMask) > 0 ]. ^self encodedCharSet isLetter: self! Item was changed: ----- Method: Character>>isLowercase (in category 'testing') ----- isLowercase + AlphaNumericMask ifNotNil: [ + value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: LowercaseBit) > 0 ] ]. - value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: LowercaseBit) > 0 ]. ^self encodedCharSet isLowercase: self. ! Item was changed: ----- Method: Character>>isUppercase (in category 'testing') ----- isUppercase + AlphaNumericMask ifNotNil: [ + value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: UppercaseBit) > 0 ] ]. - value > 255 ifFalse: [ ^((ClassificationTable at: value + 1) bitAnd: UppercaseBit) > 0 ]. ^self encodedCharSet isUppercase: self. ! |
Free forum by Nabble | Edit this page |