pub trait InputStorage<N: Network>: Clone + Sync {
    type IDMap: for<'a> Map<'a, N::TransitionID, Vec<Field<N>>>;
    type ReverseIDMap: for<'a> Map<'a, Field<N>, N::TransitionID>;
    type ConstantMap: for<'a> Map<'a, Field<N>, Option<Plaintext<N>>>;
    type PublicMap: for<'a> Map<'a, Field<N>, Option<Plaintext<N>>>;
    type PrivateMap: for<'a> Map<'a, Field<N>, Option<Ciphertext<N>>>;
    type RecordMap: for<'a> Map<'a, Field<N>, (Field<N>, Origin<N>)>;
    type RecordTagMap: for<'a> Map<'a, Field<N>, Field<N>>;
    type ExternalRecordMap: for<'a> Map<'a, Field<N>, ()>;

Show 18 methods fn open() -> Result<Self>; fn id_map(&self) -> &Self::IDMap; fn reverse_id_map(&self) -> &Self::ReverseIDMap; fn constant_map(&self) -> &Self::ConstantMap; fn public_map(&self) -> &Self::PublicMap; fn private_map(&self) -> &Self::PrivateMap; fn record_map(&self) -> &Self::RecordMap; fn record_tag_map(&self) -> &Self::RecordTagMap; fn external_record_map(&self) -> &Self::ExternalRecordMap; fn start_atomic(&self) { ... } fn is_atomic_in_progress(&self) -> bool { ... } fn abort_atomic(&self) { ... } fn finish_atomic(&self) -> Result<()> { ... } fn insert(
        &self,
        transition_id: N::TransitionID,
        inputs: &[Input<N>]
    ) -> Result<()> { ... } fn remove(&self, transition_id: &N::TransitionID) -> Result<()> { ... } fn find_transition_id(
        &self,
        input_id: &Field<N>
    ) -> Result<Option<N::TransitionID>> { ... } fn get_ids(&self, transition_id: &N::TransitionID) -> Result<Vec<Field<N>>> { ... } fn get(&self, transition_id: &N::TransitionID) -> Result<Vec<Input<N>>> { ... }
}
Expand description

A trait for transition input storage.

Required Associated Types

The mapping of transition ID to input IDs.

The mapping of input ID to transition ID.

The mapping of plaintext hash to (optional) plaintext.

The mapping of plaintext hash to (optional) plaintext.

The mapping of ciphertext hash to (optional) ciphertext.

The mapping of serial number to (tag, origin).

The mapping of tag to serial number.

The mapping of external hash to (). Note: This is not the record commitment.

Required Methods

Initializes the transition input storage.

Returns the ID map.

Returns the reverse ID map.

Returns the constant map.

Returns the public map.

Returns the private map.

Returns the record map.

Returns the record tag map.

Returns the external record map.

Provided Methods

Starts an atomic batch write operation.

Checks if an atomic batch is in progress.

Aborts an atomic batch write operation.

Finishes an atomic batch write operation.

Stores the given (transition ID, input) pair into storage.

Removes the input for the given transition ID.

Returns the transition ID that contains the given input ID.

Returns the input IDs for the given transition ID.

Returns the input for the given transition ID.

Implementors