pub struct SubmitActivity {
pub schema_version: u16,
pub record: ActivityRecord,
pub idempotency_key: Option<[u8; 16]>,
}Expand description
Submit an Activity to the runtime. Brand-less wire format — the branded
Activity<'s> is unwrapped at submit-site via SubmitActivity::from_branded.
Fields§
§schema_version: u16Wire-level schema version tag.
record: ActivityRecordRecord payload.
idempotency_key: Option<[u8; 16]>Opt-in idempotency key. None = non-idempotent.
Implementations§
Source§impl SubmitActivity
impl SubmitActivity
Sourcepub fn from_branded(a: Activity<'_>) -> Self
pub fn from_branded(a: Activity<'_>) -> Self
Convert a branded Activity<'s> to a brand-less submit payload.
Sourcepub fn with_idempotency_key(self, key: [u8; 16]) -> Self
pub fn with_idempotency_key(self, key: [u8; 16]) -> Self
Attach an idempotency key.
Trait Implementations§
Source§impl ActionCompute for SubmitActivity
impl ActionCompute for SubmitActivity
Source§impl ActionCompute for SubmitActivity
impl ActionCompute for SubmitActivity
Source§fn compute<'i>(&self, ctx: &mut ActionContext<'i>) -> Result<(), ActionError>
fn compute<'i>(&self, ctx: &mut ActionContext<'i>) -> Result<(), ActionError>
Run the compute body. Emit events via
ctx.emit_event, derive new
ids via ctx.next_id, and return Err(ActionError::...) to reject.Source§impl ActionDeriv for SubmitActivity
impl ActionDeriv for SubmitActivity
Source§impl ArkheAction for SubmitActivity
impl ArkheAction for SubmitActivity
Source§const SCHEMA_VERSION: u16 = 1u16
const SCHEMA_VERSION: u16 = 1u16
Monotone schema version — bump rules identical to
ArkheComponent.Source§const IDEMPOTENT: bool = true
const IDEMPOTENT: bool = true
Opt-in idempotency flag.
true iff the deriving struct carries an
idempotency_key: Option<[u8; 16]> field (validated at derive time).
false by default — non-idempotent Actions are still legal.Source§impl Clone for SubmitActivity
impl Clone for SubmitActivity
Source§fn clone(&self) -> SubmitActivity
fn clone(&self) -> SubmitActivity
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for SubmitActivity
impl Debug for SubmitActivity
Source§impl<'de> Deserialize<'de> for SubmitActivity
impl<'de> Deserialize<'de> for SubmitActivity
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl PartialEq for SubmitActivity
impl PartialEq for SubmitActivity
Source§fn eq(&self, other: &SubmitActivity) -> bool
fn eq(&self, other: &SubmitActivity) -> bool
Tests for
self and other values to be equal, and is used by ==.Source§impl Serialize for SubmitActivity
impl Serialize for SubmitActivity
impl Eq for SubmitActivity
impl Sealed for SubmitActivity
impl StructuralPartialEq for SubmitActivity
Auto Trait Implementations§
impl !Freeze for SubmitActivity
impl RefUnwindSafe for SubmitActivity
impl Send for SubmitActivity
impl Sync for SubmitActivity
impl Unpin for SubmitActivity
impl UnsafeUnpin for SubmitActivity
impl UnwindSafe for SubmitActivity
Blanket Implementations§
Source§impl<T> Action for Twhere
T: ActionDeriv + ActionCompute,
impl<T> Action for Twhere
T: ActionDeriv + ActionCompute,
Source§fn canonical_bytes(&self) -> Vec<u8> ⓘwhere
Self: Sized,
fn canonical_bytes(&self) -> Vec<u8> ⓘwhere
Self: Sized,
Postcard-canonical byte encoding. See
Component::canonical_bytes for the contract; identical
shape applies here.Source§fn from_bytes(version: u32, bytes: &[u8]) -> Result<Box<Self>, DeserializeError>where
Self: Sized,
fn from_bytes(version: u32, bytes: &[u8]) -> Result<Box<Self>, DeserializeError>where
Self: Sized,
Inverse of
canonical_bytes.
SchemaVersionMismatch on unequal version.Source§fn approx_size(&self) -> usizewhere
Self: Sized,
fn approx_size(&self) -> usizewhere
Self: Sized,
Approximate byte size — defaults to encoded length.
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
Mutably borrows from an owned value. Read more