pub struct FinalizeStore<N: Network, P: FinalizeStorage<N>> { /* private fields */ }
Expand description

The finalize store.

Implementations§

source§

impl<N: Network, P: FinalizeStorage<N>> FinalizeStore<N, P>

source

pub fn open(dev: Option<u16>) -> Result<Self>

Initializes the finalize store.

source

pub fn from(storage: P) -> Result<Self>

Initializes a finalize store from storage.

source

pub fn start_atomic(&self)

Starts an atomic batch write operation.

source

pub fn is_atomic_in_progress(&self) -> bool

Checks if an atomic batch is in progress.

source

pub fn atomic_checkpoint(&self)

Checkpoints the atomic batch.

source

pub fn clear_latest_checkpoint(&self)

Clears the latest atomic batch checkpoint.

source

pub fn atomic_rewind(&self)

Rewinds the atomic batch to the previous checkpoint.

source

pub fn abort_atomic(&self)

Aborts an atomic batch write operation.

source

pub fn finish_atomic(&self) -> Result<()>

Finishes an atomic batch write operation.

source

pub fn dev(&self) -> Option<u16>

Returns the optional development ID.

source§

impl<N: Network, P: FinalizeStorage<N>> FinalizeStore<N, P>

source

pub fn committee_store(&self) -> &CommitteeStore<N, P::CommitteeStorage>

Returns the committee store.

source§

impl<N: Network, P: FinalizeStorage<N>> FinalizeStore<N, P>

source

pub fn initialize_mapping( &self, program_id: ProgramID<N>, mapping_name: Identifier<N> ) -> Result<FinalizeOperation<N>>

Initializes the given program ID and mapping name in storage. If the mapping name is already initialized, an error is returned.

source

pub fn replace_mapping( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, entries: Vec<(Plaintext<N>, Value<N>)> ) -> Result<FinalizeOperation<N>>

Replaces the mapping for the given program ID and mapping name from storage, with the given key-value pairs.

source

pub fn remove_mapping( &self, program_id: ProgramID<N>, mapping_name: Identifier<N> ) -> Result<FinalizeOperation<N>>

Removes the mapping for the given program ID and mapping name from storage, along with all associated key-value pairs in storage.

source

pub fn remove_program(&self, program_id: &ProgramID<N>) -> Result<()>

Removes the program for the given program ID from storage, along with all associated mappings and key-value pairs in storage.

source§

impl<N: Network, P: FinalizeStorage<N>> FinalizeStore<N, P>

source

pub fn contains_program_confirmed( &self, program_id: &ProgramID<N> ) -> Result<bool>

Returns true if the given program ID exist.

source

pub fn contains_key_confirmed( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, key: &Plaintext<N> ) -> Result<bool>

Returns true if the given program ID, mapping name, and key exist.

source§

impl<N: Network, P: FinalizeStorage<N>> FinalizeStore<N, P>

source

pub fn get_mapping_names_confirmed( &self, program_id: &ProgramID<N> ) -> Result<Option<IndexSet<Identifier<N>>>>

Returns the confirmed mapping names for the given program ID.

source

pub fn get_mapping_confirmed( &self, program_id: ProgramID<N>, mapping_name: Identifier<N> ) -> Result<Vec<(Plaintext<N>, Value<N>)>>

Returns the confirmed mapping entries for the given program ID and mapping name.

source

pub fn get_mapping_speculative( &self, program_id: ProgramID<N>, mapping_name: Identifier<N> ) -> Result<Vec<(Plaintext<N>, Value<N>)>>

Returns the speculative mapping entries for the given program ID and mapping name.

source

pub fn get_value_confirmed( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, key: &Plaintext<N> ) -> Result<Option<Value<N>>>

Returns the confirmed value for the given program ID, mapping name, and key.

source

pub fn get_value_speculative( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, key: &Plaintext<N> ) -> Result<Option<Value<N>>>

Returns the speculative value for the given program ID, mapping name, and key.

source

pub fn get_checksum_confirmed(&self) -> Result<Field<N>>

Returns the confirmed checksum of the finalize store.

Trait Implementations§

source§

impl<N: Clone + Network, P: Clone + FinalizeStorage<N>> Clone for FinalizeStore<N, P>

source§

fn clone(&self) -> FinalizeStore<N, P>

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl<N: Network, P: FinalizeStorage<N>> FinalizeStoreTrait<N> for FinalizeStore<N, P>

source§

fn contains_mapping_confirmed( &self, program_id: &ProgramID<N>, mapping_name: &Identifier<N> ) -> Result<bool>

Returns true if the given program ID and mapping name exist.

source§

fn contains_key_speculative( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, key: &Plaintext<N> ) -> Result<bool>

Returns true if the given program ID, mapping name, and key exist.

source§

fn get_value_speculative( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, key: &Plaintext<N> ) -> Result<Option<Value<N>>>

Returns the speculative value for the given program ID, mapping name, and key.

source§

fn insert_key_value( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, key: Plaintext<N>, value: Value<N> ) -> Result<FinalizeOperation<N>>

Stores the given (key, value) pair at the given program ID and mapping name in storage. If the mapping name is not initialized, an error is returned. If the key already exists, the method returns an error.

source§

fn update_key_value( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, key: Plaintext<N>, value: Value<N> ) -> Result<FinalizeOperation<N>>

Stores the given (key, value) pair at the given program ID and mapping name in storage. If the mapping name is not initialized, an error is returned. If the key does not exist, the (key, value) pair is initialized. If the key already exists, the value is overwritten.

source§

fn remove_key_value( &self, program_id: ProgramID<N>, mapping_name: Identifier<N>, key: &Plaintext<N> ) -> Result<Option<FinalizeOperation<N>>>

Removes the key-value pair for the given program ID, mapping name, and key from storage.

Auto Trait Implementations§

§

impl<N, P> RefUnwindSafe for FinalizeStore<N, P>where N: RefUnwindSafe, P: RefUnwindSafe,

§

impl<N, P> Send for FinalizeStore<N, P>

§

impl<N, P> Sync for FinalizeStore<N, P>

§

impl<N, P> Unpin for FinalizeStore<N, P>where N: Unpin, P: Unpin,

§

impl<N, P> UnwindSafe for FinalizeStore<N, P>where N: UnwindSafe, P: UnwindSafe,

Blanket Implementations§

source§

impl<T> Any for Twhere T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for Twhere T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for Twhere T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

impl<T, U> Into<U> for Twhere U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T> Same for T

§

type Output = T

Should always be Self
source§

impl<T> ToOwned for Twhere T: Clone,

§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
source§

impl<T, U> TryFrom<U> for Twhere U: Into<T>,

§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for Twhere U: TryFrom<T>,

§

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

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

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

§

fn vzip(self) -> V