--- a/Cface__CDefinitionScanner.st Tue Sep 04 15:07:07 2012 +0000
+++ b/Cface__CDefinitionScanner.st Wed Sep 05 11:12:41 2012 +0000
@@ -32,63 +32,59 @@
<comment> : \# [^\r\n]* ;
"
-
- "Modified: / 09-09-2008 / 17:05:06 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !
!CDefinitionScanner class methodsFor:'generated-initialization'!
initializeKeywordMap
keywordMap := Dictionary new.
- #( #(34 'argument' 14)
- #(34 'array' 8)
- #(34 'char' 16)
- #(34 'const' 31)
- #(34 'double' 26)
- #(34 'enum' 20)
- #(34 'field' 18)
- #(34 'float' 28)
- #(34 'function' 12)
- #(34 'int' 5)
- #(34 'long' 3)
- #(34 'return' 7)
- #(34 'short' 6)
- #(34 'signed' 4)
- #(34 'struct' 32)
- #(34 'typedef' 22)
- #(34 'union' 24)
- #(34 'unsigned' 1)
- #(34 'value' 17)
- #(34 'void' 27)
- #(34 'wchar_t' 29)
- #(37 'argument' 14)
- #(37 'array' 8)
- #(37 'char' 16)
- #(37 'const' 31)
- #(37 'double' 26)
- #(37 'enum' 20)
- #(37 'field' 18)
- #(37 'float' 28)
- #(37 'function' 12)
- #(37 'int' 5)
- #(37 'long' 3)
- #(37 'return' 7)
- #(37 'short' 6)
- #(37 'signed' 4)
- #(37 'struct' 32)
- #(37 'typedef' 22)
- #(37 'union' 24)
- #(37 'unsigned' 1)
- #(37 'value' 17)
- #(37 'void' 27)
- #(37 'wchar_t' 29) )
+ #( #(34 'argument' 28)
+ #(34 'array' 26)
+ #(34 'char' 18)
+ #(34 'const' 13)
+ #(34 'double' 17)
+ #(34 'enum' 4)
+ #(34 'field' 6)
+ #(34 'float' 16)
+ #(34 'function' 30)
+ #(34 'int' 19)
+ #(34 'long' 21)
+ #(34 'return' 25)
+ #(34 'short' 20)
+ #(34 'signed' 22)
+ #(34 'struct' 11)
+ #(34 'typedef' 2)
+ #(34 'union' 8)
+ #(34 'unsigned' 23)
+ #(34 'value' 27)
+ #(34 'void' 15)
+ #(34 'wchar_t' 14)
+ #(37 'argument' 28)
+ #(37 'array' 26)
+ #(37 'char' 18)
+ #(37 'const' 13)
+ #(37 'double' 17)
+ #(37 'enum' 4)
+ #(37 'field' 6)
+ #(37 'float' 16)
+ #(37 'function' 30)
+ #(37 'int' 19)
+ #(37 'long' 21)
+ #(37 'return' 25)
+ #(37 'short' 20)
+ #(37 'signed' 22)
+ #(37 'struct' 11)
+ #(37 'typedef' 2)
+ #(37 'union' 8)
+ #(37 'unsigned' 23)
+ #(37 'value' 27)
+ #(37 'void' 15)
+ #(37 'wchar_t' 14) )
do:[:each |
(keywordMap at:each first ifAbsentPut:[ Dictionary new ]) at:(each at:2)
put:each last
].
^ keywordMap
-
- "Modified: / 09-09-2008 / 17:05:05 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !
!CDefinitionScanner methodsFor:'generated-scanner'!
@@ -109,8 +105,6 @@
^ self reportLastMatch
].
^ self reportLastMatch
-
- "Modified: / 09-09-2008 / 17:05:05 / Jan Vrany <vranyj1@fel.cvut.cz>"
!
scan2
@@ -123,7 +117,7 @@
self step.
(currentCharacter isLetter)
] whileTrue.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[ (currentCharacter between:$- and:$/) or:[ currentCharacter == $_ ] ])
ifTrue:[
[
@@ -136,7 +130,7 @@
].
^ self reportLastMatch
].
- (currentCharacter isXMLDigit)
+ (currentCharacter isNationalDigit)
] whileTrue.
((currentCharacter between:$- and:$/) or:[ currentCharacter == $_ ]) ifTrue:[
[
@@ -148,8 +142,6 @@
^ self reportLastMatch
].
^ self reportLastMatch
-
- "Modified: / 09-09-2008 / 17:05:05 / Jan Vrany <vranyj1@fel.cvut.cz>"
!
scan3
@@ -861,17 +853,17 @@
]
])
ifTrue:[ ^ self scan1 ].
- (currentCharacter isXMLDigit) ifTrue:[
+ (currentCharacter isNationalDigit) ifTrue:[
^ self scan2
].
(currentCharacter isSeparator
- or:[ currentCharacter == (Character value:16rB) ])
+ or:[ currentCharacter == (Character codePoint:16rB) ])
ifTrue:[
[
self recordMatch:#whitespace.
self step.
(currentCharacter isSeparator
- or:[ currentCharacter == (Character value:16rB) ])
+ or:[ currentCharacter == (Character codePoint:16rB) ])
] whileTrue.
^ self reportLastMatch
].
@@ -880,10 +872,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$F)
+ (currentCharacter between:(Character codePoint:16rE) and:$F)
or:[ currentCharacter >= $H ]
]
])
@@ -893,9 +885,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -905,10 +897,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$d)
+ (currentCharacter between:(Character codePoint:16rE) and:$d)
or:[ currentCharacter >= $f ]
]
])
@@ -918,9 +910,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -930,10 +922,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$m)
+ (currentCharacter between:(Character codePoint:16rE) and:$m)
or:[ currentCharacter >= $o ]
]
])
@@ -943,9 +935,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -955,10 +947,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$d)
+ (currentCharacter between:(Character codePoint:16rE) and:$d)
or:[ currentCharacter >= $f ]
]
])
@@ -968,9 +960,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -980,10 +972,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$q)
+ (currentCharacter between:(Character codePoint:16rE) and:$q)
or:[ currentCharacter >= $s ]
]
])
@@ -993,9 +985,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -1005,10 +997,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$`)
+ (currentCharacter between:(Character codePoint:16rE) and:$`)
or:[ currentCharacter >= $b ]
]
])
@@ -1018,9 +1010,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -1030,10 +1022,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$s)
+ (currentCharacter between:(Character codePoint:16rE) and:$s)
or:[ currentCharacter >= $u ]
]
])
@@ -1043,9 +1035,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -1055,10 +1047,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$d)
+ (currentCharacter between:(Character codePoint:16rE) and:$d)
or:[ currentCharacter >= $f ]
]
])
@@ -1068,9 +1060,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -1080,10 +1072,10 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
or:[
- (currentCharacter between:(Character value:16rE) and:$c)
+ (currentCharacter between:(Character codePoint:16rE) and:$c)
or:[ currentCharacter >= $e ]
]
])
@@ -1093,21 +1085,21 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
].
(currentCharacter == $d) ifTrue:[
- self recordMatch:#( 11 38 ).
+ self recordMatch:#( 33 38 ).
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
ifTrue:[
[
@@ -1115,9 +1107,9 @@
self step.
(currentCharacter <= (Character tab)
or:[
- (currentCharacter between:(Character value:16rB)
- and:(Character value:16rC))
- or:[ currentCharacter >= (Character value:16rE) ]
+ (currentCharacter between:(Character codePoint:16rB)
+ and:(Character codePoint:16rC))
+ or:[ currentCharacter >= (Character codePoint:16rE) ]
])
] whileTrue.
^ self reportLastMatch
@@ -1143,10 +1135,10 @@
^ self reportLastMatch
].
(currentCharacter == $() ifTrue:[
- ^ self recordAndReportMatch:#( 13 ).
+ ^ self recordAndReportMatch:#( 31 ).
].
(currentCharacter == $)) ifTrue:[
- ^ self recordAndReportMatch:#( 15 ).
+ ^ self recordAndReportMatch:#( 29 ).
].
(currentCharacter == $-) ifTrue:[
self recordMatch:#( 37 ).
@@ -1162,7 +1154,7 @@
] whileTrue.
^ self reportLastMatch
].
- (currentCharacter isXMLDigit) ifTrue:[
+ (currentCharacter isNationalDigit) ifTrue:[
^ self scan2
].
^ self reportLastMatch
@@ -1197,7 +1189,7 @@
(currentCharacter == $e) ifTrue:[
self step.
(currentCharacter == $t) ifTrue:[
- ^ self recordAndReportMatch:#( 21 ).
+ ^ self recordAndReportMatch:#( 5 ).
].
^ self reportLastMatch
].
@@ -1216,7 +1208,7 @@
(currentCharacter == $z) ifTrue:[
self step.
(currentCharacter == $e) ifTrue:[
- ^ self recordAndReportMatch:#( 30 ).
+ ^ self recordAndReportMatch:#( 10 ).
].
^ self reportLastMatch
].
@@ -1229,7 +1221,7 @@
(currentCharacter == $e) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1253,7 +1245,7 @@
(currentCharacter == $n) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1277,7 +1269,7 @@
(currentCharacter == $u) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1316,14 +1308,17 @@
(currentCharacter == $-) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$e)
- or:[ (currentCharacter between:$g and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$e)
+ or:[ (currentCharacter between:$g and:$z) ]
+ ]
]
]
])
@@ -1339,7 +1334,7 @@
(currentCharacter == $f) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -1365,14 +1360,17 @@
(currentCharacter == $o) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$q)
- or:[ (currentCharacter between:$s and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$q)
+ or:[ (currentCharacter between:$s and:$z) ]
+ ]
]
]
])
@@ -1388,7 +1386,7 @@
(currentCharacter == $r) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -1414,7 +1412,7 @@
(currentCharacter == $e) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -1440,14 +1438,17 @@
(currentCharacter == $i) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$f)
- or:[ (currentCharacter between:$h and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$f)
+ or:[ (currentCharacter between:$h and:$z) ]
+ ]
]
]
])
@@ -1463,14 +1464,17 @@
(currentCharacter == $g) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$m)
- or:[ (currentCharacter between:$o and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$m)
+ or:[ (currentCharacter between:$o and:$z) ]
+ ]
]
]
])
@@ -1484,7 +1488,7 @@
^ self reportLastMatch
].
(currentCharacter == $n) ifTrue:[
- self recordMatch:#( 23 37 ).
+ self recordMatch:#( 3 37 ).
self step.
(currentCharacter isLetterOrDigit
or:[ (currentCharacter between:$- and:$/) or:[ currentCharacter == $_ ] ])
@@ -1524,7 +1528,7 @@
(currentCharacter == $f) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1551,7 +1555,7 @@
(currentCharacter == $r) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1575,7 +1579,7 @@
(currentCharacter == $o) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1612,7 +1616,7 @@
^ self reportLastMatch
].
(currentCharacter == $:) ifTrue:[
- ^ self recordAndReportMatch:#( 10 ).
+ ^ self recordAndReportMatch:#( 32 ).
].
^ self reportLastMatch
].
@@ -1623,7 +1627,7 @@
(currentCharacter == $u) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1647,7 +1651,7 @@
(currentCharacter == $n) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1671,7 +1675,7 @@
(currentCharacter == $c) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1695,7 +1699,7 @@
(currentCharacter == $t) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1719,7 +1723,7 @@
(currentCharacter == $i) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1743,7 +1747,7 @@
(currentCharacter == $o) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1782,14 +1786,17 @@
(currentCharacter == $-) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$s)
- or:[ (currentCharacter between:$u and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$s)
+ or:[ (currentCharacter between:$u and:$z) ]
+ ]
]
]
])
@@ -1805,12 +1812,15 @@
(currentCharacter == $t) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
- or:[ (currentCharacter between:$a and:$x) or:[ currentCharacter == $z ] ]
+ (currentCharacter between:$A and:$Z)
+ or:[
+ currentCharacter == $_
+ or:[ (currentCharacter between:$a and:$x) or:[ currentCharacter == $z ] ]
+ ]
]
])
ifTrue:[
@@ -1825,14 +1835,17 @@
(currentCharacter == $y) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$o)
- or:[ (currentCharacter between:$q and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$o)
+ or:[ (currentCharacter between:$q and:$z) ]
+ ]
]
]
])
@@ -1848,7 +1861,7 @@
(currentCharacter == $p) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -1872,7 +1885,7 @@
^ self reportLastMatch
].
(currentCharacter == $e) ifTrue:[
- self recordMatch:#( 2 37 ).
+ self recordMatch:#( 24 37 ).
self step.
(currentCharacter isLetterOrDigit
or:[ (currentCharacter between:$- and:$/) or:[ currentCharacter == $_ ] ])
@@ -1914,7 +1927,7 @@
(currentCharacter == $p) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1938,7 +1951,7 @@
(currentCharacter == $o) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1962,7 +1975,7 @@
(currentCharacter == $i) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -1986,7 +1999,7 @@
(currentCharacter == $n) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2010,7 +2023,7 @@
(currentCharacter == $t) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2034,7 +2047,7 @@
(currentCharacter == $e) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2073,14 +2086,17 @@
(currentCharacter == $-) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$s)
- or:[ (currentCharacter between:$u and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$s)
+ or:[ (currentCharacter between:$u and:$z) ]
+ ]
]
]
])
@@ -2096,7 +2112,7 @@
(currentCharacter == $t) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -2120,7 +2136,7 @@
^ self reportLastMatch
].
(currentCharacter == $o) ifTrue:[
- self recordMatch:#( 33 37 ).
+ self recordMatch:#( 12 37 ).
self step.
(currentCharacter isLetterOrDigit
or:[ (currentCharacter between:$- and:$/) or:[ currentCharacter == $_ ] ])
@@ -2156,7 +2172,7 @@
(currentCharacter == $s) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2180,7 +2196,7 @@
(currentCharacter == $t) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2204,7 +2220,7 @@
(currentCharacter == $r) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2228,7 +2244,7 @@
(currentCharacter == $u) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2252,7 +2268,7 @@
(currentCharacter == $c) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2291,14 +2307,17 @@
(currentCharacter == $-) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$e)
- or:[ (currentCharacter between:$g and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$e)
+ or:[ (currentCharacter between:$g and:$z) ]
+ ]
]
]
])
@@ -2314,7 +2333,7 @@
(currentCharacter == $f) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -2340,14 +2359,17 @@
(currentCharacter == $o) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$q)
- or:[ (currentCharacter between:$s and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$q)
+ or:[ (currentCharacter between:$s and:$z) ]
+ ]
]
]
])
@@ -2363,7 +2385,7 @@
(currentCharacter == $r) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -2389,7 +2411,7 @@
(currentCharacter == $e) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -2415,14 +2437,17 @@
(currentCharacter == $i) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$f)
- or:[ (currentCharacter between:$h and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$f)
+ or:[ (currentCharacter between:$h and:$z) ]
+ ]
]
]
])
@@ -2438,14 +2463,17 @@
(currentCharacter == $g) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$m)
- or:[ (currentCharacter between:$o and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$m)
+ or:[ (currentCharacter between:$o and:$z) ]
+ ]
]
]
])
@@ -2459,7 +2487,7 @@
^ self reportLastMatch
].
(currentCharacter == $n) ifTrue:[
- self recordMatch:#( 25 37 ).
+ self recordMatch:#( 9 37 ).
self step.
(currentCharacter isLetterOrDigit
or:[ (currentCharacter between:$- and:$/) or:[ currentCharacter == $_ ] ])
@@ -2503,7 +2531,7 @@
(currentCharacter == $t) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2524,7 +2552,7 @@
(currentCharacter == $y) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2548,7 +2576,7 @@
(currentCharacter == $p) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2572,7 +2600,7 @@
(currentCharacter == $e) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2596,7 +2624,7 @@
(currentCharacter == $d) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2620,7 +2648,7 @@
(currentCharacter == $e) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2659,14 +2687,17 @@
(currentCharacter == $-) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$e)
- or:[ (currentCharacter between:$g and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$e)
+ or:[ (currentCharacter between:$g and:$z) ]
+ ]
]
]
])
@@ -2682,7 +2713,7 @@
(currentCharacter == $f) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -2708,14 +2739,17 @@
(currentCharacter == $o) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$q)
- or:[ (currentCharacter between:$s and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$q)
+ or:[ (currentCharacter between:$s and:$z) ]
+ ]
]
]
])
@@ -2731,7 +2765,7 @@
(currentCharacter == $r) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -2757,7 +2791,7 @@
(currentCharacter == $e) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -2783,14 +2817,17 @@
(currentCharacter == $i) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$f)
- or:[ (currentCharacter between:$h and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$f)
+ or:[ (currentCharacter between:$h and:$z) ]
+ ]
]
]
])
@@ -2806,14 +2843,17 @@
(currentCharacter == $g) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$m)
- or:[ (currentCharacter between:$o and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$m)
+ or:[ (currentCharacter between:$o and:$z) ]
+ ]
]
]
])
@@ -2827,7 +2867,7 @@
^ self reportLastMatch
].
(currentCharacter == $n) ifTrue:[
- self recordMatch:#( 9 37 ).
+ self recordMatch:#( 1 37 ).
self step.
(currentCharacter isLetterOrDigit
or:[ (currentCharacter between:$- and:$/) or:[ currentCharacter == $_ ] ])
@@ -2873,7 +2913,7 @@
(currentCharacter == $u) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2897,7 +2937,7 @@
(currentCharacter == $n) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2921,7 +2961,7 @@
(currentCharacter == $i) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2945,7 +2985,7 @@
(currentCharacter == $o) ifTrue:[
self recordMatch:#( 34 37 ).
self step.
- ((currentCharacter between:$0 and:$9)
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$A and:$Z)
or:[
@@ -2984,14 +3024,17 @@
(currentCharacter == $-) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$e)
- or:[ (currentCharacter between:$g and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$e)
+ or:[ (currentCharacter between:$g and:$z) ]
+ ]
]
]
])
@@ -3007,7 +3050,7 @@
(currentCharacter == $f) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -3033,14 +3076,17 @@
(currentCharacter == $o) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$q)
- or:[ (currentCharacter between:$s and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$q)
+ or:[ (currentCharacter between:$s and:$z) ]
+ ]
]
]
])
@@ -3056,7 +3102,7 @@
(currentCharacter == $r) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -3082,7 +3128,7 @@
(currentCharacter == $e) ifTrue:[
self recordMatch:#( 37 ).
self step.
- (currentCharacter isXMLDigit
+ (currentCharacter isNationalDigit
or:[
(currentCharacter between:$- and:$/)
or:[
@@ -3108,14 +3154,17 @@
(currentCharacter == $i) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$f)
- or:[ (currentCharacter between:$h and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$f)
+ or:[ (currentCharacter between:$h and:$z) ]
+ ]
]
]
])
@@ -3131,14 +3180,17 @@
(currentCharacter == $g) ifTrue:[
self recordMatch:#( 37 ).
self step.
- ((currentCharacter between:$- and:$9)
+ (currentCharacter isNationalDigit
or:[
- (currentCharacter between:$A and:$Z)
+ (currentCharacter between:$- and:$/)
or:[
- currentCharacter == $_
+ (currentCharacter between:$A and:$Z)
or:[
- (currentCharacter between:$a and:$m)
- or:[ (currentCharacter between:$o and:$z) ]
+ currentCharacter == $_
+ or:[
+ (currentCharacter between:$a and:$m)
+ or:[ (currentCharacter between:$o and:$z) ]
+ ]
]
]
])
@@ -3152,7 +3204,7 @@
^ self reportLastMatch
].
(currentCharacter == $n) ifTrue:[
- self recordMatch:#( 19 37 ).
+ self recordMatch:#( 7 37 ).
self step.
(currentCharacter isLetterOrDigit
or:[ (currentCharacter between:$- and:$/) or:[ currentCharacter == $_ ] ])
@@ -3192,22 +3244,16 @@
^ self reportLastMatch
].
^ self reportLastMatch
-
- "Modified: / 09-09-2008 / 17:05:05 / Jan Vrany <vranyj1@fel.cvut.cz>"
! !
!CDefinitionScanner methodsFor:'generated-tokens'!
emptySymbolTokenId
- ^64
-
- "Modified: / 09-09-2008 / 17:05:05 / Jan Vrany <vranyj1@fel.cvut.cz>"
+ ^40
!
errorTokenId
- ^65
-
- "Modified: / 09-09-2008 / 17:05:05 / Jan Vrany <vranyj1@fel.cvut.cz>"
+ ^39
! !
!CDefinitionScanner class methodsFor:'documentation'!