A Program node, and an empty parse() method on Parser
This commit is contained in:
parent
da63993fe0
commit
2f8f71fc28
2 changed files with 34 additions and 0 deletions
|
@ -2,12 +2,34 @@
|
|||
* Eryn Wells <eryn@erynwells.me>
|
||||
*/
|
||||
|
||||
mod nodes;
|
||||
|
||||
use lexer::Lexer;
|
||||
use self::nodes::Program;
|
||||
|
||||
pub struct Parser {
|
||||
lexer: Lexer,
|
||||
}
|
||||
|
||||
impl Parser {
|
||||
pub fn new(lexer: Lexer) -> Parser {
|
||||
Parser { lexer: lexer }
|
||||
}
|
||||
|
||||
pub fn parse(&mut self) -> Program {
|
||||
Program { }
|
||||
}
|
||||
}
|
||||
|
||||
#[cfg(test)]
|
||||
mod tests {
|
||||
use super::*;
|
||||
use super::nodes::*;
|
||||
use lexer::Lexer;
|
||||
|
||||
#[test]
|
||||
fn parses_empty_input() {
|
||||
let mut parser = Parser::new(Lexer::new(""));
|
||||
assert_eq!(parser.parse(), Program::new());
|
||||
}
|
||||
}
|
||||
|
|
12
src/parser/nodes.rs
Normal file
12
src/parser/nodes.rs
Normal file
|
@ -0,0 +1,12 @@
|
|||
/* parser/nodes.rs
|
||||
* Eryn Wells <eryn@erynwells.me>
|
||||
*/
|
||||
|
||||
#[derive(Debug, PartialEq)]
|
||||
pub struct Program { }
|
||||
|
||||
impl Program {
|
||||
pub fn new() -> Program {
|
||||
Program { }
|
||||
}
|
||||
}
|
Loading…
Add table
Add a link
Reference in a new issue