Skip to main content

RegisterUser

Struct RegisterUser 

Source
pub struct RegisterUser {
    pub schema_version: u16,
    pub profile: UserProfile,
    pub credential: AuthCredential,
}
Expand description

Register a fresh User with the supplied profile and credential.

Fields§

§schema_version: u16

Wire-level schema version tag.

§profile: UserProfile

Profile Component contents.

§credential: AuthCredential

Initial credential.

Trait Implementations§

Source§

impl ActionCompute for RegisterUser

Source§

fn compute(&self, ctx: &ActionContext<'_>) -> Vec<Op>

Translate this action into a list of Ops the kernel will then authorize, dispatch, and apply. Must be pure — A11 SOCIAL-CONTRACT until the subset-Rust checker promotes it to MACHINE-CHECKED.
Source§

impl ActionCompute for RegisterUser

Source§

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 RegisterUser

Source§

const TYPE_CODE: TypeCode

Stable dispatch identifier. Set via #[arkhe(type_code = N, ...)].
Source§

const SCHEMA_VERSION: u32

Version tag for canonical bytes. Bumping invalidates older serialized bodies.
Source§

impl ArkheAction for RegisterUser

Source§

const TYPE_CODE: u32 = 65537u32

Runtime TypeCode registry pin.
Source§

const SCHEMA_VERSION: u16 = 1u16

Monotone schema version — bump rules identical to ArkheComponent.
Source§

const BAND: Band = 1u8

Determinism band — 1 (Core) / 2 (Projection) / 3 (Protocol).
Source§

const IDEMPOTENT: bool = false

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§

fn type_code() -> TypeCode

Convenience TypeCode accessor.
Source§

impl Clone for RegisterUser

Source§

fn clone(&self) -> RegisterUser

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for RegisterUser

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl<'de> Deserialize<'de> for RegisterUser

Source§

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 RegisterUser

Source§

fn eq(&self, other: &RegisterUser) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Serialize for RegisterUser

Source§

fn serialize<__S>(&self, __serializer: __S) -> Result<__S::Ok, __S::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
Source§

impl Eq for RegisterUser

Source§

impl Sealed for RegisterUser

Source§

impl StructuralPartialEq for RegisterUser

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Action for T

Source§

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,

Inverse of canonical_bytes. SchemaVersionMismatch on unequal version.
Source§

fn approx_size(&self) -> usize
where Self: Sized,

Approximate byte size — defaults to encoded length.
Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,