Struct DisplayId
pub struct DisplayId(/* private fields */);Expand description
Index into crate::model::ParseTable::display_names; a Tree’s
data label (a rule’s origin, or alias when present). Shares no space
with RuleId/NontermId — display names are their own dense id
space in loader-preserved order.
Implementations§
§impl DisplayId
impl DisplayId
pub const AMBIG: DisplayId
pub const AMBIG: DisplayId
Earley ambiguity='explicit' tree-data sentinels: _ambig
/ _iambig / _inter Trees whose data names are not rule origins, so
they have no slot in display_names. Interned at the top of the u32
range — every real display id is bounded far below it (the lexer’s
position ceiling), so these can never collide with one. Resolve names
via crate::model::ParseTable::data_name, never by indexing
display_names directly.
pub const IAMBIG: DisplayId
pub const INTER: DisplayId
Trait Implementations§
impl Copy for DisplayId
impl Eq for DisplayId
§impl Ord for DisplayId
impl Ord for DisplayId
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the minimum of two values. Read more
§impl PartialOrd for DisplayId
impl PartialOrd for DisplayId
impl StructuralPartialEq for DisplayId
Auto Trait Implementations§
impl Freeze for DisplayId
impl RefUnwindSafe for DisplayId
impl Send for DisplayId
impl Sync for DisplayId
impl Unpin for DisplayId
impl UnsafeUnpin for DisplayId
impl UnwindSafe for DisplayId
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<K, V> TiSliceIndex<K, V> for K
impl<K, V> TiSliceIndex<K, V> for K
§fn get(
self,
slice: &TiSlice<K, V>,
) -> Option<&<K as TiSliceIndex<K, V>>::Output>
fn get( self, slice: &TiSlice<K, V>, ) -> Option<&<K as TiSliceIndex<K, V>>::Output>
Returns a shared reference to the output at this location, if in
bounds.
§fn get_mut(
self,
slice: &mut TiSlice<K, V>,
) -> Option<&mut <K as TiSliceIndex<K, V>>::Output>
fn get_mut( self, slice: &mut TiSlice<K, V>, ) -> Option<&mut <K as TiSliceIndex<K, V>>::Output>
Returns a mutable reference to the output at this location, if in
bounds.
§unsafe fn get_unchecked(
self,
slice: &TiSlice<K, V>,
) -> &<K as TiSliceIndex<K, V>>::Output
unsafe fn get_unchecked( self, slice: &TiSlice<K, V>, ) -> &<K as TiSliceIndex<K, V>>::Output
Returns a shared reference to the output at this location, without
performing any bounds checking. Read more
§unsafe fn get_unchecked_mut(
self,
slice: &mut TiSlice<K, V>,
) -> &mut <K as TiSliceIndex<K, V>>::Output
unsafe fn get_unchecked_mut( self, slice: &mut TiSlice<K, V>, ) -> &mut <K as TiSliceIndex<K, V>>::Output
Returns a mutable reference to the output at this location, without
performing any bounds checking. Read more