Enum tinychain::state::State[][src]

pub enum State {
    Collection(Collection),
    Chain(Chain),
    Map(Map<Self>),
    Object(Object),
    Scalar(Scalar),
    Tuple(Tuple<Self>),
}
Expand description

An addressable state with a discrete value per-transaction.

Variants

Collection(Collection)
Chain(Chain)
Map(Map<Self>)
Object(Object)
Scalar(Scalar)
Tuple(Tuple<Self>)

Implementations

impl State[src]

pub fn is_none(&self) -> bool[src]

Return true if this State is an empty Tuple or Map, default Link, or Value::None

pub fn is_some(&self) -> bool[src]

Return false if this State is an empty Tuple or Map, default Link, or Value::None

pub fn is_ref(&self) -> bool[src]

Return true if this State is a reference that needs to be resolved.

pub fn into_type(self, class: StateType) -> Option<Self>[src]

Cast this State into the given StateType, if possible.

Trait Implementations

impl Clone for State[src]

fn clone(&self) -> State[src]

Returns a copy of the value. Read more

fn clone_from(&mut self, source: &Self)1.0.0[src]

Performs copy-assignment from source. Read more

impl Default for State[src]

fn default() -> Self[src]

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

impl Display for State[src]

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

Formats the value using the given formatter. Read more

impl From<()> for State[src]

fn from(_: ()) -> State[src]

Performs the conversion.

impl From<BTree<File<Node>, Dir, Txn>> for State[src]

fn from(btree: BTree) -> Self[src]

Performs the conversion.

impl From<Box<TCRef, Global>> for State[src]

fn from(tc_ref: Box<TCRef>) -> Self[src]

Performs the conversion.

impl From<Chain> for State[src]

fn from(chain: Chain) -> Self[src]

Performs the conversion.

impl From<Collection> for State[src]

fn from(collection: Collection) -> Self[src]

Performs the conversion.

impl<T: Instance> From<InstanceExt<T>> for State where
    State: From<T>, 
[src]

fn from(instance: InstanceExt<T>) -> State[src]

Performs the conversion.

impl From<Link> for State[src]

fn from(link: Link) -> Self[src]

Performs the conversion.

impl From<Map<Scalar>> for State[src]

fn from(map: Map<Scalar>) -> Self[src]

Performs the conversion.

impl From<Map<State>> for State[src]

fn from(map: Map<State>) -> Self[src]

Performs the conversion.

impl From<OpRef> for State[src]

fn from(op_ref: OpRef) -> Self[src]

Performs the conversion.

impl From<Scalar> for State[src]

fn from(scalar: Scalar) -> Self[src]

Performs the conversion.

impl From<TCRef> for State[src]

fn from(tc_ref: TCRef) -> Self[src]

Performs the conversion.

impl From<Table<File<Node>, Dir, Txn>> for State[src]

fn from(table: Table) -> Self[src]

Performs the conversion.

impl From<Tuple<Scalar>> for State[src]

fn from(tuple: Tuple<Scalar>) -> Self[src]

Performs the conversion.

impl From<Tuple<State>> for State[src]

fn from(tuple: Tuple<State>) -> Self[src]

Performs the conversion.

impl From<Tuple<Value>> for State[src]

fn from(tuple: Tuple<Value>) -> Self[src]

Performs the conversion.

impl From<Value> for State[src]

fn from(value: Value) -> Self[src]

Performs the conversion.

impl From<bool> for State[src]

fn from(b: bool) -> Self[src]

Performs the conversion.

impl From<u64> for State[src]

fn from(n: u64) -> Self[src]

Performs the conversion.

impl FromStream for State[src]

type Context = Txn

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>(
    txn: Txn,
    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]

Parse this value using the given Decoder.

impl Instance for State[src]

type Class = StateType

The Class type of this instance

fn class(&self) -> StateType[src]

Returns the [Class] of this instance.

impl Refer for State[src]

fn requires(&self, deps: &mut HashSet<Id>)[src]

Add the dependency Ids of this reference to the given set.

fn resolve<'a, 'async_trait, T: Instance + Public>(
    self,
    context: &'a Scope<'a, T>,
    txn: &'a Txn
) -> Pin<Box<dyn Future<Output = TCResult<Self>> + Send + 'async_trait>> where
    'a: 'async_trait,
    T: 'async_trait,
    Self: 'async_trait, 
[src]

Resolve this reference with respect to the given context.

impl<T: Clone + TryCastFrom<State>> TryCastFrom<State> for Map<T>[src]

fn can_cast_from(state: &State) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(state: State) -> Option<Self>[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]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryCastFrom<State> for IdRef[src]

fn can_cast_from(state: &State) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(state: State) -> Option<Self>[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]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryCastFrom<State> for Link[src]

fn can_cast_from(state: &State) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(state: State) -> Option<Self>[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]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryCastFrom<State> for OpDef[src]

fn can_cast_from(state: &State) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(state: State) -> Option<Self>[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]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryCastFrom<State> for OpRef[src]

fn can_cast_from(state: &State) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(state: State) -> Option<Self>[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]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryCastFrom<State> for Scalar[src]

fn can_cast_from(state: &State) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(state: State) -> Option<Self>[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]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryCastFrom<State> for Value[src]

fn can_cast_from(state: &State) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(state: State) -> Option<Self>[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]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryCastFrom<State> for Number[src]

fn can_cast_from(state: &State) -> bool[src]

Test if value can be cast into Self.

fn opt_cast_from(state: State) -> Option<Self>[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]

Returns Ok(Self) if the source value can be cast into Self, otherwise calls on_err.

impl TryFrom<State> for Map<State>[src]

type Error = TCError

The type returned in the event of a conversion error.

fn try_from(state: State) -> TCResult<Map<State>>[src]

Performs the conversion.

impl TryFrom<State> for Value[src]

type Error = TCError

The type returned in the event of a conversion error.

fn try_from(state: State) -> TCResult<Value>[src]

Performs the conversion.

Auto Trait Implementations

impl !RefUnwindSafe for State

impl Send for State

impl Sync for State

impl Unpin for State

impl !UnwindSafe for State

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

pub fn type_id(&self) -> TypeId[src]

Gets the TypeId of self. Read more

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

pub fn borrow(&self) -> &T[src]

Immutably borrows from an owned value. Read more

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

pub fn borrow_mut(&mut self) -> &mut T[src]

Mutably borrows from an owned value. Read more

impl<F, T> CastFrom<F> for T where
    T: From<F>, 
[src]

pub fn cast_from(f: F) -> T[src]

impl<T, F> CastInto<F> for T where
    F: CastFrom<T>, 
[src]

pub fn cast_into(self) -> F[src]

impl<T> From<T> for T[src]

pub fn from(t: T) -> T[src]

Performs the conversion.

impl<T> Instrument for T[src]

fn instrument(self, span: Span) -> Instrumented<Self>[src]

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more

fn in_current_span(self) -> Instrumented<Self>[src]

Instruments this type with the current Span, returning an Instrumented wrapper. Read more

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

pub fn into(self) -> U[src]

Performs the conversion.

impl<F> Match for F[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

type Output = T

Should always be Self

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

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]

🔬 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<T> ToString for T where
    T: Display + ?Sized
[src]

pub default fn to_string(&self) -> String[src]

Converts the given value to a String. Read more

impl<F, T> TryCastFrom<F> for T where
    T: CastFrom<F>, 
[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]

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]

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]

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]

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]

Returns Ok(T) if self can be cast into T, otherwise calls on_err.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]

Performs the conversion.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

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

The type returned in the event of a conversion error.

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

Performs the conversion.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>, 

pub fn vzip(self) -> V