Enum tidechain_service::Client
source · pub enum Client {
Tidechain(Arc<Client<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, LocalCallExecutor<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, NativeElseWasmExecutor<TidechainExecutorDispatch>>, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, RuntimeApi>>),
Lagoon(Arc<Client<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, LocalCallExecutor<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, NativeElseWasmExecutor<LagoonExecutorDispatch>>, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, RuntimeApi>>),
}
Expand description
A client instance of Tidechain.
See ExecuteWithClient
for more information.
Variants§
Tidechain(Arc<Client<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, LocalCallExecutor<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, NativeElseWasmExecutor<TidechainExecutorDispatch>>, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, RuntimeApi>>)
Lagoon(Arc<Client<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, LocalCallExecutor<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, NativeElseWasmExecutor<LagoonExecutorDispatch>>, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, RuntimeApi>>)
Trait Implementations§
source§impl BlockBackend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> for Client
impl BlockBackend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> for Client
source§fn block_body(
&self,
id: H256
) -> Result<Option<Vec<<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Extrinsic, Global>>, Error>
fn block_body(
&self,
id: H256
) -> Result<Option<Vec<<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Extrinsic, Global>>, Error>
Get block body by ID. Returns
None
if the body is not stored.source§fn block(
&self,
id: H256
) -> Result<Option<SignedBlock<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>>, Error>
fn block(
&self,
id: H256
) -> Result<Option<SignedBlock<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>>, Error>
Get full block by hash.
source§fn block_status(&self, id: H256) -> Result<BlockStatus, Error>
fn block_status(&self, id: H256) -> Result<BlockStatus, Error>
Get block status by block hash.
source§fn justifications(&self, id: H256) -> Result<Option<Justifications>, Error>
fn justifications(&self, id: H256) -> Result<Option<Justifications>, Error>
Get block justifications for the block with the given hash.
source§fn block_hash(
&self,
number: <<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Header as Header>::Number
) -> Result<Option<<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash>, Error>
fn block_hash(
&self,
number: <<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Header as Header>::Number
) -> Result<Option<<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash>, Error>
Get block hash by number.
source§fn indexed_transaction(&self, id: H256) -> Result<Option<Vec<u8, Global>>, Error>
fn indexed_transaction(&self, id: H256) -> Result<Option<Vec<u8, Global>>, Error>
Get single indexed transaction by content hash. Read more
source§fn block_indexed_body(
&self,
id: H256
) -> Result<Option<Vec<Vec<u8, Global>, Global>>, Error>
fn block_indexed_body(
&self,
id: H256
) -> Result<Option<Vec<Vec<u8, Global>, Global>>, Error>
Get all indexed transactions for a block,
including renewed transactions. Read more
source§fn requires_full_sync(&self) -> bool
fn requires_full_sync(&self) -> bool
Tells whether the current client configuration requires full-sync mode.
source§impl ClientHandle for Client
impl ClientHandle for Client
source§fn execute_with<T>(&self, t: T) -> <T as ExecuteWithClient>::Outputwhere
T: ExecuteWithClient,
fn execute_with<T>(&self, t: T) -> <T as ExecuteWithClient>::Outputwhere
T: ExecuteWithClient,
Execute the given something with the client.
source§impl HeaderBackend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> for Client
impl HeaderBackend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> for Client
source§fn header(&self, id: H256) -> Result<Option<Header<u32, BlakeTwo256>>, Error>
fn header(&self, id: H256) -> Result<Option<Header<u32, BlakeTwo256>>, Error>
Get block header. Returns
None
if block is not found.source§fn info(&self) -> Info<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>
fn info(&self) -> Info<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>
Get blockchain info.
source§fn number(&self, hash: H256) -> Result<Option<u32>, Error>
fn number(&self, hash: H256) -> Result<Option<u32>, Error>
Get block number by hash. Returns
None
if the header is not in the chain.source§fn hash(&self, number: u32) -> Result<Option<H256>, Error>
fn hash(&self, number: u32) -> Result<Option<H256>, Error>
Get block hash by number. Returns
None
if the header is not in the chain.source§fn block_hash_from_id(
&self,
id: &BlockId<Block>
) -> Result<Option<<Block as Block>::Hash>, Error>
fn block_hash_from_id(
&self,
id: &BlockId<Block>
) -> Result<Option<<Block as Block>::Hash>, Error>
Convert an arbitrary block ID into a block hash.
source§fn block_number_from_id(
&self,
id: &BlockId<Block>
) -> Result<Option<<<Block as Block>::Header as Header>::Number>, Error>
fn block_number_from_id(
&self,
id: &BlockId<Block>
) -> Result<Option<<<Block as Block>::Header as Header>::Number>, Error>
Convert an arbitrary block ID into a block hash.
source§fn expect_header(
&self,
hash: <Block as Block>::Hash
) -> Result<<Block as Block>::Header, Error>
fn expect_header(
&self,
hash: <Block as Block>::Hash
) -> Result<<Block as Block>::Header, Error>
Get block header. Returns
UnknownBlock
error if block is not found.source§impl StorageProvider<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>> for Client
impl StorageProvider<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>, Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>> for Client
source§fn storage(
&self,
id: H256,
key: &StorageKey
) -> Result<Option<StorageData>, Error>
fn storage(
&self,
id: H256,
key: &StorageKey
) -> Result<Option<StorageData>, Error>
Given a block’s
Hash
and a key, return the value under the key in that block.source§fn storage_keys(
&self,
id: H256,
key_prefix: Option<&StorageKey>,
start_key: Option<&StorageKey>
) -> Result<KeysIter<<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> as Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>>::State, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, Error>
fn storage_keys(
&self,
id: H256,
key_prefix: Option<&StorageKey>,
start_key: Option<&StorageKey>
) -> Result<KeysIter<<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> as Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>>::State, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, Error>
Given a block’s
Hash
and a key prefix, returns a KeysIter
iterates matching storage
keys in that block. Read moresource§fn storage_hash(
&self,
id: H256,
key: &StorageKey
) -> Result<Option<<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash>, Error>
fn storage_hash(
&self,
id: H256,
key: &StorageKey
) -> Result<Option<<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash>, Error>
Given a block’s
Hash
and a key, return the value under the hash in that block.source§fn storage_pairs(
&self,
hash: <Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash,
key_prefix: Option<&StorageKey>,
start_key: Option<&StorageKey>
) -> Result<PairsIter<<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> as Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>>::State, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, Error>
fn storage_pairs(
&self,
hash: <Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash,
key_prefix: Option<&StorageKey>,
start_key: Option<&StorageKey>
) -> Result<PairsIter<<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> as Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>>::State, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, Error>
Given a block’s
Hash
and a key prefix, returns an iterator over the storage keys and
values in that block. Read moresource§fn child_storage(
&self,
id: H256,
child_info: &ChildInfo,
key: &StorageKey
) -> Result<Option<StorageData>, Error>
fn child_storage(
&self,
id: H256,
child_info: &ChildInfo,
key: &StorageKey
) -> Result<Option<StorageData>, Error>
Given a block’s
Hash
, a key and a child storage key, return the value under the key in
that block. Read moresource§fn child_storage_keys(
&self,
hash: <Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash,
child_info: ChildInfo,
prefix: Option<&StorageKey>,
start_key: Option<&StorageKey>
) -> Result<KeysIter<<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> as Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>>::State, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, Error>
fn child_storage_keys(
&self,
hash: <Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash,
child_info: ChildInfo,
prefix: Option<&StorageKey>,
start_key: Option<&StorageKey>
) -> Result<KeysIter<<Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> as Backend<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>>::State, Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>, Error>
Given a block’s
Hash
and a key prefix
and a child storage key,
returns a KeysIter
that iterates matching storage keys in that block. Read moresource§fn child_storage_hash(
&self,
id: H256,
child_info: &ChildInfo,
key: &StorageKey
) -> Result<Option<<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash>, Error>
fn child_storage_hash(
&self,
id: H256,
child_info: &ChildInfo,
key: &StorageKey
) -> Result<Option<<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic> as Block>::Hash>, Error>
Given a block’s
Hash
, a key and a child storage key, return the hash under the key in that
block. Read moresource§impl UsageProvider<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> for Client
impl UsageProvider<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>> for Client
source§fn usage_info(
&self
) -> ClientInfo<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>
fn usage_info(
&self
) -> ClientInfo<Block<Header<u32, BlakeTwo256>, OpaqueExtrinsic>>
Get usage info about current client.
Auto Trait Implementations§
impl !RefUnwindSafe for Client
impl Send for Client
impl Sync for Client
impl Unpin for Client
impl !UnwindSafe for Client
Blanket Implementations§
source§impl<T> CheckedConversion for T
impl<T> CheckedConversion for T
source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
source§fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
fn into_any(self: Box<T, Global>) -> Box<dyn Any + 'static, Global>
Convert
Box<dyn Trait>
(where Trait: Downcast
) to Box<dyn Any>
. Box<dyn Any>
can
then be further downcast
into Box<ConcreteType>
where ConcreteType
implements Trait
. Read moresource§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any + 'static>
Convert
Rc<Trait>
(where Trait: Downcast
) to Rc<Any>
. Rc<Any>
can then be
further downcast
into Rc<ConcreteType>
where ConcreteType
implements Trait
. Read moresource§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &Any
’s vtable from &Trait
’s. Read moresource§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait
(where Trait: Downcast
) to &Any
. This is needed since Rust cannot
generate &mut Any
’s vtable from &mut Trait
’s. Read moresource§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> Instrument for T
impl<T> Instrument for T
source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
impl<T, Outer> IsWrappedBy<Outer> for Twhere
Outer: AsRef<T> + AsMut<T> + From<T>,
T: From<Outer>,
source§impl<T> Pointable for T
impl<T> Pointable for T
source§impl<T> SaturatedConversion for T
impl<T> SaturatedConversion for T
source§fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
fn saturated_from<T>(t: T) -> Selfwhere
Self: UniqueSaturatedFrom<T>,
source§fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
fn saturated_into<T>(self) -> Twhere
Self: UniqueSaturatedInto<T>,
Consume self to return an equivalent value of
T
. Read moresource§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self
from the equivalent element of its
superset. Read moresource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self
is actually part of its subset T
(and can be converted to it).source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset
but without any property checks. Always succeeds.source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self
to the equivalent element of its superset.source§impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
impl<S, T> UncheckedInto<T> for Swhere
T: UncheckedFrom<S>,
source§fn unchecked_into(self) -> T
fn unchecked_into(self) -> T
The counterpart to
unchecked_from
.source§impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
impl<T, S> UniqueSaturatedInto<T> for Swhere
T: Bounded,
S: TryInto<T>,
source§fn unique_saturated_into(self) -> T
fn unique_saturated_into(self) -> T
Consume self to return an equivalent value of
T
.