Struct tinychain::cluster::Cluster [−][src]
pub struct Cluster { /* fields omitted */ }
Expand description
The data structure responsible for maintaining consensus per-transaction.
Implementations
impl Cluster
[src]
impl Cluster
[src]pub fn class(&self, name: &Id) -> Option<&InstanceClass>
[src]
pub fn class(&self, name: &Id) -> Option<&InstanceClass>
[src]Borrow an InstanceClass
, if there is one defined with the given name.
pub fn public_key(&self) -> &[u8]
[src]
pub fn public_key(&self) -> &[u8]
[src]Borrow the public key of this cluster.
pub fn link(&self) -> &Link
[src]
pub fn link(&self) -> &Link
[src]Return the canonical Link
to this cluster (probably not on this host).
pub fn path(&self) -> &[PathSegment]
[src]
pub fn path(&self) -> &[PathSegment]
[src]Return the path of this cluster, relative to this host.
pub async fn replicas(&self, txn_id: &TxnId) -> TCResult<HashSet<Link>>
[src]
pub async fn replicas(&self, txn_id: &TxnId) -> TCResult<HashSet<Link>>
[src]Iterate over a list of replicas of this cluster.
pub async fn authorize(&self, txn: &Txn, scope: &Scope) -> TCResult<()>
[src]
pub async fn authorize(&self, txn: &Txn, scope: &Scope) -> TCResult<()>
[src]Return Unauthorized
if the request does not have the given scope
from a trusted issuer.
pub async fn grant(
&self,
txn: Txn,
scope: Scope,
op: OpDef,
context: Map<State>
) -> TCResult<State>
[src]
pub async fn grant(
&self,
txn: Txn,
scope: Scope,
op: OpDef,
context: Map<State>
) -> TCResult<State>
[src]Grant the given scope
to the txn
and use it to resolve the given OpRef
.
pub async fn install(
&self,
txn_id: TxnId,
other: Link,
scopes: HashSet<Scope>
) -> TCResult<()>
[src]
pub async fn install(
&self,
txn_id: TxnId,
other: Link,
scopes: HashSet<Scope>
) -> TCResult<()>
[src]pub async fn add_replica(&self, txn: &Txn, replica: Link) -> TCResult<()>
[src]
pub async fn add_replica(&self, txn: &Txn, replica: Link) -> TCResult<()>
[src]Add a replica to this cluster.
pub async fn remove_replicas(
&self,
txn: &Txn,
to_remove: &[Link]
) -> TCResult<()>
[src]
pub async fn remove_replicas(
&self,
txn: &Txn,
to_remove: &[Link]
) -> TCResult<()>
[src]Remove a replica from this cluster.
pub async fn mutate(&self, txn: &Txn, participant: Link) -> TCResult<()>
[src]
pub async fn distribute_commit(&self, txn: Txn) -> TCResult<()>
[src]
pub async fn distribute_rollback(&self, txn: Txn)
[src]
pub async fn write_ahead(&self, txn_id: &TxnId)
[src]
Trait Implementations
impl Transact for Cluster
[src]
impl Transact for Cluster
[src]impl Eq for Cluster
[src]
Auto Trait Implementations
impl !RefUnwindSafe for Cluster
impl Send for Cluster
impl Sync for Cluster
impl Unpin for Cluster
impl !UnwindSafe for Cluster
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<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]
impl<Q, K> Equivalent<K> for Q where
K: Borrow<Q> + ?Sized,
Q: Eq + ?Sized,
[src]pub fn equivalent(&self, key: &K) -> bool
[src]
pub fn equivalent(&self, key: &K) -> bool
[src]Compare self to key
and return true
if they are equal.
impl<T> Instrument for T
[src]
impl<T> Instrument for T
[src]fn instrument(self, span: Span) -> Instrumented<Self>
[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]
fn in_current_span(self) -> Instrumented<Self>
[src]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 T
type Output = 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 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>,