Struct leo_asg::reducer::VisitorDirector[][src]

pub struct VisitorDirector<'a, R: ExpressionVisitor<'a>> { /* fields omitted */ }

Implementations

impl<'a, R: ExpressionVisitor<'a>> VisitorDirector<'a, R>[src]

pub fn new(visitor: R) -> Self[src]

pub fn visitor(self) -> R[src]

pub fn visit_expression(
    &mut self,
    input: &Cell<&'a Expression<'a>>
) -> ConcreteVisitResult
[src]

pub fn visit_array_access(
    &mut self,
    input: &ArrayAccessExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_array_init(
    &mut self,
    input: &ArrayInitExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_array_inline(
    &mut self,
    input: &ArrayInlineExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_array_range_access(
    &mut self,
    input: &ArrayRangeAccessExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_binary(
    &mut self,
    input: &BinaryExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_call(&mut self, input: &CallExpression<'a>) -> ConcreteVisitResult[src]

pub fn visit_circuit_access(
    &mut self,
    input: &CircuitAccessExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_circuit_init(
    &mut self,
    input: &CircuitInitExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_ternary_expression(
    &mut self,
    input: &TernaryExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_cast_expression(
    &mut self,
    input: &CastExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_constant(&mut self, input: &Constant<'a>) -> ConcreteVisitResult[src]

pub fn visit_tuple_access(
    &mut self,
    input: &TupleAccessExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_tuple_init(
    &mut self,
    input: &TupleInitExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_unary(
    &mut self,
    input: &UnaryExpression<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_variable_ref(
    &mut self,
    input: &VariableRef<'a>
) -> ConcreteVisitResult
[src]

impl<'a, R: StatementVisitor<'a>> VisitorDirector<'a, R>[src]

pub fn visit_statement(
    &mut self,
    input: &Cell<&'a Statement<'a>>
) -> ConcreteVisitResult
[src]

pub fn visit_assign_access(
    &mut self,
    input: &AssignAccess<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_assign(
    &mut self,
    input: &AssignStatement<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_block(&mut self, input: &BlockStatement<'a>) -> ConcreteVisitResult[src]

pub fn visit_conditional_statement(
    &mut self,
    input: &ConditionalStatement<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_formatted_string(
    &mut self,
    input: &FormatString<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_console(
    &mut self,
    input: &ConsoleStatement<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_definition(
    &mut self,
    input: &DefinitionStatement<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_expression_statement(
    &mut self,
    input: &ExpressionStatement<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_iteration(
    &mut self,
    input: &IterationStatement<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_return(
    &mut self,
    input: &ReturnStatement<'a>
) -> ConcreteVisitResult
[src]

impl<'a, R: ProgramVisitor<'a>> VisitorDirector<'a, R>[src]

pub fn visit_function(&mut self, input: &'a Function<'a>) -> ConcreteVisitResult[src]

pub fn visit_circuit_member(
    &mut self,
    input: &CircuitMember<'a>
) -> ConcreteVisitResult
[src]

pub fn visit_circuit(&mut self, input: &'a Circuit<'a>) -> ConcreteVisitResult[src]

pub fn visit_program(&mut self, input: &Program<'a>) -> ConcreteVisitResult[src]

Auto Trait Implementations

impl<'a, R> RefUnwindSafe for VisitorDirector<'a, R> where
    R: RefUnwindSafe

impl<'a, R> Send for VisitorDirector<'a, R> where
    R: Send

impl<'a, R> Sync for VisitorDirector<'a, R> where
    R: Sync

impl<'a, R> Unpin for VisitorDirector<'a, R> where
    R: Unpin

impl<'a, R> UnwindSafe for VisitorDirector<'a, R> where
    R: UnwindSafe

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> Instrument for T[src]

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

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.