pub enum Statement {
Show 18 variants
Block(Block),
LetBinding {
params: Vec<Located<Parameter>>,
exprs: Vec<Located<Expression>>,
},
LetElse {
param: Located<Parameter>,
expr: Located<Expression>,
else_case: Located<Block>,
},
Assign {
paths: Vec<Located<Path>>,
exprs: Vec<Located<Expression>>,
},
AssignOperation {
op: AssignOperator,
path: Located<Path>,
expr: Located<Expression>,
},
Call {
path: Located<Path>,
args: Vec<Located<Expression>>,
},
SelfCall {
head: Located<Path>,
field: Located<String>,
args: Vec<Located<Expression>>,
},
Fn {
path: Located<Path>,
params: Vec<Located<Parameter>>,
var_args: Option<Located<String>>,
body: Located<Block>,
},
LetFn {
ident: Located<String>,
params: Vec<Located<Parameter>>,
var_args: Option<Located<String>>,
body: Located<Block>,
},
If {
cond: Located<Expression>,
case: Located<Block>,
else_case: Option<Located<Block>>,
},
IfLet {
param: Located<Parameter>,
expr: Located<Expression>,
case: Located<Block>,
else_case: Option<Located<Block>>,
},
Match {
expr: Located<Expression>,
cases: Vec<(Located<Pattern>, Located<Block>)>,
},
While {
cond: Located<Expression>,
body: Located<Block>,
},
WhileLet {
param: Located<Parameter>,
expr: Located<Expression>,
body: Located<Block>,
},
For {
ident: Located<String>,
iter: Located<Expression>,
body: Located<Block>,
},
Return(Option<Located<Expression>>),
Break,
Continue,
}Variants§
Block(Block)
LetBinding
LetElse
Assign
AssignOperation
Call
SelfCall
Fn
Fields
LetFn
Fields
If
IfLet
Fields
§
expr: Located<Expression>Match
While
WhileLet
For
Return(Option<Located<Expression>>)
Break
Continue
Implementations§
Source§impl Statement
impl Statement
pub fn parse_let( parser: &mut Parser, ) -> Result<Located<Self>, Located<ParseError>>
pub fn parse_fn( parser: &mut Parser, local: bool, ) -> Result<Located<Self>, Located<ParseError>>
pub fn parse_if( parser: &mut Parser, ) -> Result<Located<Self>, Located<ParseError>>
pub fn parse_match( parser: &mut Parser, ) -> Result<Located<Self>, Located<ParseError>>
pub fn parse_while( parser: &mut Parser, ) -> Result<Located<Self>, Located<ParseError>>
pub fn parse_for( parser: &mut Parser, ) -> Result<Located<Self>, Located<ParseError>>
Trait Implementations§
impl StructuralPartialEq for Statement
Auto Trait Implementations§
impl Freeze for Statement
impl RefUnwindSafe for Statement
impl Send for Statement
impl Sync for Statement
impl Unpin for Statement
impl UnwindSafe for Statement
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more