Struct holochain::prelude::prelude::dependencies::holochain_integrity_types::prelude::record::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 more§fn 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 more§impl<'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> 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
§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> ⓘ
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> 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<S> ParseFormatted for Swhere
S: AsRef<str>,
impl<S> ParseFormatted for Swhere
S: AsRef<str>,
source§fn 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,
self
(typically a formatted string) into a number (see Examples above).§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 more§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).§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.