Added print statement, various other fixes

This commit is contained in:
2026-07-10 02:06:03 -05:00
parent 725c6aa835
commit cf3e14c9e7
10 changed files with 261 additions and 87 deletions
+6 -4
View File
@@ -8,17 +8,19 @@ pub enum Symbol {
CloseBrace,
OpenParen,
CloseParen,
Comma,
}
pub fn parse_symbol(input: &str) -> Option<(Token, &str)> {
let c: char = input.chars().next()?;
let input = &input[1..];
match c {
'=' => Some((Token::Sym(Symbol::EqualSign), input)),
';' => Some((Token::Sym(Symbol::Semicolon), input)),
'{' => Some((Token::Sym(Symbol::OpenBrace), input)),
'=' => Some((Token::Sym(Symbol::EqualSign), input)),
';' => Some((Token::Sym(Symbol::Semicolon), input)),
',' => Some((Token::Sym(Symbol::Comma), input)),
'{' => Some((Token::Sym(Symbol::OpenBrace), input)),
'}' => Some((Token::Sym(Symbol::CloseBrace), input)),
'(' => Some((Token::Sym(Symbol::OpenParen), input)),
'(' => Some((Token::Sym(Symbol::OpenParen), input)),
')' => Some((Token::Sym(Symbol::CloseParen), input)),
_ => None
}