Struct holochain_zome_types::record::Record
source · 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: A
The signed action for this record
entry: RecordEntry
If there is an entry associated with this action it will be here. If not, there will be an enum variant explaining the reason.
Implementations
sourceimpl Record<SignedHashed<Action>>
impl Record<SignedHashed<Action>>
sourcepub fn new(
signed_action: SignedHashed<Action>,
maybe_entry: Option<Entry>
) -> Record<SignedHashed<Action>>
pub fn new(
signed_action: SignedHashed<Action>,
maybe_entry: Option<Entry>
) -> Record<SignedHashed<Action>>
Raw record constructor. Used only when we know that the values are valid.
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<SignedHashed<Action>>
pub fn privatized(self) -> Record<SignedHashed<Action>>
If the Record contains private entry data, set the RecordEntry to Hidden so that it cannot be leaked
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.
sourceimpl<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
sourceimpl<'arbitrary, A> Arbitrary<'arbitrary> for Record<A>where
A: Arbitrary<'arbitrary>,
impl<'arbitrary, A> Arbitrary<'arbitrary> for Record<A>where
A: Arbitrary<'arbitrary>,
sourcefn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Record<A>, Error>
fn arbitrary(u: &mut Unstructured<'arbitrary>) -> Result<Record<A>, Error>
Self
from the given unstructured data. Read moresourcefn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Record<A>, Error>
fn arbitrary_take_rest(u: Unstructured<'arbitrary>) -> Result<Record<A>, Error>
Self
from the entirety of the given
unstructured data. Read moresourceimpl<'de, A> Deserialize<'de> for Record<A>where
A: Deserialize<'de>,
impl<'de, A> Deserialize<'de> for Record<A>where
A: Deserialize<'de>,
sourcefn 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>,
sourceimpl<A> PartialEq<Record<A>> for Record<A>where
A: PartialEq<A>,
impl<A> PartialEq<Record<A>> for Record<A>where
A: PartialEq<A>,
sourceimpl<A> Serialize for Record<A>where
A: Serialize,
impl<A> Serialize for Record<A>where
A: Serialize,
sourcefn 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,
sourceimpl TryFrom<&Record<SignedHashed<Action>>> for SerializedBytes
impl TryFrom<&Record<SignedHashed<Action>>> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
sourcefn try_from(
t: &Record<SignedHashed<Action>>
) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(
t: &Record<SignedHashed<Action>>
) -> Result<SerializedBytes, SerializedBytesError>
sourceimpl TryFrom<Record<SignedHashed<Action>>> for CreateLink<RateWeight>
impl TryFrom<Record<SignedHashed<Action>>> for CreateLink<RateWeight>
type Error = WrongActionError
type Error = WrongActionError
sourcefn try_from(
value: Record<SignedHashed<Action>>
) -> Result<CreateLink<RateWeight>, <CreateLink<RateWeight> as TryFrom<Record<SignedHashed<Action>>>>::Error>
fn try_from(
value: Record<SignedHashed<Action>>
) -> Result<CreateLink<RateWeight>, <CreateLink<RateWeight> as TryFrom<Record<SignedHashed<Action>>>>::Error>
sourceimpl TryFrom<Record<SignedHashed<Action>>> for DeleteLink
impl TryFrom<Record<SignedHashed<Action>>> for DeleteLink
type Error = WrongActionError
type Error = WrongActionError
sourcefn try_from(
value: Record<SignedHashed<Action>>
) -> Result<DeleteLink, <DeleteLink as TryFrom<Record<SignedHashed<Action>>>>::Error>
fn try_from(
value: Record<SignedHashed<Action>>
) -> Result<DeleteLink, <DeleteLink as TryFrom<Record<SignedHashed<Action>>>>::Error>
sourceimpl TryFrom<Record<SignedHashed<Action>>> for SerializedBytes
impl TryFrom<Record<SignedHashed<Action>>> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
sourcefn try_from(
t: Record<SignedHashed<Action>>
) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(
t: Record<SignedHashed<Action>>
) -> Result<SerializedBytes, SerializedBytesError>
sourceimpl TryFrom<SerializedBytes> for Record<SignedHashed<Action>>
impl TryFrom<SerializedBytes> for Record<SignedHashed<Action>>
type Error = SerializedBytesError
type Error = SerializedBytesError
sourcefn try_from(
sb: SerializedBytes
) -> Result<Record<SignedHashed<Action>>, SerializedBytesError>
fn try_from(
sb: SerializedBytes
) -> Result<Record<SignedHashed<Action>>, SerializedBytesError>
impl<A> StructuralPartialEq for Record<A>
Auto Trait Implementations
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
impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
type ArchivedMetadata = ()
type ArchivedMetadata = ()
fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
sourceimpl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
impl<F, W, T, D> Deserialize<With<T, W>, D> for Fwhere
W: DeserializeWith<F, T, D>,
D: Fallible + ?Sized,
F: ?Sized,
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
fn deserialize(
&self,
deserializer: &mut D
) -> Result<With<T, W>, <D as Fallible>::Error>
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
impl<T> Pointable for T
impl<T> Pointable for T
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
self
from the equivalent element of its
superset. Read morefn 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).fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
self.to_subset
but without any property checks. Always succeeds.fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self
to the equivalent element of its superset.