pub struct ModuleStorageDatabaseBridge { /* private fields */ }Expand description
Bridge: ModuleStorage → blvm-node Database.
Allows InvocationContext to hold ModuleStorage while ctx.db() still
returns Arc<dyn Database> for compatibility with existing module code.
Implementations§
Source§impl ModuleStorageDatabaseBridge
impl ModuleStorageDatabaseBridge
Sourcepub fn new(storage: Arc<dyn ModuleStorage>) -> Self
pub fn new(storage: Arc<dyn ModuleStorage>) -> Self
Create bridge from module storage.
Trait Implementations§
Source§impl Database for ModuleStorageDatabaseBridge
impl Database for ModuleStorageDatabaseBridge
Source§fn as_any(&self) -> &dyn Any
fn as_any(&self) -> &dyn Any
For backend-specific fast paths (e.g. cross-column-family RocksDB
WriteBatch).Source§fn ibd_memory_pressure_tick(&self, _level_u8: u8)
fn ibd_memory_pressure_tick(&self, _level_u8: u8)
Optional: reduce RocksDB background work / shrink caches when IBD reports memory pressure.
level_u8 is PressureLevel as u8 (see parallel_ibd::memory).Auto Trait Implementations§
impl !RefUnwindSafe for ModuleStorageDatabaseBridge
impl !UnwindSafe for ModuleStorageDatabaseBridge
impl Freeze for ModuleStorageDatabaseBridge
impl Send for ModuleStorageDatabaseBridge
impl Sync for ModuleStorageDatabaseBridge
impl Unpin for ModuleStorageDatabaseBridge
impl UnsafeUnpin for ModuleStorageDatabaseBridge
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.