Struct chalk_engine::stack::StackIndex
source · [−]pub(crate) struct StackIndex {
value: usize,
}
Expand description
The StackIndex identifies the position of a table’s goal in the stack of goals that are actively being processed. Note that once a table is completely evaluated, it may be popped from the stack, and hence no longer have a stack index.
Fields
value: usize
Implementations
sourceimpl StackIndex
impl StackIndex
pub(crate) fn get_and_increment(&mut self) -> Self
pub(crate) fn increment(&mut self)
pub fn iterate_range(range: Range<Self>) -> impl Iterator<Item = StackIndex>
Trait Implementations
sourceimpl Clone for StackIndex
impl Clone for StackIndex
sourcefn clone(&self) -> StackIndex
fn clone(&self) -> StackIndex
Returns a copy of the value. Read more
1.0.0 · sourcefn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
sourceimpl Debug for StackIndex
impl Debug for StackIndex
sourceimpl Hash for StackIndex
impl Hash for StackIndex
sourceimpl<I: Interner> Index<StackIndex> for Stack<I>
impl<I: Interner> Index<StackIndex> for Stack<I>
type Output = StackEntry<I>
type Output = StackEntry<I>
The returned type after indexing.
sourcefn index(&self, index: StackIndex) -> &StackEntry<I>
fn index(&self, index: StackIndex) -> &StackEntry<I>
Performs the indexing (container[index]
) operation. Read more
sourceimpl<I: Interner> IndexMut<StackIndex> for Stack<I>
impl<I: Interner> IndexMut<StackIndex> for Stack<I>
sourcefn index_mut(&mut self, index: StackIndex) -> &mut StackEntry<I>
fn index_mut(&mut self, index: StackIndex) -> &mut StackEntry<I>
Performs the mutable indexing (container[index]
) operation. Read more
sourceimpl Ord for StackIndex
impl Ord for StackIndex
sourceimpl PartialEq<StackIndex> for StackIndex
impl PartialEq<StackIndex> for StackIndex
sourcefn eq(&self, other: &StackIndex) -> bool
fn eq(&self, other: &StackIndex) -> bool
This method tests for self
and other
values to be equal, and is used
by ==
. Read more
sourcefn ne(&self, other: &StackIndex) -> bool
fn ne(&self, other: &StackIndex) -> bool
This method tests for !=
.
sourceimpl PartialOrd<StackIndex> for StackIndex
impl PartialOrd<StackIndex> for StackIndex
sourcefn partial_cmp(&self, other: &StackIndex) -> Option<Ordering>
fn partial_cmp(&self, other: &StackIndex) -> Option<Ordering>
This method returns an ordering between self
and other
values if one exists. Read more
1.0.0 · sourcefn lt(&self, other: &Rhs) -> bool
fn lt(&self, other: &Rhs) -> bool
This method tests less than (for self
and other
) and is used by the <
operator. Read more
1.0.0 · sourcefn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
This method tests less than or equal to (for self
and other
) and is used by the <=
operator. Read more
impl Copy for StackIndex
impl Eq for StackIndex
impl StructuralEq for StackIndex
impl StructuralPartialEq for StackIndex
Auto Trait Implementations
impl RefUnwindSafe for StackIndex
impl Send for StackIndex
impl Sync for StackIndex
impl Unpin for StackIndex
impl UnwindSafe for StackIndex
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcepub fn borrow_mut(&mut self) -> &mut T
pub fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Cast for T
impl<T> Cast for T
sourcefn cast<U>(self, interner: <U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
fn cast<U>(self, interner: <U as HasInterner>::Interner) -> U where
Self: CastTo<U>,
U: HasInterner,
Cast a value to type U
using CastTo
.
sourceimpl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
impl<Q, K> Equivalent<K> for Q where
Q: Eq + ?Sized,
K: Borrow<Q> + ?Sized,
sourcepub fn equivalent(&self, key: &K) -> bool
pub fn equivalent(&self, key: &K) -> bool
Compare self to key
and return true
if they are equal.
sourceimpl<T> Instrument for T
impl<T> Instrument for T
sourcefn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
sourcefn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcepub fn to_owned(&self) -> T
pub fn to_owned(&self) -> T
Creates owned data from borrowed data, usually by cloning. Read more
sourcepub fn clone_into(&self, target: &mut T)
pub fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more
sourceimpl<T> WithSubscriber for T
impl<T> WithSubscriber for T
sourcefn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
Attaches the provided Subscriber
to this type, returning a
WithDispatch
wrapper. Read more
sourcefn with_current_subscriber(self) -> WithDispatch<Self>
fn with_current_subscriber(self) -> WithDispatch<Self>
Attaches the current default Subscriber
to this type, returning a
WithDispatch
wrapper. Read more