[−][src]Struct ckb_store::ChainDB
TODO(doc): @quake
Implementations
impl ChainDB
[src]
pub fn new(db: RocksDB, config: StoreConfig) -> Self
[src]
TODO(doc): @quake
pub fn db(&self) -> &RocksDB
[src]
TODO(doc): @quake
pub fn into_inner(self) -> RocksDB
[src]
TODO(doc): @quake
pub fn put_chain_spec_hash(&self, hash: &Byte32) -> Result<(), Error>
[src]
Store the chain spec hash
pub fn get_chain_spec_hash(&self) -> Option<Byte32>
[src]
Return the chain spec hash
pub fn begin_transaction(&self) -> StoreTransaction
[src]
TODO(doc): @quake
pub fn get_snapshot(&self) -> StoreSnapshot
[src]
TODO(doc): @quake
pub fn new_write_batch(&self) -> StoreWriteBatch
[src]
TODO(doc): @quake
pub fn write(&self, write_batch: &StoreWriteBatch) -> Result<(), Error>
[src]
TODO(doc): @quake
pub fn init(&self, consensus: &Consensus) -> Result<(), Error>
[src]
TODO(doc): @quake
Trait Implementations
impl<'a> ChainStore<'a> for ChainDB
[src]
type Vector = DBPinnableSlice<'a>
TODO(doc): @quake
pub fn cache(&'a self) -> Option<&'a StoreCache>
[src]
pub fn get(&'a self, col: Col, key: &[u8]) -> Option<Self::Vector>
[src]
pub fn get_iter(&self, col: Col, mode: IteratorMode<'_>) -> DBIter<'_>
[src]
pub fn cell_provider(&self) -> CellProviderWrapper<'_, Self>
[src]
pub fn get_block(&'a self, h: &Byte32) -> Option<BlockView>
[src]
pub fn get_block_header(&'a self, hash: &Byte32) -> Option<HeaderView>
[src]
pub fn get_block_body(&'a self, hash: &Byte32) -> Vec<TransactionView>
[src]
pub fn get_block_txs_hashes(&'a self, hash: &Byte32) -> Vec<Byte32>
[src]
pub fn get_block_proposal_txs_ids(
&'a self,
hash: &Byte32
) -> Option<ProposalShortIdVec>
[src]
&'a self,
hash: &Byte32
) -> Option<ProposalShortIdVec>
pub fn get_block_uncles(&'a self, hash: &Byte32) -> Option<UncleBlockVecView>
[src]
pub fn get_block_ext(&'a self, block_hash: &Byte32) -> Option<BlockExt>
[src]
pub fn get_block_hash(&'a self, number: BlockNumber) -> Option<Byte32>
[src]
pub fn get_block_number(&'a self, hash: &Byte32) -> Option<BlockNumber>
[src]
pub fn is_main_chain(&'a self, hash: &Byte32) -> bool
[src]
pub fn get_tip_header(&'a self) -> Option<HeaderView>
[src]
pub fn transaction_exists(&'a self, hash: &Byte32) -> bool
[src]
pub fn get_transaction(
&'a self,
hash: &Byte32
) -> Option<(TransactionView, Byte32)>
[src]
&'a self,
hash: &Byte32
) -> Option<(TransactionView, Byte32)>
pub fn get_transaction_with_info(
&'a self,
hash: &Byte32
) -> Option<(TransactionView, TransactionInfo)>
[src]
&'a self,
hash: &Byte32
) -> Option<(TransactionView, TransactionInfo)>
pub fn get_transaction_info(&'a self, hash: &Byte32) -> Option<TransactionInfo>
[src]
pub fn get_cell(&'a self, out_point: &OutPoint) -> Option<CellMeta>
[src]
pub fn get_cell_data(&'a self, out_point: &OutPoint) -> Option<(Bytes, Byte32)>
[src]
pub fn get_current_epoch_ext(&'a self) -> Option<EpochExt>
[src]
pub fn get_epoch_ext(&'a self, hash: &Byte32) -> Option<EpochExt>
[src]
pub fn get_epoch_index(&'a self, number: EpochNumber) -> Option<Byte32>
[src]
pub fn get_block_epoch_index(&'a self, block_hash: &Byte32) -> Option<Byte32>
[src]
pub fn get_block_epoch(&'a self, hash: &Byte32) -> Option<EpochExt>
[src]
pub fn is_uncle(&'a self, hash: &Byte32) -> bool
[src]
pub fn get_uncle_header(&'a self, hash: &Byte32) -> Option<HeaderView>
[src]
pub fn block_exists(&'a self, hash: &Byte32) -> bool
[src]
pub fn get_cellbase(&'a self, hash: &Byte32) -> Option<TransactionView>
[src]
pub fn next_epoch_ext(
&'a self,
consensus: &Consensus,
last_epoch: &EpochExt,
header: &HeaderView
) -> Option<EpochExt>
[src]
&'a self,
consensus: &Consensus,
last_epoch: &EpochExt,
header: &HeaderView
) -> Option<EpochExt>
pub fn get_packed_block(&'a self, hash: &Byte32) -> Option<Block>
[src]
pub fn get_packed_block_header(&'a self, hash: &Byte32) -> Option<Header>
[src]
impl Clone for ChainDB
[src]
Auto Trait Implementations
impl !RefUnwindSafe for ChainDB
[src]
impl Send for ChainDB
[src]
impl Sync for ChainDB
[src]
impl Unpin for ChainDB
[src]
impl !UnwindSafe for ChainDB
[src]
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> AsAny for T where
T: Any,
T: Any,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Erased for T
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
pub fn to_owned(&self) -> T
[src]
pub fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
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]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
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]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,