Enum reform::structure::Statement [−][src]
pub enum Statement<ID: Id = VarName> { Module(Module<ID>), NewExpression(ID, Element<ID>), NewFunction(ID, Vec<ID>, Element<ID>), IdentityStatement(IdentityStatement<ID>), SplitArg(ID), Repeat(Vec<Statement<ID>>), Argument(Vec<Element<ID>>, Vec<Statement<ID>>), Inside(Vec<Element<ID>>, Vec<Statement<ID>>), IfElse(IfCondition<ID>, Vec<Statement<ID>>, Vec<Statement<ID>>), ForIn(Element<ID>, Vec<Element<ID>>, Vec<Statement<ID>>), ForInRange(Element<ID>, Element<ID>, Element<ID>, Vec<Statement<ID>>), Expand, Print(PrintMode, Vec<PrintObject<ID>>), Multiply(Element<ID>), ReplaceBy(Element<ID>), Symmetrize(ID), Collect(ID), Extract(Element<ID>, Vec<ID>), MatchAssign(Element<ID>, Vec<Statement<ID>>), Assign(Element<ID>, Element<ID>), Maximum(Element<ID>), Call(String, Vec<Element<ID>>), Attrib(Element<ID>, Vec<FunctionAttributes>), Discard, Jump(usize), Eval(IfCondition, usize), JumpIfChanged(usize), PushChange, }
Variants
Module(Module<ID>)
NewExpression(ID, Element<ID>)
NewFunction(ID, Vec<ID>, Element<ID>)
IdentityStatement(IdentityStatement<ID>)
SplitArg(ID)
Repeat(Vec<Statement<ID>>)
Argument(Vec<Element<ID>>, Vec<Statement<ID>>)
Inside(Vec<Element<ID>>, Vec<Statement<ID>>)
IfElse(IfCondition<ID>, Vec<Statement<ID>>, Vec<Statement<ID>>)
ForIn(Element<ID>, Vec<Element<ID>>, Vec<Statement<ID>>)
ForInRange(Element<ID>, Element<ID>, Element<ID>, Vec<Statement<ID>>)
Expand
Print(PrintMode, Vec<PrintObject<ID>>)
Multiply(Element<ID>)
ReplaceBy(Element<ID>)
Symmetrize(ID)
Collect(ID)
Extract(Element<ID>, Vec<ID>)
MatchAssign(Element<ID>, Vec<Statement<ID>>)
Assign(Element<ID>, Element<ID>)
Maximum(Element<ID>)
Call(String, Vec<Element<ID>>)
Attrib(Element<ID>, Vec<FunctionAttributes>)
Discard
Jump(usize)
Eval(IfCondition, usize)
JumpIfChanged(usize)
PushChange
Methods
impl Statement<String>
[src]
impl Statement<String>
pub fn to_statement(&mut self, var_info: &mut VarInfo) -> Statement
[src]
pub fn to_statement(&mut self, var_info: &mut VarInfo) -> Statement
impl Statement
[src]
impl Statement
pub fn contains_dollar(&self) -> bool
[src]
pub fn contains_dollar(&self) -> bool
Check if a statement contains a dollar variable.
pub fn replace_dollar(
&mut self,
map: &HashMap<VarName, HashMap<Vec<Element>, Element>>
) -> ReplaceResult
[src]
pub fn replace_dollar(
&mut self,
map: &HashMap<VarName, HashMap<Vec<Element>, Element>>
) -> ReplaceResult
pub fn replace_elements(&mut self, map: &HashMap<VarName, Element>) -> bool
[src]
pub fn replace_elements(&mut self, map: &HashMap<VarName, Element>) -> bool
pub fn normalize(&mut self, var_info: &GlobalVarInfo)
[src]
pub fn normalize(&mut self, var_info: &GlobalVarInfo)
Trait Implementations
impl<ID: Debug + Id> Debug for Statement<ID>
[src]
impl<ID: Debug + Id> Debug for Statement<ID>
fn fmt(&self, f: &mut Formatter) -> Result
[src]
fn fmt(&self, f: &mut Formatter) -> Result
Formats the value using the given formatter. Read more
impl<ID: Clone + Id> Clone for Statement<ID>
[src]
impl<ID: Clone + Id> Clone for Statement<ID>
fn clone(&self) -> Statement<ID>
[src]
fn clone(&self) -> Statement<ID>
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
1.0.0
[src]Performs copy-assignment from source
. Read more
impl Display for Statement
[src]
impl Display for Statement