pub struct BytePair;Expand description
UOR ADR-026 G17 partition-product shape (binary form).
Trait Implementations§
Source§impl ConstrainedTypeShape for BytePair
impl ConstrainedTypeShape for BytePair
Source§const IRI: &'static str = "urn:uor:product:W8Byte:W8Byte"
const IRI: &'static str = "urn:uor:product:W8Byte:W8Byte"
IRI of the ontology
type:ConstrainedType instance this shape represents.Source§const SITE_BUDGET: usize
const SITE_BUDGET: usize
Ontology-level
siteBudget: count of data sites only,
excluding bookkeeping introduced by composition (coproduct tag
sites, etc.). Equals SITE_COUNT for leaf shapes and for
shapes whose composition introduces no bookkeeping (products,
cartesian products). Strictly less than SITE_COUNT for coproduct
shapes and any shape whose SITE_COUNT includes inherited
bookkeeping. Introduced by the Product/Coproduct Completion
Amendment §4a; defaults to SITE_COUNT so pre-amendment
shape impls remain valid without edits.Source§const SITE_COUNT: usize
const SITE_COUNT: usize
Number of sites (fields) this constrained type carries.
Source§const CONSTRAINTS: &'static [ConstraintRef]
const CONSTRAINTS: &'static [ConstraintRef]
Per-site constraint list. Empty means unconstrained.
Source§const CYCLE_SIZE: u64
const CYCLE_SIZE: u64
ADR-032: cardinality of the shape’s value-set (the cycle
structure of the shape under the substrate’s discrete-clock
model). Used by the
prism_model! macro to lower first_admit
(closure-body grammar G16) to the correct descent measure.
Conventions: Read moreSource§impl<'a> IntoBindingValue<'a> for BytePair
impl<'a> IntoBindingValue<'a> for BytePair
Source§fn as_binding_value<const INLINE_BYTES: usize>(
&self,
) -> TermValue<'a, INLINE_BYTES>
fn as_binding_value<const INLINE_BYTES: usize>( &self, ) -> TermValue<'a, INLINE_BYTES>
Return this input value’s canonical content-addressable bytes as a
source-polymorphic
crate::pipeline::TermValue carrier (ADR-060).
Inline for values within the derived inline width, Borrowed for
larger in-memory values (zero-copy), or Stream for unbounded
sources. The carrier borrows the input’s 'a-lived data; for an
Inline-only input it owns its bytes and is valid for any 'a.Source§impl PartitionProductFactor<0> for BytePair
impl PartitionProductFactor<0> for BytePair
Source§impl PartitionProductFactor<1> for BytePair
impl PartitionProductFactor<1> for BytePair
Source§impl PartitionProductFields for BytePair
impl PartitionProductFields for BytePair
Source§const FIELDS: &'static [(u32, u32)]
const FIELDS: &'static [(u32, u32)]
Per-factor
(byte_offset, byte_length) pairs in declaration
order. Length is the same as FIELD_NAMES.len().Source§const FIELD_NAMES: &'static [&'static str]
const FIELD_NAMES: &'static [&'static str]
Per-factor names. Empty string
"" for positional-only
partition_product!(Name, A, B) emissions; non-empty for
named-field partition_product!(Name, lhs: A, rhs: B) form.
Length matches FIELDS.len().Source§fn field_index_by_name(name: &str) -> usize
fn field_index_by_name(name: &str) -> usize
Linear search returning the field index whose
FIELD_NAMES
entry equals name, or usize::MAX if not found. Delegates
to the free const fn field_index_by_name_in so the
result is usable inside const-eval contexts on stable Rust
1.83 (where const trait methods are unavailable).impl GroundedShape for BytePair
Auto Trait Implementations§
impl Freeze for BytePair
impl RefUnwindSafe for BytePair
impl Send for BytePair
impl Sync for BytePair
impl Unpin for BytePair
impl UnsafeUnpin for BytePair
impl UnwindSafe for BytePair
Blanket Implementations§
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