File tree Expand file tree Collapse file tree 3 files changed +10
-6
lines changed Expand file tree Collapse file tree 3 files changed +10
-6
lines changed Original file line number Diff line number Diff line change @@ -189,7 +189,9 @@ impl<'a> Classifier<'a> {
189189 // leading identifier.
190190 TokenKind :: Bang if self . in_macro => {
191191 self . in_macro = false ;
192- Class :: Macro
192+ sink ( Highlight :: Token { text, class : None } ) ;
193+ sink ( Highlight :: ExitSpan ) ;
194+ return ;
193195 }
194196
195197 // Assume that '&' or '*' is the reference or dereference operator
@@ -298,7 +300,9 @@ impl<'a> Classifier<'a> {
298300 } ,
299301 TokenKind :: Ident | TokenKind :: RawIdent if lookahead == Some ( TokenKind :: Bang ) => {
300302 self . in_macro = true ;
301- Class :: Macro
303+ sink ( Highlight :: EnterSpan { class : Class :: Macro } ) ;
304+ sink ( Highlight :: Token { text, class : None } ) ;
305+ return ;
302306 }
303307 TokenKind :: Ident => match text {
304308 "ref" | "mut" => Class :: RefKeyWord ,
Original file line number Diff line number Diff line change 11< span class ="kw "> pub</ span > < span class ="kw "> fn</ span > < span class ="ident "> foo</ span > () {
2- < span class ="macro "> println</ span > < span class =" macro " > !</ span > (< span class ="string "> "foo"</ span > );
2+ < span class ="macro "> println!</ span > (< span class ="string "> "foo"</ span > );
33}
Original file line number Diff line number Diff line change 1717 < span class ="kw "> let</ span > < span class ="kw "> _</ span > < span class ="op "> =</ span > < span class ="kw-2 "> &</ span > < span class ="ident "> foo</ span > ;
1818 < span class ="kw "> let</ span > < span class ="kw "> _</ span > < span class ="op "> =</ span > < span class ="op "> &&</ span > < span class ="ident "> foo</ span > ;
1919 < span class ="kw "> let</ span > < span class ="kw "> _</ span > < span class ="op "> =</ span > < span class ="kw-2 "> *</ span > < span class ="ident "> foo</ span > ;
20- < span class ="macro "> mac</ span > < span class =" macro " > !</ span > (< span class ="ident "> foo</ span > , < span class ="kw-2 "> &</ span > < span class ="kw-2 "> mut</ span > < span class ="ident "> bar</ span > );
21- < span class ="macro "> assert</ span > < span class =" macro " > !</ span > (< span class ="self "> self</ span > .< span class ="ident "> length</ span > < span class ="op "> <</ span > < span class ="ident "> N</ span > < span class ="op "> &&</ span > < span class ="ident "> index</ span > < span class ="op "> <</ span > < span class ="op "> =</ span > < span class ="self "> self</ span > .< span class ="ident "> length</ span > );
20+ < span class ="macro "> mac!</ span > (< span class ="ident "> foo</ span > , < span class ="kw-2 "> &</ span > < span class ="kw-2 "> mut</ span > < span class ="ident "> bar</ span > );
21+ < span class ="macro "> assert!</ span > (< span class ="self "> self</ span > .< span class ="ident "> length</ span > < span class ="op "> <</ span > < span class ="ident "> N</ span > < span class ="op "> &&</ span > < span class ="ident "> index</ span > < span class ="op "> <</ span > < span class ="op "> =</ span > < span class ="self "> self</ span > .< span class ="ident "> length</ span > );
2222}
2323
24- < span class ="macro "> macro_rules</ span > < span class =" macro " > !</ span > < span class ="ident "> bar</ span > {
24+ < span class ="macro "> macro_rules!</ span > < span class ="ident "> bar</ span > {
2525 (< span class ="macro-nonterminal "> $</ span > < span class ="macro-nonterminal "> foo</ span > :< span class ="ident "> tt</ span > ) < span class ="op "> =</ span > < span class ="op "> ></ span > {};
2626}
2727</ code > </ pre >
You can’t perform that action at this time.
0 commit comments