[−][src]Trait codd::expression::Visitor
Is the trait of objects that visit sub-expressions of an Expression
. The default
implementation guides the visitor through all sub-expressions of the expressions that
is visited.
Provided methods
fn visit_full<T>(&mut self, full: &Full<T>) where
T: Tuple,
T: Tuple,
Visits the Full
expression.
fn visit_empty<T>(&mut self, empty: &Empty<T>) where
T: Tuple,
T: Tuple,
Visits the Empty
expression.
fn visit_singleton<T>(&mut self, singleton: &Singleton<T>) where
T: Tuple,
T: Tuple,
Visits a Singlenton
expression.
fn visit_relation<T>(&mut self, relation: &Relation<T>) where
T: Tuple,
T: Tuple,
Visits a Relation
expression.
fn visit_select<T, E>(&mut self, select: &Select<T, E>) where
T: Tuple,
E: Expression<T>,
T: Tuple,
E: Expression<T>,
Visits a Select
expression.
fn visit_union<T, L, R>(&mut self, union: &Union<T, L, R>) where
T: Tuple,
L: Expression<T>,
R: Expression<T>,
T: Tuple,
L: Expression<T>,
R: Expression<T>,
Visits a Union
expression.
fn visit_intersect<T, L, R>(&mut self, intersect: &Intersect<T, L, R>) where
T: Tuple,
L: Expression<T>,
R: Expression<T>,
T: Tuple,
L: Expression<T>,
R: Expression<T>,
Visits an Intersect
expression.
fn visit_difference<T, L, R>(&mut self, difference: &Difference<T, L, R>) where
T: Tuple,
L: Expression<T>,
R: Expression<T>,
T: Tuple,
L: Expression<T>,
R: Expression<T>,
Visits a Difference
expression.
fn visit_project<S, T, E>(&mut self, project: &Project<S, T, E>) where
T: Tuple,
S: Tuple,
E: Expression<S>,
T: Tuple,
S: Tuple,
E: Expression<S>,
Visits a Project
expression.
fn visit_product<L, R, Left, Right, T>(
&mut self,
product: &Product<L, R, Left, Right, T>
) where
L: Tuple,
R: Tuple,
T: Tuple,
Left: Expression<L>,
Right: Expression<R>,
&mut self,
product: &Product<L, R, Left, Right, T>
) where
L: Tuple,
R: Tuple,
T: Tuple,
Left: Expression<L>,
Right: Expression<R>,
Visits a Product
expression.
fn visit_join<K, L, R, Left, Right, T>(
&mut self,
join: &Join<K, L, R, Left, Right, T>
) where
K: Tuple,
L: Tuple,
R: Tuple,
T: Tuple,
Left: Expression<L>,
Right: Expression<R>,
&mut self,
join: &Join<K, L, R, Left, Right, T>
) where
K: Tuple,
L: Tuple,
R: Tuple,
T: Tuple,
Left: Expression<L>,
Right: Expression<R>,
Visits a Join
expression.
fn visit_view<T, E>(&mut self, view: &View<T, E>) where
T: Tuple,
E: Expression<T>,
T: Tuple,
E: Expression<T>,
Visits a View
expression.