pub enum Expression {
Show 19 variants
Binary {
left: Node<Expression>,
right: Node<Expression>,
operator: ExprOperatorName,
},
BindMethod {
impl_: String,
method: String,
arguments: Vec<Node<Expression>>,
},
Block {
statements: Vec<Node<Statement>>,
result: Option<Node<Expression>>,
},
CallMethod {
object: Node<Expression>,
method: String,
arguments: Vec<Node<Expression>>,
optional: bool,
},
CallValue {
callee: Node<Expression>,
arguments: Vec<Node<Expression>>,
optional: bool,
},
Cast {
value: Node<Expression>,
typ: String,
},
Closure {
parameters: Vec<String>,
body: Node<Expression>,
},
Field {
object: Node<Expression>,
field: String,
optional: bool,
},
Index {
object: Node<Expression>,
index: Node<Expression>,
optional: bool,
},
If {
condition: Node<Expression>,
consequent: Node<Expression>,
alternate: Option<Node<Expression>>,
},
LiteralArray {
entries: Vec<Node<Expression>>,
},
LiteralBoolean {
value: bool,
},
LiteralFloat {
value: OrderedFloat<f64>,
},
LiteralInt {
value: i64,
},
LiteralNone {},
LiteralObject {
fields: Vec<(String, Node<Expression>)>,
},
LiteralTemplateExpr {
parts: Vec<LiteralTemplatePart>,
},
Unary {
operand: Node<Expression>,
operator: ExprOperatorName,
},
Var {
name: String,
},
}
Variants§
Binary
BindMethod
Block
CallMethod
CallValue
Cast
Closure
Field
Index
If
LiteralArray
Fields
§
entries: Vec<Node<Expression>>
LiteralBoolean
LiteralFloat
Fields
§
value: OrderedFloat<f64>
LiteralInt
LiteralNone
LiteralObject
Fields
§
fields: Vec<(String, Node<Expression>)>
LiteralTemplateExpr
Fields
§
parts: Vec<LiteralTemplatePart>
Unary
Var
Trait Implementations§
impl Syntax for Expression
Auto Trait Implementations§
impl Freeze for Expression
impl !RefUnwindSafe for Expression
impl !Send for Expression
impl !Sync for Expression
impl Unpin for Expression
impl !UnwindSafe for Expression
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