pub enum ReactiveValue {
Instruction(InstructionValue),
LogicalExpression {
operator: LogicalOperator,
left: Box<ReactiveValue>,
right: Box<ReactiveValue>,
loc: Option<SourceLocation>,
},
ConditionalExpression {
test: Box<ReactiveValue>,
consequent: Box<ReactiveValue>,
alternate: Box<ReactiveValue>,
loc: Option<SourceLocation>,
},
SequenceExpression {
instructions: Vec<ReactiveInstruction>,
id: EvaluationOrder,
value: Box<ReactiveValue>,
loc: Option<SourceLocation>,
},
OptionalExpression {
id: EvaluationOrder,
value: Box<ReactiveValue>,
optional: bool,
loc: Option<SourceLocation>,
},
}Expand description
Extends InstructionValue with compound expression types that were separate blocks+terminals in HIR but become nested expressions here. TS: ReactiveValue = InstructionValue | ReactiveLogicalValue | …
Variants§
Instruction(InstructionValue)
All ~35 base instruction value kinds
LogicalExpression
TS: ReactiveLogicalValue
Fields
§
operator: LogicalOperator§
left: Box<ReactiveValue>§
right: Box<ReactiveValue>§
loc: Option<SourceLocation>ConditionalExpression
TS: ReactiveTernaryValue
Fields
§
test: Box<ReactiveValue>§
consequent: Box<ReactiveValue>§
alternate: Box<ReactiveValue>§
loc: Option<SourceLocation>SequenceExpression
TS: ReactiveSequenceValue
Fields
§
instructions: Vec<ReactiveInstruction>§
id: EvaluationOrder§
value: Box<ReactiveValue>§
loc: Option<SourceLocation>OptionalExpression
TS: ReactiveOptionalCallValue
Trait Implementations§
Source§impl Clone for ReactiveValue
impl Clone for ReactiveValue
Source§fn clone(&self) -> ReactiveValue
fn clone(&self) -> ReactiveValue
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreAuto Trait Implementations§
impl Freeze for ReactiveValue
impl RefUnwindSafe for ReactiveValue
impl Send for ReactiveValue
impl Sync for ReactiveValue
impl Unpin for ReactiveValue
impl UnsafeUnpin for ReactiveValue
impl UnwindSafe for ReactiveValue
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