File tree 2 files changed +21
-20
lines changed
2 files changed +21
-20
lines changed Original file line number Diff line number Diff line change @@ -173,26 +173,6 @@ fn bad_ascii() -> Result<(), &'static str> {
173
173
}
174
174
}
175
175
176
- // type SyntaxNode = rowan::SyntaxNode<Lang>;
177
- // type SyntaxToken = rowan::SyntaxToken<Lang>;
178
- // type SyntaxElement = rowan::SyntaxElement<Lang>;
179
-
180
- #[ test]
181
- fn rowan_lex ( ) -> Result < ( ) , error:: MainError > {
182
- let s = "X := X" ;
183
- let lexer = token_wrap:: TokensRowan :: from_string ( & s) ;
184
- let mut builder = rowan:: GreenNodeBuilder :: new ( ) ;
185
-
186
- builder. start_node ( lex:: LexToken :: Root . into ( ) ) ;
187
- let parse_result = rowan_parser:: propParser:: new ( ) . parse ( & mut builder, tokens) ?;
188
- /* for thing in lexer {
189
- let checkpoint = self.builder.checkpoint();
190
- println!("{:?}", thing);
191
- }
192
- */
193
- builder. finish_node ( ) ;
194
- Ok ( ( ) )
195
- }
196
176
197
177
fn from_rowan < ' a > ( s : & ' a str ) -> Result < ( ) , MainError > {
198
178
let tokens = rowan_token:: Tokens :: from_string ( & s) ;
Original file line number Diff line number Diff line change @@ -3,6 +3,10 @@ use logos::Logos;
3
3
use rowan;
4
4
pub struct Tokens < ' a > ( logos:: Lexer < LexToken , & ' a str > ) ;
5
5
6
+ // type SyntaxNode = rowan::SyntaxNode<Lang>;
7
+ // type SyntaxToken = rowan::SyntaxToken<Lang>;
8
+ // type SyntaxElement = rowan::SyntaxElement<Lang>;
9
+
6
10
impl From < LexToken > for rowan:: SyntaxKind {
7
11
fn from ( kind : LexToken ) -> Self {
8
12
Self ( kind as u16 )
@@ -61,3 +65,20 @@ impl<'a> Iterator for Tokens<'a> {
61
65
tok
62
66
}
63
67
}
68
+
69
+ #[ test]
70
+ fn rowan_lex ( ) -> Result < ( ) , error:: MainError > {
71
+ let s = "X := X" ;
72
+ let lexer = token_wrap:: TokensRowan :: from_string ( & s) ;
73
+ let mut builder = rowan:: GreenNodeBuilder :: new ( ) ;
74
+
75
+ builder. start_node ( lex:: LexToken :: Root . into ( ) ) ;
76
+ let parse_result = rowan_parser:: propParser:: new ( ) . parse ( & mut builder, tokens) ?;
77
+ /* for thing in lexer {
78
+ let checkpoint = self.builder.checkpoint();
79
+ println!("{:?}", thing);
80
+ }
81
+ */
82
+ builder. finish_node ( ) ;
83
+ Ok ( ( ) )
84
+ }
You can’t perform that action at this time.
0 commit comments