Skip to main content

Cons

Struct Cons 

Source
pub struct Cons<Head, Tail>(/* private fields */);
Expand description

A type-level list node: Head followed by the list Tail.

Trait Implementations§

Source§

impl<Head: Clone, Tail: Clone> Clone for Cons<Head, Tail>

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl<Head, Tail, Rhs> Concat<Rhs> for Cons<Head, Tail>
where Tail: Concat<Rhs> + TypeSet, Rhs: TypeSet,

Source§

type Output = Cons<Head, <Tail as Concat<Rhs>>::Output>

The joined list.
Source§

impl<Head: Copy, Tail: Copy> Copy for Cons<Head, Tail>

Source§

impl<Head: Debug, Tail: Debug> Debug for Cons<Head, Tail>

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<Head: Default, Tail: Default> Default for Cons<Head, Tail>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl<Head: ExprSources, Tail: ExprSources> ExprSources for Cons<Head, Tail>

Source§

type Sources = (<Head as ExprSources>::Sources, <Tail as ExprSources>::Sources)

Type-level tree with one Src leaf per column read.
Source§

impl<Head, Tail> ListContains<Head, ScopeHere> for Cons<Head, Tail>

Source§

impl<Head, Tail, T, Witness> ListContains<T, ScopeThere<Witness>> for Cons<Head, Tail>
where Tail: ListContains<T, Witness>,

Source§

impl<Scope, Used, Cols, Head, Tail, Proof> MarkerAggValidFor<Cons<Head, Tail>, Proof> for Scoped<SelectCols<Cols>, Scope, Used>
where Cols: ScalarColumnsIn<Cons<Head, Tail>, Proof>,

Source§

impl<Scope, Used, Head, Tail> MarkerAggValidFor<Cons<Head, Tail>> for Scoped<SelectStar, Scope, Used>

Source§

impl<Scope, Used, Head, Tail> MarkerAggValidFor<Cons<Head, Tail>> for Scoped<SelectExpr, Scope, Used>

Source§

impl<Scope, Used, R, Head, Tail> MarkerAggValidFor<Cons<Head, Tail>> for Scoped<SelectAs<R>, Scope, Used>

Source§

impl<Tag, Head, Tail> ScopeContains<AliasKey<Tag>, ScopeHere> for Cons<Head, Tail>
where Head: ScopeEntry<Key = AliasKey<Tag>>,

Source§

type Nullable = <Head as ScopeEntry>::Nullable

Null when the found source is on the nullable side of an outer join.
Source§

impl<Tag, Head, Tail, Witness> ScopeContains<AliasKey<Tag>, ScopeThere<Witness>> for Cons<Head, Tail>
where Tail: ScopeContains<AliasKey<Tag>, Witness>,

Source§

type Nullable = <Tail as ScopeContains<AliasKey<Tag>, Witness>>::Nullable

Null when the found source is on the nullable side of an outer join.
Source§

impl<Head, Tail> TypeSet for Cons<Head, Tail>
where Tail: TypeSet,

Source§

impl<S, Head, Tail> ValidateTableSetForeignKeys<S> for Cons<Head, Tail>

Auto Trait Implementations§

§

impl<Head, Tail> Freeze for Cons<Head, Tail>

§

impl<Head, Tail> RefUnwindSafe for Cons<Head, Tail>

§

impl<Head, Tail> Send for Cons<Head, Tail>

§

impl<Head, Tail> Sync for Cons<Head, Tail>

§

impl<Head, Tail> Unpin for Cons<Head, Tail>

§

impl<Head, Tail> UnsafeUnpin for Cons<Head, Tail>

§

impl<Head, Tail> UnwindSafe for Cons<Head, Tail>

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<List, Head, Tail, HeadProof, TailProof> ListIncludes<Cons<Head, Tail>, (HeadProof, TailProof)> for List
where List: ListContains<Head, HeadProof> + ListIncludes<Tail, TailProof>,

Source§

impl<List> ListIncludes<Nil, ()> for List

Source§

impl<Mk> MarkerAggValidFor<()> for Mk

Source§

impl<Name, Table, Scope> ScopeContains<TableKey<Name, Table>, ScopeFound> for Scope
where Scope: FindTable<Table>,

Source§

type Nullable = <Scope as FindTable<Table>>::Nullable

Null when the found source is on the nullable side of an outer join.
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

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

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> TypeEq<T> for T