Enum syn::ConstExpr
[−]
[src]
pub enum ConstExpr {
Call(Box<ConstExpr>, Vec<ConstExpr>),
Binary(BinOp, Box<ConstExpr>, Box<ConstExpr>),
Unary(UnOp, Box<ConstExpr>),
Lit(Lit),
Cast(Box<ConstExpr>, Box<Ty>),
Path(Path),
Index(Box<ConstExpr>, Box<ConstExpr>),
Paren(Box<ConstExpr>),
Other(Other),
}Variants
Call(Box<ConstExpr>, Vec<ConstExpr>)A function call
The first field resolves to the function itself, and the second field is the list of arguments
Binary(BinOp, Box<ConstExpr>, Box<ConstExpr>)A binary operation (For example: a + b, a * b)
Unary(UnOp, Box<ConstExpr>)A unary operation (For example: !x, *x)
Lit(Lit)A literal (For example: 1, "foo")
Cast(Box<ConstExpr>, Box<Ty>)A cast (foo as f64)
Path(Path)Variable reference, possibly containing :: and/or type
parameters, e.g. foo::bar::
Index(Box<ConstExpr>, Box<ConstExpr>)An indexing operation (foo[2])
Paren(Box<ConstExpr>)No-op: used solely so we can pretty-print faithfully
Other(Other)If compiling with full support for expression syntax, any expression is allowed
Trait Implementations
impl ToTokens for ConstExpr[src]
impl Debug for ConstExpr[src]
impl Clone for ConstExpr[src]
fn clone(&self) -> ConstExpr
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0
Performs copy-assignment from source. Read more
impl Eq for ConstExpr[src]
impl PartialEq for ConstExpr[src]
fn eq(&self, __arg_0: &ConstExpr) -> bool
This method tests for self and other values to be equal, and is used by ==. Read more
fn ne(&self, __arg_0: &ConstExpr) -> bool
This method tests for !=.
impl Hash for ConstExpr[src]
fn hash<__H: Hasher>(&self, __arg_0: &mut __H)
Feeds this value into the state given, updating the hasher as necessary.
fn hash_slice<H>(data: &[Self], state: &mut H) where H: Hasher1.3.0
Feeds a slice of this type into the state provided.