Enum tc_table::Table [−][src]
pub enum Table<F: File<Node>, D: Dir, Txn: Transaction<D>> { Index(Index<F, D, Txn>), ROIndex(ReadOnly<F, D, Txn>), Table(TableIndex<F, D, Txn>), Aggregate(Box<Aggregate<F, D, Txn, Table<F, D, Txn>>>), IndexSlice(IndexSlice<F, D, Txn>), Limit(Box<Limited<F, D, Txn>>), Merge(Merged<F, D, Txn>), Selection(Box<Selection<F, D, Txn, Table<F, D, Txn>>>), TableSlice(TableSlice<F, D, Txn>), }
Expand description
An ordered collection of Rows which supports BTree-based indexing
Variants
Table(TableIndex<F, D, Txn>)Limit(Box<Limited<F, D, Txn>>)Trait Implementations
impl<F: Clone + File<Node>, D: Clone + Dir, Txn: Clone + Transaction<D>> Clone for Table<F, D, Txn>[src]
impl<F: Clone + File<Node>, D: Clone + Dir, Txn: Clone + Transaction<D>> Clone for Table<F, D, Txn>[src]impl<F: File<Node>, D: Dir, Txn: Transaction<D>> From<TableIndex<F, D, Txn>> for Table<F, D, Txn>[src]
impl<F: File<Node>, D: Dir, Txn: Transaction<D>> From<TableIndex<F, D, Txn>> for Table<F, D, Txn>[src]fn from(table: TableIndex<F, D, Txn>) -> Self[src]
fn from(table: TableIndex<F, D, Txn>) -> Self[src]Performs the conversion.
impl<F: File<Node>, D: Dir, Txn: Transaction<D>> FromStream for Table<F, D, Txn> where
F: TryFrom<D::File, Error = TCError>,
D::FileClass: From<BTreeType>, [src]
impl<F: File<Node>, D: Dir, Txn: Transaction<D>> FromStream for Table<F, D, Txn> where
F: TryFrom<D::File, Error = TCError>,
D::FileClass: From<BTreeType>, [src]type Context = Txn
type Context = TxnThe decoding context of this type, useful in situations where the stream to be decoded may be too large to hold in main memory. Read more
fn from_stream<'life0, 'async_trait, De: Decoder>(
txn: Txn,
decoder: &'life0 mut De
) -> Pin<Box<dyn Future<Output = Result<Self, De::Error>> + Send + 'async_trait>> where
De: 'async_trait,
'life0: 'async_trait,
Self: 'async_trait, [src]
fn from_stream<'life0, 'async_trait, De: Decoder>(
txn: Txn,
decoder: &'life0 mut De
) -> Pin<Box<dyn Future<Output = Result<Self, De::Error>> + Send + 'async_trait>> where
De: 'async_trait,
'life0: 'async_trait,
Self: 'async_trait, [src]Parse this value using the given Decoder.
impl<'en, F: File<Node>, D: Dir, Txn: Transaction<D>> Hash<'en, D> for Table<F, D, Txn>[src]
impl<'en, F: File<Node>, D: Dir, Txn: Transaction<D>> Hash<'en, D> for Table<F, D, Txn>[src]type Item = Vec<Value>
type Txn = Txn
fn hashable<'async_trait>(
&'en self,
txn: &'en Txn
) -> Pin<Box<dyn Future<Output = TCResult<TCTryStream<'en, Self::Item>>> + Send + 'async_trait>> where
'en: 'async_trait,
Self: 'async_trait, [src]
&'en self,
txn: &'en Txn
) -> Pin<Box<dyn Future<Output = TCResult<TCTryStream<'en, Self::Item>>> + Send + 'async_trait>> where
'en: 'async_trait,
Self: 'async_trait,
#[must_use]fn hash_hex<'async_trait>(
&'en self,
txn: &'en Self::Txn
) -> Pin<Box<dyn Future<Output = Result<String, TCError>> + 'async_trait + Send, Global>> where
'en: 'async_trait,
Self: Sync + 'async_trait, [src]
&'en self,
txn: &'en Self::Txn
) -> Pin<Box<dyn Future<Output = Result<String, TCError>> + 'async_trait + Send, Global>> where
'en: 'async_trait,
Self: Sync + 'async_trait,
#[must_use]fn hash<'async_trait>(
&'en self,
txn: &'en Self::Txn
) -> Pin<Box<dyn Future<Output = Result<Bytes, TCError>> + 'async_trait + Send, Global>> where
'en: 'async_trait,
Self: Sync + 'async_trait, [src]
&'en self,
txn: &'en Self::Txn
) -> Pin<Box<dyn Future<Output = Result<Bytes, TCError>> + 'async_trait + Send, Global>> where
'en: 'async_trait,
Self: Sync + 'async_trait,
impl<F: File<Node>, D: Dir, Txn: Transaction<D>> TableInstance<F, D, Txn> for Table<F, D, Txn>[src]
impl<F: File<Node>, D: Dir, Txn: Transaction<D>> TableInstance<F, D, Txn> for Table<F, D, Txn>[src]type OrderBy = Self
type OrderBy = SelfThe type of Table returned by this instance’s order_by method.
type Reverse = Self
type Reverse = SelfThe type of Table returned by this instance’s reversed method.
type Slice = Self
type Slice = SelfThe type of Table returned by this instance’s slice method.
fn count<'async_trait>(
self,
txn_id: TxnId
) -> Pin<Box<dyn Future<Output = TCResult<u64>> + Send + 'async_trait>> where
Self: 'async_trait, [src]
fn count<'async_trait>(
self,
txn_id: TxnId
) -> Pin<Box<dyn Future<Output = TCResult<u64>> + Send + 'async_trait>> where
Self: 'async_trait, [src]Return the number of rows in this Table.
fn delete<'life0, 'async_trait>(
&'life0 self,
txn_id: TxnId
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
fn delete<'life0, 'async_trait>(
&'life0 self,
txn_id: TxnId
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait, [src]Delete all rows in this Table.
fn delete_row<'life0, 'async_trait>(
&'life0 self,
txn_id: TxnId,
row: Row
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
fn delete_row<'life0, 'async_trait>(
&'life0 self,
txn_id: TxnId,
row: Row
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait, [src]Delete the given Row from this table, if present.
fn index<'async_trait>(
self,
txn: Txn,
columns: Option<Vec<Id>>
) -> Pin<Box<dyn Future<Output = TCResult<ReadOnly<F, D, Txn>>> + Send + 'async_trait>> where
F: TryFrom<D::File, Error = TCError>,
D::FileClass: From<BTreeType>,
Self: 'async_trait, [src]
fn index<'async_trait>(
self,
txn: Txn,
columns: Option<Vec<Id>>
) -> Pin<Box<dyn Future<Output = TCResult<ReadOnly<F, D, Txn>>> + Send + 'async_trait>> where
F: TryFrom<D::File, Error = TCError>,
D::FileClass: From<BTreeType>,
Self: 'async_trait, [src]Construct and return a temporary index of the given columns.
fn schema(&self) -> TableSchema[src]
fn schema(&self) -> TableSchema[src]Return the schema of this Table.
fn order_by(self, order: Vec<Id>, reverse: bool) -> TCResult<Self::OrderBy>[src]
fn order_by(self, order: Vec<Id>, reverse: bool) -> TCResult<Self::OrderBy>[src]Set the order returned by rows.
fn slice(self, bounds: Bounds) -> TCResult<Table<F, D, Txn>>[src]
fn slice(self, bounds: Bounds) -> TCResult<Table<F, D, Txn>>[src]Limit the returned rows to the given Bounds.
fn rows<'a, 'async_trait>(
self,
txn_id: TxnId
) -> Pin<Box<dyn Future<Output = TCResult<TCTryStream<'a, Vec<Value>>>> + Send + 'async_trait>> where
'a: 'async_trait,
Self: 'async_trait, [src]
fn rows<'a, 'async_trait>(
self,
txn_id: TxnId
) -> Pin<Box<dyn Future<Output = TCResult<TCTryStream<'a, Vec<Value>>>> + Send + 'async_trait>> where
'a: 'async_trait,
Self: 'async_trait, [src]Return a stream of the rows in this Table.
fn validate_bounds(&self, bounds: &Bounds) -> TCResult<()>[src]
fn validate_bounds(&self, bounds: &Bounds) -> TCResult<()>[src]Return an error if this table does not support the given Bounds.
fn validate_order(&self, order: &[Id]) -> TCResult<()>[src]
fn validate_order(&self, order: &[Id]) -> TCResult<()>[src]Return an error if this table does not support ordering by the given columns.
fn update<'life0, 'life1, 'async_trait>(
&'life0 self,
txn: &'life1 Txn,
value: Row
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
F: TryFrom<D::File, Error = TCError>,
D::FileClass: From<BTreeType>,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait, [src]
fn update<'life0, 'life1, 'async_trait>(
&'life0 self,
txn: &'life1 Txn,
value: Row
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
F: TryFrom<D::File, Error = TCError>,
D::FileClass: From<BTreeType>,
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait, [src]Update the values of the columns in this Table to match the given Row.
fn update_row<'life0, 'async_trait>(
&'life0 self,
txn_id: TxnId,
row: Row,
value: Row
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
fn update_row<'life0, 'async_trait>(
&'life0 self,
txn_id: TxnId,
row: Row,
value: Row
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait, [src]Update one row of this Table.
fn upsert<'life0, 'async_trait>(
&'life0 self,
txn_id: TxnId,
key: Vec<Value>,
values: Vec<Value>
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait, [src]
fn upsert<'life0, 'async_trait>(
&'life0 self,
txn_id: TxnId,
key: Vec<Value>,
values: Vec<Value>
) -> Pin<Box<dyn Future<Output = TCResult<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait, [src]Insert or update the given row.
Auto Trait Implementations
impl<F, D, Txn> RefUnwindSafe for Table<F, D, Txn> where
D: RefUnwindSafe,
F: RefUnwindSafe,
Txn: RefUnwindSafe,
D: RefUnwindSafe,
F: RefUnwindSafe,
Txn: RefUnwindSafe,
impl<F, D, Txn> Send for Table<F, D, Txn>
impl<F, D, Txn> Sync for Table<F, D, Txn>
impl<F, D, Txn> Unpin for Table<F, D, Txn> where
D: Unpin,
F: Unpin,
Txn: Unpin,
D: Unpin,
F: Unpin,
Txn: Unpin,
impl<F, D, Txn> UnwindSafe for Table<F, D, Txn> where
D: RefUnwindSafe + UnwindSafe,
F: RefUnwindSafe + UnwindSafe,
Txn: RefUnwindSafe + UnwindSafe,
D: RefUnwindSafe + UnwindSafe,
F: RefUnwindSafe + UnwindSafe,
Txn: RefUnwindSafe + UnwindSafe,
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]pub fn borrow_mut(&mut self) -> &mut T[src]
pub fn borrow_mut(&mut self) -> &mut T[src]Mutably borrows from an owned value. Read more
impl<F> Match for F[src]
impl<F> Match for F[src]fn matches<T>(&self) -> bool where
T: TryCastFrom<Self>, [src]
fn matches<T>(&self) -> bool where
T: TryCastFrom<Self>, [src]Returns true if self can be cast into the target type T.
impl<T> Same<T> for T
impl<T> Same<T> for Ttype Output = T
type Output = TShould always be Self
impl<T> ToOwned for T where
T: Clone, [src]
impl<T> ToOwned for T where
T: Clone, [src]type Owned = T
type Owned = TThe resulting type after obtaining ownership.
pub fn to_owned(&self) -> T[src]
pub fn to_owned(&self) -> T[src]Creates owned data from borrowed data, usually by cloning. Read more
pub fn clone_into(&self, target: &mut T)[src]
pub fn clone_into(&self, target: &mut T)[src]🔬 This is a nightly-only experimental API. (toowned_clone_into)
recently added
Uses borrowed data to replace owned data, usually by cloning. Read more
impl<F, T> TryCastFrom<F> for T where
T: CastFrom<F>, [src]
impl<F, T> TryCastFrom<F> for T where
T: CastFrom<F>, [src]pub fn can_cast_from(&F) -> bool[src]
pub fn can_cast_from(&F) -> bool[src]Test if value can be cast into Self.
pub fn opt_cast_from(f: F) -> Option<T>[src]
pub fn opt_cast_from(f: F) -> Option<T>[src]Returns Some(Self) if the source value can be cast into Self, otherwise None.
fn try_cast_from<Err, OnErr>(value: T, on_err: OnErr) -> Result<Self, Err> where
OnErr: FnOnce(&T) -> Err, [src]
fn try_cast_from<Err, OnErr>(value: T, on_err: OnErr) -> Result<Self, Err> where
OnErr: FnOnce(&T) -> Err, [src]Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.
impl<F, T> TryCastInto<T> for F where
T: TryCastFrom<F>, [src]
impl<F, T> TryCastInto<T> for F where
T: TryCastFrom<F>, [src]pub fn can_cast_into(&self) -> bool[src]
pub fn can_cast_into(&self) -> bool[src]Test if self can be cast into T.
pub fn opt_cast_into(self) -> Option<T>[src]
pub fn opt_cast_into(self) -> Option<T>[src]Returns Some(T) if self can be cast into T, otherwise None.
fn try_cast_into<Err, OnErr>(self, on_err: OnErr) -> Result<T, Err> where
OnErr: FnOnce(&Self) -> Err, [src]
fn try_cast_into<Err, OnErr>(self, on_err: OnErr) -> Result<T, Err> where
OnErr: FnOnce(&Self) -> Err, [src]Returns Ok(T) if self can be cast into T, otherwise calls on_err.
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,