[−][src]Struct bm::MerkleVec
Binary merkle vector.
Methods
impl<R: RootStatus, DB: MerkleDB> MerkleVec<R, DB> where
EndOf<DB>: From<usize> + Into<usize>,
[src]
EndOf<DB>: From<usize> + Into<usize>,
pub fn get(&self, db: &DB, index: usize) -> Result<EndOf<DB>, Error<DB::Error>>
[src]
Get value at index.
pub fn set(
&mut self,
db: &mut DB,
index: usize,
value: EndOf<DB>
) -> Result<(), Error<DB::Error>>
[src]
&mut self,
db: &mut DB,
index: usize,
value: EndOf<DB>
) -> Result<(), Error<DB::Error>>
Set value at index.
pub fn root(&self) -> ValueOf<DB>
[src]
Root of the current merkle vector.
pub fn push(
&mut self,
db: &mut DB,
value: EndOf<DB>
) -> Result<(), Error<DB::Error>>
[src]
&mut self,
db: &mut DB,
value: EndOf<DB>
) -> Result<(), Error<DB::Error>>
Push a new value to the vector.
pub fn pop(
&mut self,
db: &mut DB
) -> Result<Option<EndOf<DB>>, Error<DB::Error>>
[src]
&mut self,
db: &mut DB
) -> Result<Option<EndOf<DB>>, Error<DB::Error>>
Pop a value from the vector.
pub fn len(&self) -> usize
[src]
Length of the vector.
pub fn drop(self, db: &mut DB) -> Result<(), Error<DB::Error>>
[src]
Drop the current vector.
impl<DB: MerkleDB> MerkleVec<OwnedRoot, DB> where
EndOf<DB>: From<usize> + Into<usize>,
[src]
EndOf<DB>: From<usize> + Into<usize>,
Auto Trait Implementations
impl<R, DB> Sync for MerkleVec<R, DB> where
R: Sync,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: Sync,
<<DB as MerkleDB>::Digest as Digest>::OutputSize: ArrayLength<u8>,
R: Sync,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: Sync,
<<DB as MerkleDB>::Digest as Digest>::OutputSize: ArrayLength<u8>,
impl<R, DB> Unpin for MerkleVec<R, DB> where
R: Unpin,
<<<DB as MerkleDB>::Digest as Digest>::OutputSize as ArrayLength<u8>>::ArrayType: Unpin,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: Unpin,
R: Unpin,
<<<DB as MerkleDB>::Digest as Digest>::OutputSize as ArrayLength<u8>>::ArrayType: Unpin,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: Unpin,
impl<R, DB> Send for MerkleVec<R, DB> where
R: Send,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: Send,
<<DB as MerkleDB>::Digest as Digest>::OutputSize: ArrayLength<u8>,
R: Send,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: Send,
<<DB as MerkleDB>::Digest as Digest>::OutputSize: ArrayLength<u8>,
impl<R, DB> UnwindSafe for MerkleVec<R, DB> where
R: UnwindSafe,
<<<DB as MerkleDB>::Digest as Digest>::OutputSize as ArrayLength<u8>>::ArrayType: UnwindSafe,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: UnwindSafe,
R: UnwindSafe,
<<<DB as MerkleDB>::Digest as Digest>::OutputSize as ArrayLength<u8>>::ArrayType: UnwindSafe,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: UnwindSafe,
impl<R, DB> RefUnwindSafe for MerkleVec<R, DB> where
R: RefUnwindSafe,
<<<DB as MerkleDB>::Digest as Digest>::OutputSize as ArrayLength<u8>>::ArrayType: RefUnwindSafe,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: RefUnwindSafe,
R: RefUnwindSafe,
<<<DB as MerkleDB>::Digest as Digest>::OutputSize as ArrayLength<u8>>::ArrayType: RefUnwindSafe,
<DB as MerkleDB>::Digest: Digest,
<DB as MerkleDB>::End: RefUnwindSafe,
Blanket Implementations
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From<T> for 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.
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.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Same<T> for T
[src]
type Output = T
Should always be Self