3290 |
3290 |
3291 prefix isEmpty ifTrue:[ |
3291 prefix isEmpty ifTrue:[ |
3292 nextChar isLetter ifFalse:[ |
3292 nextChar isLetter ifFalse:[ |
3293 ((nextChar == $_) and:[allowUnderscoreInIdentifier]) ifFalse:[ |
3293 ((nextChar == $_) and:[allowUnderscoreInIdentifier]) ifFalse:[ |
3294 ((nextChar == $.) and:[allowPeriodInSymbol]) ifFalse:[ |
3294 ((nextChar == $.) and:[allowPeriodInSymbol]) ifFalse:[ |
3295 "/ just for the better error message |
3295 (nextChar isDigit and:[parserFlags allowSymbolsStartingWithDigit]) ifFalse:[ |
3296 (nextChar isNationalAlphaNumeric) ifTrue:[ |
3296 "/ just for the better error message |
3297 |errMsg| |
3297 (nextChar isNationalAlphaNumeric) ifTrue:[ |
3298 |
3298 |errMsg| |
3299 errMsg := 'Invalid character: ''' , nextChar asString , ''' ', '(' , (nextChar codePoint radixPrintStringRadix:16) , ').'. |
3299 |
3300 errMsg := errMsg , '\\Notice:\ Only 7-bit ascii allowed (for compatibility with other Smalltalk dialects).' withCRs. |
3300 errMsg := 'Invalid character: ''' , nextChar asString , ''' ', '(' , (nextChar codePoint radixPrintStringRadix:16) , ').'. |
3301 errMsg := errMsg , '\ If you need symbols with 8-bit characters, use the #''...'' form, or ''...'' asSymbol.' withCRs. |
3301 errMsg := errMsg , '\\Notice:\ Only 7-bit ascii allowed (for compatibility with other Smalltalk dialects).' withCRs. |
3302 self syntaxError:errMsg position:tokenPosition to:source position+1. |
3302 errMsg := errMsg , '\ If you need symbols with 8-bit characters, use the #''...'' form, or ''...'' asSymbol.' withCRs. |
3303 ]. |
3303 self syntaxError:errMsg position:tokenPosition to:source position+1. |
3304 ^ nil |
3304 ]. |
|
3305 ^ nil |
|
3306 ] |
3305 ] |
3307 ] |
3306 ] |
3308 ] |
3307 ]. |
3309 ]. |
3308 ]. |
3310 ]. |
3309 |
3311 |