Trait mem_query::relation::Relation [−][src]
pub trait Relation<'a>: RelationImpl + QueryOutput<'a> + SelfQuery<'a> + Sized { fn subjoin<F: Col>(self) -> SubordinateJoin<Self, F>
where
SubordinateJoin<Self, F>: Relation<'a>, { ... } fn join<Rel>(self, rel: Rel) -> PeerJoin<Self, Rel>
where
PeerJoin<Self, Rel>: Relation<'a>, { ... } fn where_eq<C: ColProxy>(self, c: C) -> FilterRel<Self, Exact<C>>
where
FilterRel<Self, Exact<C>>: Relation<'a>, { ... } fn project<H: Header>(self) -> ProjectedRel<Self, H>
where
ProjectedRel<Self, H>: Relation<'a>, { ... } fn iter_as<O: FromExternalRecord<'a>>(
&'a self
) -> <IterAs<'a, Self, O> as IntoIterator>::IntoIter
where
IterAs<'a, Self, O>: IntoIterator, { ... } fn as_dyn(self) -> DynRel<Self>
where
DynRel<Self>: RelationImpl, { ... } fn truncate(&mut self) -> Result<(), <Self::Op as RevertableOp<Self>>::Err>
where
Self: Delete<HNil>, { ... } }
Provided methods
fn subjoin<F: Col>(self) -> SubordinateJoin<Self, F> where
SubordinateJoin<Self, F>: Relation<'a>,
[src]
fn subjoin<F: Col>(self) -> SubordinateJoin<Self, F> where
SubordinateJoin<Self, F>: Relation<'a>,
[src]fn join<Rel>(self, rel: Rel) -> PeerJoin<Self, Rel> where
PeerJoin<Self, Rel>: Relation<'a>,
[src]
fn join<Rel>(self, rel: Rel) -> PeerJoin<Self, Rel> where
PeerJoin<Self, Rel>: Relation<'a>,
[src]TODO: Maybe reverse the join order; key lookup always on right-hand side
fn where_eq<C: ColProxy>(self, c: C) -> FilterRel<Self, Exact<C>> where
FilterRel<Self, Exact<C>>: Relation<'a>,
[src]
fn where_eq<C: ColProxy>(self, c: C) -> FilterRel<Self, Exact<C>> where
FilterRel<Self, Exact<C>>: Relation<'a>,
[src]fn project<H: Header>(self) -> ProjectedRel<Self, H> where
ProjectedRel<Self, H>: Relation<'a>,
[src]
fn project<H: Header>(self) -> ProjectedRel<Self, H> where
ProjectedRel<Self, H>: Relation<'a>,
[src]fn iter_as<O: FromExternalRecord<'a>>(
&'a self
) -> <IterAs<'a, Self, O> as IntoIterator>::IntoIter where
IterAs<'a, Self, O>: IntoIterator,
[src]
fn iter_as<O: FromExternalRecord<'a>>(
&'a self
) -> <IterAs<'a, Self, O> as IntoIterator>::IntoIter where
IterAs<'a, Self, O>: IntoIterator,
[src]Implementors
impl<'a, T: RelationImpl + SelfQuery<'a>> Relation<'a> for T where
T: RelationImpl + SelfQuery<'a>,
[src]
T: RelationImpl + SelfQuery<'a>,