@@ -98,6 +98,14 @@ $nonwhitspace = . # $white
98
98
99
99
@golangRsv = @golangRsv1 | @golangRsv2 | @golangRsv3 | @golangRsv4
100
100
101
+ @rustRsv1 = abstract| alignof| as| become| box| break| const| continue| crate| do
102
+ @rustRsv2 = else| enum| extern| false| final| fn| for| if| impl| in| let| loop| macro
103
+ @rustRsv3 = match| mod| move| mut| offsetof| override| priv| proc| pub| pure| ref| return
104
+ @rustRsv4 = Self| self| sizeof| static| struct| super| trait| true| type| typeof
105
+ @rustRsv5 = unsafe| unsized| use| virtual| where| while| yield
106
+
107
+ @rustRsv = @rustRsv1 | @rustRsv2 | @rustRsv3 | @rustRsv4 | @rustRsv5
108
+
101
109
@javaRsv1 = abstract| assert| boolean| break| byte| case| catch| char| class| const
102
110
@javaRsv2 = continue| default| do| double| else| enum| extends| final| finally| float
103
111
@javaRsv3 = for| goto| if| implements| import| instanceof| int| interface| long| native
@@ -196,6 +204,18 @@ state:-
196
204
<golang> @punct { tok Ignore }
197
205
<golang> . { tok Ignore }
198
206
207
+ <rustlang> @sp { tok Ignore }
208
+ <rustlang> [ \" ] { tokPush String str }
209
+ <rustlang> [ \' ] { tokPush Char charx }
210
+ <rustlang> [ \' ] [ a- z] + { tok Identifier }
211
+ <rustlang> "/*" { tokPush Comment ccomm }
212
+ <rustlang> "//" { tokPush Comment comm2 }
213
+ <rustlang> @rustRsv { tok Keyword }
214
+ <rustlang> @number { tok Number }
215
+ <rustlang> @cId { tok Identifier }
216
+ <rustlang> @punct { tok Ignore }
217
+ <rustlang> . { tok Ignore }
218
+
199
219
<pmstr1> [ \" ][ \" ][ \" ] { tokPop String }
200
220
<pmstr1> [ \" ][ \" ] { tok String }
201
221
<pmstr1> [ \" ] { tok String }
0 commit comments