pub enum OpRecord<ET: UnitEnum, LT> {
Show 18 variants
CreateEntry {
app_entry: ET,
action: Create,
},
CreatePrivateEntry {
app_entry_type: <ET as UnitEnum>::Unit,
action: Create,
},
CreateAgent {
agent: AgentPubKey,
action: Create,
},
CreateCapClaim {
action: Create,
},
CreateCapGrant {
action: Create,
},
UpdateEntry {
original_action_hash: ActionHash,
original_entry_hash: EntryHash,
app_entry: ET,
action: Update,
},
UpdatePrivateEntry {
original_action_hash: ActionHash,
original_entry_hash: EntryHash,
app_entry_type: <ET as UnitEnum>::Unit,
action: Update,
},
UpdateAgent {
original_key: AgentPubKey,
new_key: AgentPubKey,
original_action_hash: ActionHash,
action: Update,
},
UpdateCapClaim {
original_action_hash: ActionHash,
original_entry_hash: EntryHash,
action: Update,
},
UpdateCapGrant {
original_action_hash: ActionHash,
original_entry_hash: EntryHash,
action: Update,
},
DeleteEntry {
original_action_hash: ActionHash,
original_entry_hash: EntryHash,
action: Delete,
},
CreateLink {
base_address: AnyLinkableHash,
target_address: AnyLinkableHash,
tag: LinkTag,
link_type: LT,
action: CreateLink,
},
DeleteLink {
original_action_hash: ActionHash,
base_address: AnyLinkableHash,
action: DeleteLink,
},
Dna {
dna_hash: DnaHash,
action: Dna,
},
OpenChain {
previous_dna_hash: DnaHash,
action: OpenChain,
},
CloseChain {
new_dna_hash: DnaHash,
action: CloseChain,
},
AgentValidationPkg {
membrane_proof: Option<MembraneProof>,
action: AgentValidationPkg,
},
InitZomesComplete {
action: InitZomesComplete,
},
}Expand description
Data specific to the [Op::StoreRecord] operation.
Variants§
CreateEntry
This operation stores the [Record] for an
app defined entry type.
Fields
app_entry: ETThe app defined entry type with the deserialized
[Entry] data.
CreatePrivateEntry
This operation stores the [Record] for an
app defined private entry type.
Fields
CreateAgent
This operation stores the [Record] for an
AgentPubKey that has been created.
Fields
agent: AgentPubKeyThe agent that was created
CreateCapClaim
This operation stores the [Record] for a
Capability Claim that has been created.
CreateCapGrant
This operation stores the [Record] for a
Capability Grant that has been created.
UpdateEntry
This operation stores the [Record] for an
updated app defined entry type.
Fields
original_action_hash: ActionHashThe hash of the [Action] that created the original entry
app_entry: ETThe app defined entry type with the deserialized
[Entry] data from the new entry.
Note the new entry type is always the same as the
original entry type however the data may have changed.
UpdatePrivateEntry
This operation stores the [Record] for an
updated app defined private entry type.
Fields
original_action_hash: ActionHashThe hash of the [Action] that created the original entry
UpdateAgent
This operation stores the [Record] for an
updated AgentPubKey.
Fields
original_key: AgentPubKeyThe original AgentPubKey.
new_key: AgentPubKeyThe new AgentPubKey.
original_action_hash: ActionHashThe hash of the [Action] that created the original key
UpdateCapClaim
This operation stores the [Record] for an
updated Capability Claim.
Fields
original_action_hash: ActionHashThe hash of the [Action] that created the original [crate::CapClaim]
UpdateCapGrant
This operation stores the [Record] for an
updated Capability Grant.
Fields
original_action_hash: ActionHashThe hash of the [Action] that created the original [crate::CapGrant]
DeleteEntry
This operation stores the [Record] for a
deleted app defined entry type.
Fields
original_action_hash: ActionHashThe hash of the [Action] that created the original entry
CreateLink
This operation stores the [Record] for a
new link.
Fields
base_address: AnyLinkableHashThe base address of the link.
target_address: AnyLinkableHashThe target address of the link.
link_type: LTThe app defined link type of this link.
action: CreateLinkThe CreateLink action that creates this link
DeleteLink
This operation stores the [Record] for a
deleted link and contains the original link’s
[Action] hash.
Fields
original_action_hash: ActionHashThe deleted links CreateLink [Action].
base_address: AnyLinkableHashThe base address where this link is stored. This is the base address of the link that is being deleted.
action: DeleteLinkThe DeleteLink action that deletes the link
Dna
This operation stores the [Record] for an
[Action::Dna].
OpenChain
This operation stores the [Record] for an
[Action::OpenChain] and contains the previous
chains’s DnaHash.
Fields
CloseChain
This operation stores the [Record] for an
[Action::CloseChain] and contains the new
chains’s DnaHash.
Fields
action: CloseChainThe CloseChain action
AgentValidationPkg
This operation stores the [Record] for an
[Action::AgentValidationPkg] and contains
the membrane proof if there is one.
Fields
membrane_proof: Option<MembraneProof>The membrane proof proving that the agent is allowed to participate in this DNA
action: AgentValidationPkgThe AgentValidationPkg action
InitZomesComplete
This operation stores the [Record] for an
[Action::InitZomesComplete].
Fields
action: InitZomesCompleteThe InitZomesComplete action
Trait Implementations§
source§impl<ET: PartialEq + UnitEnum, LT: PartialEq> PartialEq for OpRecord<ET, LT>
impl<ET: PartialEq + UnitEnum, LT: PartialEq> PartialEq for OpRecord<ET, LT>
impl<ET: Eq + UnitEnum, LT: Eq> Eq for OpRecord<ET, LT>
impl<ET: UnitEnum, LT> StructuralPartialEq for OpRecord<ET, LT>
Auto Trait Implementations§
impl<ET, LT> Freeze for OpRecord<ET, LT>
impl<ET, LT> RefUnwindSafe for OpRecord<ET, LT>
impl<ET, LT> Send for OpRecord<ET, LT>
impl<ET, LT> Sync for OpRecord<ET, LT>
impl<ET, LT> Unpin for OpRecord<ET, LT>
impl<ET, LT> UnwindSafe for OpRecord<ET, LT>
Blanket Implementations§
source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
§type ArchivedMetadata = ()
type ArchivedMetadata = ()
source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
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
source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
source§default unsafe fn clone_to_uninit(&self, dst: *mut T)
default unsafe fn clone_to_uninit(&self, dst: *mut T)
clone_to_uninit)source§impl<F, W, T, D> Deserialize<With<T, W>, D> for F
impl<F, W, T, D> Deserialize<With<T, W>, D> for F
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.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>
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>
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 more