move Token out of lexer
This commit is contained in:
parent
ad7a8ad879
commit
a4eed5214e
3 changed files with 24 additions and 22 deletions
23
src/lexer.rs
23
src/lexer.rs
|
|
@ -1,25 +1,4 @@
|
|||
#[derive(Debug, PartialEq)]
|
||||
pub enum Token {
|
||||
Number(i64),
|
||||
Ident(String),
|
||||
|
||||
// Operators
|
||||
Add,
|
||||
Sub,
|
||||
Mul,
|
||||
Div,
|
||||
Mod,
|
||||
|
||||
// Parentheses
|
||||
LParen,
|
||||
RParen,
|
||||
LBrace,
|
||||
RBrace,
|
||||
LBracket,
|
||||
RBracket,
|
||||
|
||||
Semicolon
|
||||
}
|
||||
use crate::token::Token;
|
||||
|
||||
pub struct Lexer {
|
||||
source: Vec<u8>,
|
||||
|
|
|
|||
|
|
@ -1,5 +1,6 @@
|
|||
use std::{fs::File, io::Read};
|
||||
|
||||
mod token;
|
||||
mod lexer;
|
||||
use lexer::Lexer;
|
||||
|
||||
|
|
|
|||
22
src/token.rs
Normal file
22
src/token.rs
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
#[derive(Debug, PartialEq)]
|
||||
pub enum Token {
|
||||
Number(i64),
|
||||
Ident(String),
|
||||
|
||||
// Operators
|
||||
Add,
|
||||
Sub,
|
||||
Mul,
|
||||
Div,
|
||||
Mod,
|
||||
|
||||
// Parentheses
|
||||
LParen,
|
||||
RParen,
|
||||
LBrace,
|
||||
RBrace,
|
||||
LBracket,
|
||||
RBracket,
|
||||
|
||||
Semicolon
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue