Trait sp_blockchain::HeaderBackend[][src]

pub trait HeaderBackend<Block: BlockT>: Send + Sync {
    fn header(&self, id: BlockId<Block>) -> Result<Option<Block::Header>>;
fn info(&self) -> Info<Block>;
fn status(&self, id: BlockId<Block>) -> Result<BlockStatus>;
fn number(
        &self,
        hash: Block::Hash
    ) -> Result<Option<<<Block as BlockT>::Header as HeaderT>::Number>>;
fn hash(&self, number: NumberFor<Block>) -> Result<Option<Block::Hash>>; fn block_hash_from_id(
        &self,
        id: &BlockId<Block>
    ) -> Result<Option<Block::Hash>> { ... }
fn block_number_from_id(
        &self,
        id: &BlockId<Block>
    ) -> Result<Option<NumberFor<Block>>> { ... }
fn expect_header(&self, id: BlockId<Block>) -> Result<Block::Header> { ... }
fn expect_block_number_from_id(
        &self,
        id: &BlockId<Block>
    ) -> Result<NumberFor<Block>> { ... }
fn expect_block_hash_from_id(
        &self,
        id: &BlockId<Block>
    ) -> Result<Block::Hash> { ... } }

Blockchain database header backend. Does not perform any validation.

Required methods

fn header(&self, id: BlockId<Block>) -> Result<Option<Block::Header>>[src]

Get block header. Returns None if block is not found.

fn info(&self) -> Info<Block>[src]

Get blockchain info.

fn status(&self, id: BlockId<Block>) -> Result<BlockStatus>[src]

Get block status.

fn number(
    &self,
    hash: Block::Hash
) -> Result<Option<<<Block as BlockT>::Header as HeaderT>::Number>>
[src]

Get block number by hash. Returns None if the header is not in the chain.

fn hash(&self, number: NumberFor<Block>) -> Result<Option<Block::Hash>>[src]

Get block hash by number. Returns None if the header is not in the chain.

Loading content...

Provided methods

fn block_hash_from_id(&self, id: &BlockId<Block>) -> Result<Option<Block::Hash>>[src]

Convert an arbitrary block ID into a block hash.

fn block_number_from_id(
    &self,
    id: &BlockId<Block>
) -> Result<Option<NumberFor<Block>>>
[src]

Convert an arbitrary block ID into a block hash.

fn expect_header(&self, id: BlockId<Block>) -> Result<Block::Header>[src]

Get block header. Returns UnknownBlock error if block is not found.

fn expect_block_number_from_id(
    &self,
    id: &BlockId<Block>
) -> Result<NumberFor<Block>>
[src]

Convert an arbitrary block ID into a block number. Returns UnknownBlock error if block is not found.

fn expect_block_hash_from_id(&self, id: &BlockId<Block>) -> Result<Block::Hash>[src]

Convert an arbitrary block ID into a block hash. Returns UnknownBlock error if block is not found.

Loading content...

Implementors

Loading content...