Enum shades::expr::ErasedExpr
source · [−]pub enum ErasedExpr {
Show 46 variants
LitInt(i32),
LitUInt(u32),
LitFloat(f32),
LitBool(bool),
LitInt2([i32; 2]),
LitUInt2([u32; 2]),
LitFloat2([f32; 2]),
LitBool2([bool; 2]),
LitInt3([i32; 3]),
LitUInt3([u32; 3]),
LitFloat3([f32; 3]),
LitBool3([bool; 3]),
LitInt4([i32; 4]),
LitUInt4([u32; 4]),
LitFloat4([f32; 4]),
LitBool4([bool; 4]),
LitM22(M22),
LitM33(M33),
LitM44(M44),
Array(Type, Vec<ErasedExpr>),
Var(ScopedHandle),
Not(Box<Self>),
And(Box<Self>, Box<Self>),
Or(Box<Self>, Box<Self>),
Xor(Box<Self>, Box<Self>),
BitOr(Box<Self>, Box<Self>),
BitAnd(Box<Self>, Box<Self>),
BitXor(Box<Self>, Box<Self>),
Neg(Box<Self>),
Add(Box<Self>, Box<Self>),
Sub(Box<Self>, Box<Self>),
Mul(Box<Self>, Box<Self>),
Div(Box<Self>, Box<Self>),
Rem(Box<Self>, Box<Self>),
Shl(Box<Self>, Box<Self>),
Shr(Box<Self>, Box<Self>),
Eq(Box<Self>, Box<Self>),
Neq(Box<Self>, Box<Self>),
Lt(Box<Self>, Box<Self>),
Lte(Box<Self>, Box<Self>),
Gt(Box<Self>, Box<Self>),
Gte(Box<Self>, Box<Self>),
FunCall(ErasedFunHandle, Vec<Self>),
Swizzle(Box<Self>, Swizzle),
Field {
object: Box<Self>,
field: Box<Self>,
},
ArrayLookup {
object: Box<Self>,
index: Box<Self>,
},
}
Expand description
Representation of an expression.
Variants
LitInt(i32)
LitUInt(u32)
LitFloat(f32)
LitBool(bool)
LitInt2([i32; 2])
LitUInt2([u32; 2])
LitFloat2([f32; 2])
LitBool2([bool; 2])
LitInt3([i32; 3])
LitUInt3([u32; 3])
LitFloat3([f32; 3])
LitBool3([bool; 3])
LitInt4([i32; 4])
LitUInt4([u32; 4])
LitFloat4([f32; 4])
LitBool4([bool; 4])
LitM22(M22)
LitM33(M33)
LitM44(M44)
Array(Type, Vec<ErasedExpr>)
Var(ScopedHandle)
Not(Box<Self>)
And(Box<Self>, Box<Self>)
Or(Box<Self>, Box<Self>)
Xor(Box<Self>, Box<Self>)
BitOr(Box<Self>, Box<Self>)
BitAnd(Box<Self>, Box<Self>)
BitXor(Box<Self>, Box<Self>)
Neg(Box<Self>)
Add(Box<Self>, Box<Self>)
Sub(Box<Self>, Box<Self>)
Mul(Box<Self>, Box<Self>)
Div(Box<Self>, Box<Self>)
Rem(Box<Self>, Box<Self>)
Shl(Box<Self>, Box<Self>)
Shr(Box<Self>, Box<Self>)
Eq(Box<Self>, Box<Self>)
Neq(Box<Self>, Box<Self>)
Lt(Box<Self>, Box<Self>)
Lte(Box<Self>, Box<Self>)
Gt(Box<Self>, Box<Self>)
Gte(Box<Self>, Box<Self>)
FunCall(ErasedFunHandle, Vec<Self>)
Swizzle(Box<Self>, Swizzle)
Field
ArrayLookup
Trait Implementations
sourceimpl Clone for ErasedExpr
impl Clone for ErasedExpr
sourcefn clone(&self) -> ErasedExpr
fn clone(&self) -> ErasedExpr
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for ErasedExpr
impl Debug for ErasedExpr
sourceimpl PartialEq<ErasedExpr> for ErasedExpr
impl PartialEq<ErasedExpr> for ErasedExpr
sourcefn eq(&self, other: &ErasedExpr) -> bool
fn eq(&self, other: &ErasedExpr) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &ErasedExpr) -> bool
fn ne(&self, other: &ErasedExpr) -> bool
This method tests for !=
.
impl StructuralPartialEq for ErasedExpr
Auto Trait Implementations
impl RefUnwindSafe for ErasedExpr
impl Send for ErasedExpr
impl Sync for ErasedExpr
impl Unpin for ErasedExpr
impl UnwindSafe for ErasedExpr
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more