Browse Source

Scan *

main
Dylan Baker 3 years ago
parent
commit
e4bd56b098
1 changed files with 8 additions and 1 deletions
  1. 8
    1
      src/lexer.rs

+ 8
- 1
src/lexer.rs View File

@@ -26,6 +26,7 @@ pub enum TokenType {
26 26
     Identfiier,
27 27
     Keyword,
28 28
     Number,
29
+    Star,
29 30
     String,
30 31
 }
31 32
 
@@ -50,7 +51,8 @@ lazy_static! {
50 51
         Matcher::new(r#""(.*)""#, TokenType::String),
51 52
         Matcher::new(r#"(SELECT|FROM)"#, TokenType::Keyword),
52 53
         Matcher::new(r#"[a-z][a-zA-Z_]*"#, TokenType::Identfiier),
53
-        Matcher::new(r#"[0-9]+"#, TokenType::Number)
54
+        Matcher::new(r#"[0-9]+"#, TokenType::Number),
55
+        Matcher::new(r#"\*"#, TokenType::Star),
54 56
     ];
55 57
 }
56 58
 
@@ -129,4 +131,9 @@ mod tests {
129 131
             vec![Token::new(TokenType::Identfiier, "abc")]
130 132
         )
131 133
     }
134
+
135
+    #[test]
136
+    fn it_scans_a_star() {
137
+        assert_eq!(scan("*").unwrap(), vec![Token::new(TokenType::Star, "*")])
138
+    }
132 139
 }

Loading…
Cancel
Save