diff options
author | Vincent Ambo <mail@tazj.in> | 2020-11-28T18·53+0100 |
---|---|---|
committer | tazjin <mail@tazj.in> | 2020-11-30T16·42+0000 |
commit | 349583d5a96dc182eda1776a94fcb4b80f4da873 (patch) | |
tree | 3414de3fb83ec3455f6f396df377a00edc2652dd /users/tazjin/rlox/src/scanner.rs | |
parent | 754edb46160609c2a6387d20a136ec6766e24139 (diff) |
feat(tazjin/rlox): Bootstrap recursive-descent parser for Lox r/1966
... mostly some AST boilerplate and a first top-level rule, plus boilerplate similar to that set up in the Scanner. Change-Id: I605d1de23c47a3b3702ab4f62cd3371bc3988c7d Reviewed-on: https://cl.tvl.fyi/c/depot/+/2194 Reviewed-by: tazjin <mail@tazj.in> Tested-by: BuildkiteCI
Diffstat (limited to 'users/tazjin/rlox/src/scanner.rs')
-rw-r--r-- | users/tazjin/rlox/src/scanner.rs | 9 |
1 files changed, 4 insertions, 5 deletions
diff --git a/users/tazjin/rlox/src/scanner.rs b/users/tazjin/rlox/src/scanner.rs index 2eed89bd6beb..eeb247d9bd53 100644 --- a/users/tazjin/rlox/src/scanner.rs +++ b/users/tazjin/rlox/src/scanner.rs @@ -1,6 +1,6 @@ use crate::errors::{Error, ErrorKind}; -#[derive(Debug)] +#[derive(Debug, PartialEq)] pub enum TokenKind { // Single-character tokens. LeftParen, @@ -54,10 +54,9 @@ pub enum TokenKind { #[derive(Debug)] pub struct Token<'a> { - kind: TokenKind, - lexeme: &'a [char], - // literal: Object, // TODO(tazjin): Uhh? - line: usize, + pub kind: TokenKind, + pub lexeme: &'a [char], + pub line: usize, } struct Scanner<'a> { |