tau_cli_term_raw/renderer_delivery_id.rs
1//! Process-local identities for renderer deliveries.
2
3/// Identifies one socket delivery as it crosses the CLI renderer pipeline.
4///
5/// The identity is process-local and never serialized. Production code creates
6/// it only in the renderer allocator; its raw value is available solely for
7/// diagnostics and other primitive boundaries.
8#[repr(transparent)]
9#[derive(Clone, Copy, Debug, Eq, Hash, Ord, PartialEq, PartialOrd)]
10pub struct RendererDeliveryId(u64);
11
12impl RendererDeliveryId {
13 /// Creates one renderer delivery identity from the renderer allocator's
14 /// next raw value.
15 pub const fn new(value: u64) -> Self {
16 Self(value)
17 }
18
19 /// Returns the raw value for a primitive ABI or diagnostic boundary.
20 pub const fn get(self) -> u64 {
21 self.0
22 }
23}