Enum parser_haskell::ast::Expr
[−]
[src]
pub enum Expr {
Number(isize),
Op(Box<Expr>, String, Box<Expr>),
Ref(Ident),
Do(Vec<DoItem>, Where),
Parens(Vec<Expr>),
Case(Box<Expr>, Vec<CaseCond>),
Generator(Vec<Expr>, Vec<()>),
Let(Vec<Assignment>, Box<Expr>),
Span(Vec<Expr>),
Vector(Vec<Expr>),
Operator(String),
Record(Box<Expr>, Vec<(Ident, Expr)>),
Lambda(Vec<Pat>, Box<Expr>),
Str(String),
Char(String),
If(Box<Expr>, Box<Expr>, Option<Box<Expr>>),
RecordArgs(Vec<(Ident, Expr)>),
Error,
}Variants
Number(isize)Op(Box<Expr>, String, Box<Expr>)Ref(Ident)Do(Vec<DoItem>, Where)Parens(Vec<Expr>)Case(Box<Expr>, Vec<CaseCond>)Generator(Vec<Expr>, Vec<()>)Let(Vec<Assignment>, Box<Expr>)let a = 2; b = 3 in ...
Span(Vec<Expr>)Vector(Vec<Expr>)Operator(String)Record(Box<Expr>, Vec<(Ident, Expr)>)Lambda(Vec<Pat>, Box<Expr>)Str(String)Char(String)If(Box<Expr>, Box<Expr>, Option<Box<Expr>>)RecordArgs(Vec<(Ident, Expr)>)ErrorTrait Implementations
impl Clone for Expr[src]
fn clone(&self) -> Expr
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0
Performs copy-assignment from source. Read more