author | Claus Gittinger <cg@exept.de> |
Thu, 14 Feb 2019 14:57:14 +0100 | |
branch | cvs_MAIN |
changeset 3882 | 8fc7564975e5 |
parent 3458 | 6a8487b950d2 |
child 3860 | e87f2f1439e9 |
child 3980 | c6875f04c2f4 |
permissions | -rw-r--r-- |
3458 | 1 |
"{ Encoding: utf8 }" |
2 |
||
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
3 |
"{ Package: 'stx:libjava/tools' }" |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
4 |
|
3458 | 5 |
"{ NameSpace: Smalltalk }" |
6 |
||
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
7 |
JavaScanner subclass:#GroovyScanner |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
8 |
instanceVariableNames:'' |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
9 |
classVariableNames:'' |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
10 |
poolDictionaries:'' |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
11 |
category:'Languages-Groovy-Tools-Source' |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
12 |
! |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
13 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
14 |
|
3105
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
15 |
!GroovyScanner class methodsFor:'initialization'! |
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
16 |
|
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
17 |
setupKeywordTable |
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
18 |
"initialize the scanners actionTables - these are used to dispatch |
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
19 |
into scanner methods as characters are read" |
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
20 |
|
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
21 |
super setupKeywordTable. |
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
22 |
KeywordTable at: 'def' put: #def. |
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
23 |
|
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
24 |
"Created: / 14-05-2014 / 14:06:18 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
25 |
! ! |
7cc116da75e8
Added 'def' to keywords.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3101
diff
changeset
|
26 |
|
3101
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
27 |
!GroovyScanner methodsFor:'error reporting'! |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
28 |
|
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
29 |
warnPossibleIncompatibility:aString position:smallInteger1 to:smallInteger2 |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
30 |
|
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
31 |
"Created: / 12-05-2014 / 16:23:10 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
32 |
! ! |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
33 |
|
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
34 |
!GroovyScanner methodsFor:'reading next token'! |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
35 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
36 |
nextString:delimiter character:ignored |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
37 |
|s pos nextChar inString inTrippleQuoteString | |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
38 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
39 |
s := (String new:20) writeStream. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
40 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
41 |
pos := source position. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
42 |
source next. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
43 |
nextChar := source next. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
44 |
inString := true. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
45 |
inTrippleQuoteString := false. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
46 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
47 |
(delimiter == $" and:[nextChar == $"]) ifTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
48 |
source peek == $" ifTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
49 |
inTrippleQuoteString := true. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
50 |
nextChar := source next. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
51 |
nextChar := source next. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
52 |
]. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
53 |
]. |
3101
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
54 |
(delimiter == $' and:[nextChar == $']) ifTrue:[ |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
55 |
source peek == $' ifTrue:[ |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
56 |
inTrippleQuoteString := true. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
57 |
nextChar := source next. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
58 |
nextChar := source next. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
59 |
]. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
60 |
]. |
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
61 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
62 |
[inString] whileTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
63 |
nextChar isNil ifTrue:[ |
3240
4e707dec1e44
Fix in GroovyScanner: honour allowRunawayString
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3105
diff
changeset
|
64 |
allowRunawayString ifTrue:[ |
4e707dec1e44
Fix in GroovyScanner: honour allowRunawayString
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3105
diff
changeset
|
65 |
tokenValue := s contents. |
4e707dec1e44
Fix in GroovyScanner: honour allowRunawayString
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3105
diff
changeset
|
66 |
tokenType := #String. |
4e707dec1e44
Fix in GroovyScanner: honour allowRunawayString
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3105
diff
changeset
|
67 |
^ tokenType. |
4e707dec1e44
Fix in GroovyScanner: honour allowRunawayString
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3105
diff
changeset
|
68 |
]. |
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
69 |
self syntaxError:'unexpected end-of-input in String' |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
70 |
position:pos + 1 to:(source position). |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
71 |
tokenValue := nil. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
72 |
tokenType := #EOF. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
73 |
^ tokenType |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
74 |
]. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
75 |
nextChar == $\ ifTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
76 |
nextChar := source next. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
77 |
nextChar := self characterEscape:nextChar. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
78 |
] ifFalse:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
79 |
(nextChar == Character cr) ifTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
80 |
lineNr := lineNr + 1 |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
81 |
] ifFalse:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
82 |
(nextChar == delimiter) ifTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
83 |
inTrippleQuoteString ifTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
84 |
nextChar := source next. |
3101
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
85 |
nextChar == delimiter ifTrue:[ |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
86 |
"/ OK, two $"/$' found... |
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
87 |
nextChar := source next. |
3101
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
88 |
nextChar == delimiter ifTrue:[ |
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
89 |
inString := false. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
90 |
] ifFalse:[ |
3101
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
91 |
s nextPut:delimiter. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
92 |
s nextPut:delimiter. |
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
93 |
]. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
94 |
] ifFalse:[ |
3101
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
95 |
s nextPut:delimiter. |
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
96 |
]. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
97 |
] ifFalse:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
98 |
(source peekOrNil == delimiter) ifTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
99 |
source next |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
100 |
] ifFalse:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
101 |
inString := false |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
102 |
] |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
103 |
] |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
104 |
]. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
105 |
]. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
106 |
]. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
107 |
inString ifTrue:[ |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
108 |
s nextPut:nextChar. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
109 |
nextChar := source next |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
110 |
] |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
111 |
]. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
112 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
113 |
tokenValue := s contents. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
114 |
tokenType := #String. |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
115 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
116 |
^ tokenType |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
117 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
118 |
"Created: / 18-10-2013 / 12:54:03 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3240
4e707dec1e44
Fix in GroovyScanner: honour allowRunawayString
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
3105
diff
changeset
|
119 |
"Modified: / 18-09-2014 / 11:40:39 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
3101
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
120 |
! |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
121 |
|
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
122 |
nextToken |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
123 |
"Refefined here to support hash-bang" |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
124 |
|
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
125 |
source position < 1 ifTrue:[ |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
126 |
source peek == $# ifTrue:[ |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
127 |
source next. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
128 |
source peek == $!! ifTrue:[ |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
129 |
source nextLine. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
130 |
]. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
131 |
]. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
132 |
]. |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
133 |
^ super nextToken |
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
134 |
|
446b34b9a386
Fixed GroovyScanner w.r.t ''' multiline comments.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
2873
diff
changeset
|
135 |
"Created: / 12-05-2014 / 16:21:29 / Jan Vrany <jan.vrany@fit.cvut.cz>" |
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
136 |
! ! |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
137 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
138 |
!GroovyScanner class methodsFor:'documentation'! |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
139 |
|
3458 | 140 |
version_CVS |
141 |
||
142 |
^ '$Header$' |
|
143 |
! |
|
144 |
||
2873
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
145 |
version_HG |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
146 |
|
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
147 |
^ '$Changeset: <not expanded> $' |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
148 |
! ! |
3084c43f20a1
Introduced GroovyScanner with support for Groovy-only tokens...
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff
changeset
|
149 |