Struct sixtyfps_compilerlib::expression_tree::BindingExpression[][src]

pub struct BindingExpression {
    pub expression: Expression,
    pub span: Option<SourceLocation>,
    pub priority: i32,
}

The expression in the Element::binding hash table

Fields

expression: Expressionspan: Option<SourceLocation>

The location of this expression in the source code

priority: i32

How deep is this binding declared in the hierarchy. When two binding are conflicting for the same priority (because of two way binding), the lower priority wins.

Implementations

impl BindingExpression[src]

pub fn new_uncompiled(node: SyntaxNode) -> Self[src]

Methods from Deref<Target = Expression>

pub fn ty(&self) -> Type[src]

Return the type of this property

pub fn visit(&self, visitor: impl FnMut(&Self))[src]

Call the visitor for each sub-expression. (note: this function does not recurse)

pub fn visit_mut(&mut self, visitor: impl FnMut(&mut Self))[src]

pub fn visit_recursive(&self, visitor: &mut dyn FnMut(&Self))[src]

Visit itself and each sub expression recursively

pub fn is_constant(&self) -> bool[src]

pub fn is_rw(&self) -> bool[src]

Return true if the expression is a “lvalue” that can be used as the left hand side of a = or += or similar

Trait Implementations

impl Clone for BindingExpression[src]

impl Debug for BindingExpression[src]

impl Default for BindingExpression[src]

impl Deref for BindingExpression[src]

type Target = Expression

The resulting type after dereferencing.

impl DerefMut for BindingExpression[src]

impl From<Expression> for BindingExpression[src]

impl Spanned for BindingExpression[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.