Struct vapcore_trace::TraceDB[][src]

pub struct TraceDB<T> where
    T: DatabaseExtras
{ /* fields omitted */ }

Database to store transaction execution trace.

Whenever a transaction is executed by VVM it’s execution trace is stored in trace database. Each trace has information, which contracts have been touched, which have been created during the execution of transaction, and which calls failed.

Implementations

impl<T> TraceDB<T> where
    T: DatabaseExtras
[src]

pub fn new(config: Config, db: Arc<dyn BlockChainDB>, extras: Arc<T>) -> Self[src]

Creates new instance of TraceDB.

pub fn collect_garbage(&self)[src]

Ticks our cache system and throws out any old data.

Trait Implementations

impl<T> Database for TraceDB<T> where
    T: DatabaseExtras
[src]

fn import(&self, batch: &mut DBTransaction, request: ImportRequest)[src]

Traces of import request’s enacted blocks are expected to be already in database or to be the currently inserted trace.

Auto Trait Implementations

impl<T> !RefUnwindSafe for TraceDB<T>

impl<T> Send for TraceDB<T> where
    T: Send + Sync

impl<T> Sync for TraceDB<T> where
    T: Send + Sync

impl<T> Unpin for TraceDB<T>

impl<T> !UnwindSafe for TraceDB<T>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> Pointable for T

type Init = T

The type for initializers.

impl<T> Same<T> for T

type Output = T

Should always be Self

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<V, T> VZip<V> for T where
    V: MultiLane<T>,