diff options
author | Aleksey Kladov <[email protected]> | 2017-12-31 08:32:49 +0000 |
---|---|---|
committer | Aleksey Kladov <[email protected]> | 2017-12-31 08:32:49 +0000 |
commit | 9d5138bf11eb0c979c49f904010d2d3690bdf74c (patch) | |
tree | 0da765e0005c601e12f8228fe4da2a3d84a4d4ca | |
parent | 0b49db623f74c698a92ee8c686709c5abb9fcfbd (diff) |
Lexer: simplistic char & lifetime tests
-rw-r--r-- | src/lexer/mod.rs | 3 | ||||
-rw-r--r-- | tests/data/lexer/0004_numbers.rs (renamed from tests/data/lexer/0004_number.rs) | 0 | ||||
-rw-r--r-- | tests/data/lexer/0004_numbers.txt (renamed from tests/data/lexer/0004_number.txt) | 0 | ||||
-rw-r--r-- | tests/data/lexer/0006_chars.rs | 1 | ||||
-rw-r--r-- | tests/data/lexer/0006_chars.txt | 6 | ||||
-rw-r--r-- | tests/data/lexer/0007_lifetimes.rs | 1 | ||||
-rw-r--r-- | tests/data/lexer/0007_lifetimes.txt | 8 |
7 files changed, 18 insertions, 1 deletions
diff --git a/src/lexer/mod.rs b/src/lexer/mod.rs index 918683556..320d59de5 100644 --- a/src/lexer/mod.rs +++ b/src/lexer/mod.rs | |||
@@ -101,7 +101,7 @@ fn next_token_inner(c: char, ptr: &mut Ptr) -> SyntaxKind { | |||
101 | _ => NOT, | 101 | _ => NOT, |
102 | }, | 102 | }, |
103 | 103 | ||
104 | // '\'' => scan_char_or_lifetime(ptr), | 104 | '\'' => return scan_char_or_lifetime(ptr), |
105 | _ => (), | 105 | _ => (), |
106 | } | 106 | } |
107 | ERROR | 107 | ERROR |
@@ -159,6 +159,7 @@ fn scan_literal_suffix(ptr: &mut Ptr) { | |||
159 | } | 159 | } |
160 | 160 | ||
161 | fn scan_char_or_byte(ptr: &mut Ptr) { | 161 | fn scan_char_or_byte(ptr: &mut Ptr) { |
162 | //FIXME: deal with escape sequencies | ||
162 | ptr.bump(); | 163 | ptr.bump(); |
163 | } | 164 | } |
164 | 165 | ||
diff --git a/tests/data/lexer/0004_number.rs b/tests/data/lexer/0004_numbers.rs index dc974b553..dc974b553 100644 --- a/tests/data/lexer/0004_number.rs +++ b/tests/data/lexer/0004_numbers.rs | |||
diff --git a/tests/data/lexer/0004_number.txt b/tests/data/lexer/0004_numbers.txt index be8dee48b..be8dee48b 100644 --- a/tests/data/lexer/0004_number.txt +++ b/tests/data/lexer/0004_numbers.txt | |||
diff --git a/tests/data/lexer/0006_chars.rs b/tests/data/lexer/0006_chars.rs new file mode 100644 index 000000000..03598d908 --- /dev/null +++ b/tests/data/lexer/0006_chars.rs | |||
@@ -0,0 +1 @@ | |||
'x' ' ' '0' | |||
diff --git a/tests/data/lexer/0006_chars.txt b/tests/data/lexer/0006_chars.txt new file mode 100644 index 000000000..ecaf22355 --- /dev/null +++ b/tests/data/lexer/0006_chars.txt | |||
@@ -0,0 +1,6 @@ | |||
1 | CHAR 3 "\'x\'" | ||
2 | WHITESPACE 1 " " | ||
3 | CHAR 3 "\' \'" | ||
4 | WHITESPACE 1 " " | ||
5 | CHAR 3 "\'0\'" | ||
6 | WHITESPACE 1 "\n" | ||
diff --git a/tests/data/lexer/0007_lifetimes.rs b/tests/data/lexer/0007_lifetimes.rs new file mode 100644 index 000000000..b764f1dce --- /dev/null +++ b/tests/data/lexer/0007_lifetimes.rs | |||
@@ -0,0 +1 @@ | |||
'a 'foo 'foo_bar_baz '_ | |||
diff --git a/tests/data/lexer/0007_lifetimes.txt b/tests/data/lexer/0007_lifetimes.txt new file mode 100644 index 000000000..005c29100 --- /dev/null +++ b/tests/data/lexer/0007_lifetimes.txt | |||
@@ -0,0 +1,8 @@ | |||
1 | LIFETIME 2 "\'a" | ||
2 | WHITESPACE 1 " " | ||
3 | LIFETIME 4 "\'foo" | ||
4 | WHITESPACE 1 " " | ||
5 | LIFETIME 12 "\'foo_bar_baz" | ||
6 | WHITESPACE 1 " " | ||
7 | LIFETIME 2 "\'_" | ||
8 | WHITESPACE 1 "\n" | ||