Struct holochain_types::prelude::Record
[−]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
impl Record<SignedHashed<Action>>
impl Record<SignedHashed<Action>>
pub 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.
pub 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.
pub 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
pub fn action_address(&self) -> &HoloHash<Action>
pub fn action_address(&self) -> &HoloHash<Action>
Access the action address from this record’s signed action
pub fn action_hashed(&self) -> &HoloHashed<Action>
pub fn action_hashed(&self) -> &HoloHashed<Action>
Access the ActionHashed from this record’s signed action portion
pub 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.
impl<A> Record<A>
impl<A> Record<A>
pub 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.
pub fn into_inner(self) -> (A, RecordEntry)
pub fn into_inner(self) -> (A, RecordEntry)
Break this record into its components
pub fn signed_action(&self) -> &A
pub fn signed_action(&self) -> &A
The inner signed-action
Trait Implementations
impl<'arbitrary, A> Arbitrary<'arbitrary> for Record<A>where
A: Arbitrary<'arbitrary>,
impl<'arbitrary, A> Arbitrary<'arbitrary> for Record<A>where
A: Arbitrary<'arbitrary>,
fn 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 morefn 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 moreimpl<'de, A> Deserialize<'de> for Record<A>where
A: Deserialize<'de>,
impl<'de, A> Deserialize<'de> for Record<A>where
A: Deserialize<'de>,
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>,
impl<A> PartialEq<Record<A>> for Record<A>where
A: PartialEq<A>,
impl<A> PartialEq<Record<A>> for Record<A>where
A: PartialEq<A>,
impl<A> Serialize for Record<A>where
A: Serialize,
impl<A> Serialize for Record<A>where
A: Serialize,
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,
impl TryFrom<&Record<SignedHashed<Action>>> for SerializedBytes
impl TryFrom<&Record<SignedHashed<Action>>> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
fn try_from(
t: &Record<SignedHashed<Action>>
) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(
t: &Record<SignedHashed<Action>>
) -> Result<SerializedBytes, SerializedBytesError>
impl TryFrom<Record<SignedHashed<Action>>> for CreateLink<RateWeight>
impl TryFrom<Record<SignedHashed<Action>>> for CreateLink<RateWeight>
type Error = WrongActionError
type Error = WrongActionError
fn 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>
impl TryFrom<Record<SignedHashed<Action>>> for DeleteLink
impl TryFrom<Record<SignedHashed<Action>>> for DeleteLink
type Error = WrongActionError
type Error = WrongActionError
fn 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>
impl TryFrom<Record<SignedHashed<Action>>> for SerializedBytes
impl TryFrom<Record<SignedHashed<Action>>> for SerializedBytes
type Error = SerializedBytesError
type Error = SerializedBytesError
fn try_from(
t: Record<SignedHashed<Action>>
) -> Result<SerializedBytes, SerializedBytesError>
fn try_from(
t: Record<SignedHashed<Action>>
) -> Result<SerializedBytes, SerializedBytesError>
impl TryFrom<SerializedBytes> for Record<SignedHashed<Action>>
impl TryFrom<SerializedBytes> for Record<SignedHashed<Action>>
type Error = SerializedBytesError
type Error = SerializedBytesError
fn 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> Any for Twhere
T: Any + ?Sized,
impl<T> Any for Twhere
T: Any + ?Sized,
fn type_id_compat(&self) -> TypeId
fn type_id_compat(&self) -> TypeId
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>
impl<T> FutureExt for T
impl<T> FutureExt for T
fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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>
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>
sourceimpl<S> ParseFormatted for Swhere
S: AsRef<str>,
impl<S> ParseFormatted for Swhere
S: AsRef<str>,
sourcefn parse_formatted<F, N>(&self, format: &F) -> Result<N, Error>where
F: Format,
N: FromFormattedStr,
fn parse_formatted<F, N>(&self, format: &F) -> Result<N, Error>where
F: Format,
N: FromFormattedStr,
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.