Struct tc_table::IndexSchema [−][src]
pub struct IndexSchema { /* fields omitted */ }
The schema of a Table
index
Implementations
impl IndexSchema
[src]
impl IndexSchema
[src]pub fn columns(&self) -> Vec<Column>
[src]
Return a list of the columns in this schema.
pub fn column_names(&self) -> impl Iterator<Item = &Id>
[src]
Iterate over the names of the columns in this schema.
pub fn key(&self) -> &[Column]
[src]
Return a slice of the columns in this schema’s key.
pub fn values(&self) -> &[Column]
[src]
Return a slice of the columns in this schema’s values.
pub fn len(&self) -> usize
[src]
Return the number of columns in this schema.
pub fn key_values_from_row(
&self,
row: Row
) -> TCResult<(Vec<Value>, Vec<Value>)>
[src]
&self,
row: Row
) -> TCResult<(Vec<Value>, Vec<Value>)>
Given a Row
, return a (key, values)
tuple.
pub fn row_from_key_values(
&self,
key: Vec<Value>,
values: Vec<Value>
) -> TCResult<Row>
[src]
&self,
key: Vec<Value>,
values: Vec<Value>
) -> TCResult<Row>
Given a key
and values
, return a Row
.
pub fn row_from_values(&self, values: Vec<Value>) -> TCResult<Row>
[src]
Given a list of Value
s, return a Row
.
pub fn starts_with(&self, expected: &[Id]) -> bool
[src]
Return true
if this schema starts with the given slice of column names.
pub fn auxiliary(&self, key: &[Id]) -> TCResult<IndexSchema>
[src]
Return the IndexSchema
needed to index the given columns.
pub fn validate_columns(&self, columns: &[Id]) -> TCResult<()>
[src]
Return an error if this schema does not support ordering by the given columns.
pub fn validate_key(&self, key: Vec<Value>) -> TCResult<Vec<Value>>
[src]
Return an error if the given key does not match this schema.
pub fn validate_row_partial(&self, row: Row) -> TCResult<Row>
[src]
Return an error if the given Row
has any extra fields or incompatible values.
pub fn validate_row(&self, row: Row) -> TCResult<Row>
[src]
Return an error if the given Row
does not have a compatible value for every column.
pub fn values_from_row(
&self,
row: Row,
reject_extras: bool
) -> TCResult<Vec<Value>>
[src]
&self,
row: Row,
reject_extras: bool
) -> TCResult<Vec<Value>>
Trait Implementations
impl Clone for IndexSchema
[src]
impl Clone for IndexSchema
[src]fn clone(&self) -> IndexSchema
[src]
pub fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Eq for IndexSchema
[src]
impl Eq for IndexSchema
[src]impl From<IndexSchema> for RowSchema
[src]
impl From<IndexSchema> for RowSchema
[src]fn from(schema: IndexSchema) -> RowSchema
[src]
impl From<IndexSchema> for TableSchema
[src]
impl From<IndexSchema> for TableSchema
[src]fn from(schema: IndexSchema) -> TableSchema
[src]
impl FromStream for IndexSchema
[src]
impl FromStream for IndexSchema
[src]type Context = ()
The 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, D: Decoder>(
cxt: (),
decoder: &'life0 mut D
) -> Pin<Box<dyn Future<Output = Result<Self, D::Error>> + Send + 'async_trait>> where
D: 'async_trait,
'life0: 'async_trait,
Self: 'async_trait,
[src]
cxt: (),
decoder: &'life0 mut D
) -> Pin<Box<dyn Future<Output = Result<Self, D::Error>> + Send + 'async_trait>> where
D: 'async_trait,
'life0: 'async_trait,
Self: 'async_trait,
impl<'en> IntoStream<'en> for IndexSchema
[src]
impl<'en> IntoStream<'en> for IndexSchema
[src]impl PartialEq<IndexSchema> for IndexSchema
[src]
impl PartialEq<IndexSchema> for IndexSchema
[src]fn eq(&self, other: &IndexSchema) -> bool
[src]
fn ne(&self, other: &IndexSchema) -> bool
[src]
impl StructuralEq for IndexSchema
[src]
impl StructuralEq for IndexSchema
[src]impl StructuralPartialEq for IndexSchema
[src]
impl StructuralPartialEq for IndexSchema
[src]impl TryCastFrom<Value> for IndexSchema
[src]
impl TryCastFrom<Value> for IndexSchema
[src]fn can_cast_from(value: &Value) -> bool
[src]
fn opt_cast_from(value: Value) -> Option<IndexSchema>
[src]
pub fn try_cast_from<Err, OnErr>(value: T, on_err: OnErr) -> Result<Self, Err> where
OnErr: FnOnce(&T) -> Err,
[src]
OnErr: FnOnce(&T) -> Err,
Auto Trait Implementations
impl RefUnwindSafe for IndexSchema
impl RefUnwindSafe for IndexSchema
impl Send for IndexSchema
impl Send for IndexSchema
impl Sync for IndexSchema
impl Sync for IndexSchema
impl Unpin for IndexSchema
impl Unpin for IndexSchema
impl UnwindSafe for IndexSchema
impl UnwindSafe for IndexSchema
Blanket Implementations
impl<T> Same<T> for T
impl<T> Same<T> for T
type Output = T
Should always be Self
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 opt_cast_from(f: F) -> Option<T>
[src]
pub fn try_cast_from<Err, OnErr>(value: T, on_err: OnErr) -> Result<Self, Err> where
OnErr: FnOnce(&T) -> Err,
[src]
OnErr: FnOnce(&T) -> 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 opt_cast_into(self) -> Option<T>
[src]
pub fn try_cast_into<Err, OnErr>(self, on_err: OnErr) -> Result<T, Err> where
OnErr: FnOnce(&Self) -> Err,
[src]
OnErr: FnOnce(&Self) -> Err,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
impl<V, T> VZip<V> for T where
V: MultiLane<T>,