Selectable

Trait Selectable 

Source
pub trait Selectable<T: Table> {
    // Required method
    fn column_names() -> &'static [&'static str];
}
Expand description

Trait for selecting specific columns from a table.

Implemented for tuples of column types to enable type-safe SELECT queries.

Required Methods§

Source

fn column_names() -> &'static [&'static str]

Returns the column names to select.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl<T: Table, C0: Column<Table = T>> Selectable<T> for (C0,)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>> Selectable<T> for (C0, C1)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>> Selectable<T> for (C0, C1, C2)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>, C4: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3, C4)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>, C4: Column<Table = T>, C5: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3, C4, C5)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>, C4: Column<Table = T>, C5: Column<Table = T>, C6: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3, C4, C5, C6)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>, C4: Column<Table = T>, C5: Column<Table = T>, C6: Column<Table = T>, C7: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3, C4, C5, C6, C7)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>, C4: Column<Table = T>, C5: Column<Table = T>, C6: Column<Table = T>, C7: Column<Table = T>, C8: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3, C4, C5, C6, C7, C8)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>, C4: Column<Table = T>, C5: Column<Table = T>, C6: Column<Table = T>, C7: Column<Table = T>, C8: Column<Table = T>, C9: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>, C4: Column<Table = T>, C5: Column<Table = T>, C6: Column<Table = T>, C7: Column<Table = T>, C8: Column<Table = T>, C9: Column<Table = T>, C10: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10)

Source§

fn column_names() -> &'static [&'static str]

Source§

impl<T: Table, C0: Column<Table = T>, C1: Column<Table = T>, C2: Column<Table = T>, C3: Column<Table = T>, C4: Column<Table = T>, C5: Column<Table = T>, C6: Column<Table = T>, C7: Column<Table = T>, C8: Column<Table = T>, C9: Column<Table = T>, C10: Column<Table = T>, C11: Column<Table = T>> Selectable<T> for (C0, C1, C2, C3, C4, C5, C6, C7, C8, C9, C10, C11)

Source§

fn column_names() -> &'static [&'static str]

Implementors§

Source§

impl<T: Table, C: Column<Table = T>> Selectable<T> for C