Trait exocore_chain::chain::ChainStore [−][src]
pub trait ChainStore: Send + Sync + 'static { fn segments(&self) -> Segments; fn write_block<B: Block>(&mut self, block: &B) -> Result<BlockOffset, Error>; fn blocks_iter(
&self,
from_offset: BlockOffset
) -> Box<dyn Iterator<Item = Result<DataBlock<ChainData>, Error>> + '_>; fn blocks_iter_reverse(
&self,
from_next_offset: BlockOffset
) -> Box<dyn Iterator<Item = Result<DataBlock<ChainData>, Error>> + '_>; fn get_block(
&self,
offset: BlockOffset
) -> Result<DataBlock<ChainData>, Error>; fn get_block_from_next_offset(
&self,
next_offset: BlockOffset
) -> Result<DataBlock<ChainData>, Error>; fn get_last_block(&self) -> Result<Option<DataBlock<ChainData>>, Error>; fn get_block_by_operation_id(
&self,
operation_id: OperationId
) -> Result<Option<DataBlock<ChainData>>, Error>; fn truncate_from_offset(&mut self, offset: BlockOffset) -> Result<(), Error>; }
Expand description
Persistence for the chain