pub enum MathOp {
}Expand description
Flat stack-machine op for expression-local arithmetic/comparison.
Lowering folds constant subtrees to Expr::Literal and compiles dynamic
arithmetic/comparison subtrees to post-order Vec<MathOp> so the runtime
executes a single instruction loop instead of recursive Box walking.
Call covers value-semantics functions only (INT, FLOAT, GLOB,
LOAD_TOML, LOAD_JSON); INSPECT($var) uses Inspect to preserve the
variable identifier (pre-evaluating to Value would lose the name).
Variants§
PushConst(Value)
LoadVar(String)
LoadEnv(String)
LoadKeyPath
Call
Inspect(String)
Neg
Add
Sub
Mul
Div
Lt
Le
Gt
Ge
Eq
Ne
Trait Implementations§
impl StructuralPartialEq for MathOp
Auto Trait Implementations§
impl Freeze for MathOp
impl RefUnwindSafe for MathOp
impl Send for MathOp
impl Sync for MathOp
impl Unpin for MathOp
impl UnsafeUnpin for MathOp
impl UnwindSafe for MathOp
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