Skip to main content

RunId

Struct RunId 

Source
pub struct RunId(/* private fields */);
Expand description

Identifies a single run.

Backed by a version 4 (random) UUID. Serializes as its UUID string, so a recorded run identity reads the same in the event log as it does anywhere else the UUID appears.

§Purity

RunId::new draws randomness to mint a fresh UUID, so it is an explicit constructor the caller invokes on purpose, and it sits behind the default-on rng feature. Nothing else in this crate draws randomness; the event types never generate identity on their own. A build with --no-default-features (the wasm32 build) drops new entirely, which is how the crate proves it contains no randomness source.

Implementations§

Source§

impl RunId

Source

pub fn new() -> RunId

Mints a fresh, random run identifier.

This draws from the system random source, so treat it as a deliberate side effect at the edge of the runtime, never something the pure event or replay paths reach for. It lives behind the rng feature because the underlying getrandom source does not build for wasm32-unknown-unknown.

Source§

impl RunId

Source

pub const fn from_uuid(uuid: Uuid) -> RunId

Wraps an existing UUID as a run identifier.

Use this to reconstruct a RunId read back from storage, where the UUID already exists and must not be regenerated.

Source

pub const fn as_uuid(&self) -> Uuid

Returns the underlying UUID.

Trait Implementations§

Source§

impl Clone for RunId

Source§

fn clone(&self) -> RunId

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 Copy for RunId

Source§

impl Debug for RunId

Source§

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

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

impl<'de> Deserialize<'de> for RunId

Source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<RunId, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
Source§

impl Eq for RunId

Source§

impl Hash for RunId

Source§

fn hash<__H>(&self, state: &mut __H)
where __H: Hasher,

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for RunId

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl Serialize for RunId

Source§

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

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

impl StructuralPartialEq for RunId

Auto Trait Implementations§

§

impl Freeze for RunId

§

impl RefUnwindSafe for RunId

§

impl Send for RunId

§

impl Sync for RunId

§

impl Unpin for RunId

§

impl UnsafeUnpin for RunId

§

impl UnwindSafe for RunId

Blanket Implementations§

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> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

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> 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.