Add Expression type, Program is a list of Expressions
This commit is contained in:
parent
febc3c359f
commit
5ec2a11df1
1 changed files with 14 additions and 4 deletions
|
@ -2,11 +2,21 @@
|
||||||
* Eryn Wells <eryn@erynwells.me>
|
* Eryn Wells <eryn@erynwells.me>
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#[derive(Debug, PartialEq)]
|
use lexer;
|
||||||
pub struct Program { }
|
use types;
|
||||||
|
|
||||||
|
pub struct Program {
|
||||||
|
forms: Vec<Expression>
|
||||||
|
}
|
||||||
|
|
||||||
impl Program {
|
impl Program {
|
||||||
pub fn new() -> Program {
|
pub fn new(forms: Vec<Expression>) -> Program {
|
||||||
Program { }
|
Program { forms: forms }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
pub enum Expression {
|
||||||
|
EOF,
|
||||||
|
Atom(Box<types::Value>),
|
||||||
|
List { left: lexer::Token, expression: Vec<Box<Expression>>, right: lexer::Token },
|
||||||
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue