pub struct LocalVarId(pub u32);Expand description
Identifies one local-variable slot (16.10’s assertion-variable
declarations and local formal arguments, 16.11’s match-item writes) in a
thread’s per-thread local variable frame. The frame is one slot per id,
0..Automaton::local_vars.len(), each either unassigned or holding a
value of the slot’s LocalVarDecl type; a thread that forks (an or
branch, a delay window’s several end ticks) takes its own COPY of the frame,
which is what gives every match thread its own latest assignments (16.10
rule (c)). T13 defines the slots and the edges that read/write/copy them;
the runtime heap handle that stores a live frame is the engine’s (T29), so
here a slot is only the name a Transition::LocalVarWrite/
Transition::LocalVarCopy and a compiled leaf’s read refer to.
Tuple Fields§
§0: u32Trait Implementations§
Source§impl Clone for LocalVarId
impl Clone for LocalVarId
impl Copy for LocalVarId
Source§impl Debug for LocalVarId
impl Debug for LocalVarId
impl Eq for LocalVarId
Source§impl Hash for LocalVarId
impl Hash for LocalVarId
Source§impl Ord for LocalVarId
impl Ord for LocalVarId
1.21.0 (const: unstable) · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
1.21.0 (const: unstable) · Source§fn min(self, other: Self) -> Selfwhere
Self: Sized,
fn min(self, other: Self) -> Selfwhere
Self: Sized,
Source§impl PartialEq for LocalVarId
impl PartialEq for LocalVarId
Source§impl PartialOrd for LocalVarId
impl PartialOrd for LocalVarId
impl StructuralPartialEq for LocalVarId
Auto Trait Implementations§
impl Freeze for LocalVarId
impl RefUnwindSafe for LocalVarId
impl Send for LocalVarId
impl Sync for LocalVarId
impl Unpin for LocalVarId
impl UnsafeUnpin for LocalVarId
impl UnwindSafe for LocalVarId
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Comparable<K> for Q
impl<Q, K> Comparable<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.