pub struct Record<A = SignedHashed<Action>> {
pub signed_action: A,
pub entry: RecordEntry,
}Expand description
a chain record containing the signed action along with the entry if the action type has one.
Fields§
§signed_action: AThe signed action for this record
entry: RecordEntryIf there is an entry associated with this action it will be here. If not, there will be an enum variant explaining the reason.
Implementations§
Source§impl Record
impl Record
Sourcepub fn new(
signed_action: SignedHashed<Action>,
maybe_entry: Option<Entry>,
) -> Record
pub fn new( signed_action: SignedHashed<Action>, maybe_entry: Option<Entry>, ) -> Record
Raw record constructor. Used only when we know that the values are valid. NOTE: this will NOT hide private entry data if present!
Sourcepub fn as_action_mut(&mut self) -> &mut Action
pub fn as_action_mut(&mut self) -> &mut Action
Mutable reference to the Action content. This is useless and dangerous in production usage. Guaranteed to make hashes and signatures mismatch whatever the Action is mutated to (at least). This may be useful for tests that rely heavily on mocked and fixturated data.
Sourcepub fn privatized(self) -> (Record, Option<Entry>)
pub fn privatized(self) -> (Record, Option<Entry>)
If the Record contains private entry data, set the RecordEntry to Hidden so that it cannot be leaked. If the entry was hidden, return it separately.
Sourcepub fn action_address(&self) -> &HoloHash<Action>
pub fn action_address(&self) -> &HoloHash<Action>
Access the action address from this record’s signed action
Sourcepub fn action_hashed(&self) -> &HoloHashed<Action>
pub fn action_hashed(&self) -> &HoloHashed<Action>
Access the ActionHashed from this record’s signed action portion
Sourcepub fn entry(&self) -> &RecordEntry
pub fn entry(&self) -> &RecordEntry
Access the Entry portion of this record as a RecordEntry, which includes the context around the presence or absence of the entry.
Source§impl<A> Record<A>
impl<A> Record<A>
Sourcepub fn as_entry_mut(&mut self) -> &mut RecordEntry
pub fn as_entry_mut(&mut self) -> &mut RecordEntry
Mutable reference to the RecordEntry. This is useless and dangerous in production usage. Guaranteed to make hashes and signatures mismatch whatever the RecordEntry is mutated to (at least). This may be useful for tests that rely heavily on mocked and fixturated data.
Sourcepub fn into_inner(self) -> (A, RecordEntry)
pub fn into_inner(self) -> (A, RecordEntry)
Break this record into its components
Sourcepub fn signed_action(&self) -> &A
pub fn signed_action(&self) -> &A
The inner signed-action
Trait Implementations§
Source§impl<'de, A> Deserialize<'de> for Record<A>where
A: Deserialize<'de>,
impl<'de, A> Deserialize<'de> for Record<A>where
A: Deserialize<'de>,
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<Record<A>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<Record<A>, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl<A> Serialize for Record<A>where
A: Serialize,
impl<A> Serialize for Record<A>where
A: Serialize,
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
Source§impl TryFrom<&Record> for MemoryBlockEntry
impl TryFrom<&Record> for MemoryBlockEntry
Source§impl TryFrom<&Record> for MemoryEntry
impl TryFrom<&Record> for MemoryEntry
Source§impl TryFrom<&Record> for SerializedBytes
impl TryFrom<&Record> for SerializedBytes
Source§type Error = SerializedBytesError
type Error = SerializedBytesError
Source§fn try_from(t: &Record) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(t: &Record) -> Result<SerializedBytes, SerializedBytesError>
Source§impl TryFrom<&Record> for WebAppEntry
impl TryFrom<&Record> for WebAppEntry
Source§impl TryFrom<&Record> for WebAppPackageEntry
impl TryFrom<&Record> for WebAppPackageEntry
Source§impl TryFrom<&Record> for WebAppPackageVersionEntry
impl TryFrom<&Record> for WebAppPackageVersionEntry
Source§impl TryFrom<Record> for CreateLink
impl TryFrom<Record> for CreateLink
Source§type Error = WrongActionError
type Error = WrongActionError
Source§fn try_from(
value: Record,
) -> Result<CreateLink, <CreateLink as TryFrom<Record>>::Error>
fn try_from( value: Record, ) -> Result<CreateLink, <CreateLink as TryFrom<Record>>::Error>
Source§impl TryFrom<Record> for DeleteLink
impl TryFrom<Record> for DeleteLink
Source§type Error = WrongActionError
type Error = WrongActionError
Source§fn try_from(
value: Record,
) -> Result<DeleteLink, <DeleteLink as TryFrom<Record>>::Error>
fn try_from( value: Record, ) -> Result<DeleteLink, <DeleteLink as TryFrom<Record>>::Error>
Source§impl TryFrom<Record> for MemoryBlockEntry
impl TryFrom<Record> for MemoryBlockEntry
Source§impl TryFrom<Record> for MemoryEntry
impl TryFrom<Record> for MemoryEntry
Source§impl TryFrom<Record> for SerializedBytes
impl TryFrom<Record> for SerializedBytes
Source§type Error = SerializedBytesError
type Error = SerializedBytesError
Source§fn try_from(t: Record) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(t: Record) -> Result<SerializedBytes, SerializedBytesError>
Source§impl TryFrom<Record> for WebAppEntry
impl TryFrom<Record> for WebAppEntry
Source§impl TryFrom<Record> for WebAppPackageEntry
impl TryFrom<Record> for WebAppPackageEntry
Source§impl TryFrom<Record> for WebAppPackageVersionEntry
impl TryFrom<Record> for WebAppPackageVersionEntry
Source§impl TryFrom<SerializedBytes> for Record
impl TryFrom<SerializedBytes> for Record
Source§type Error = SerializedBytesError
type Error = SerializedBytesError
Source§fn try_from(sb: SerializedBytes) -> Result<Record, SerializedBytesError>
fn try_from(sb: SerializedBytes) -> Result<Record, SerializedBytesError>
impl<A> Eq for Record<A>where
A: Eq,
impl<A> StructuralPartialEq for Record<A>
Auto Trait Implementations§
impl<A> Freeze for Record<A>where
A: Freeze,
impl<A> RefUnwindSafe for Record<A>where
A: RefUnwindSafe,
impl<A> Send for Record<A>where
A: Send,
impl<A> Sync for Record<A>where
A: Sync,
impl<A> Unpin for Record<A>where
A: Unpin,
impl<A> UnwindSafe for Record<A>where
A: UnwindSafe,
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§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§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<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
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 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>
Source§impl<T> Pointable for T
impl<T> Pointable for T
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.