Struct chalk_recursive::fixed_point::stack::Stack
source · pub(super) struct Stack {
entries: Vec<StackEntry>,
overflow_depth: usize,
}
Fields§
§entries: Vec<StackEntry>
§overflow_depth: usize
Implementations§
source§impl Stack
impl Stack
pub(super) fn new(overflow_depth: usize) -> Self
pub(super) fn is_empty(&self) -> bool
pub(super) fn push(&mut self, coinductive_goal: bool) -> StackDepth
pub(super) fn pop(&mut self, depth: StackDepth)
sourcepub(super) fn mixed_inductive_coinductive_cycle_from(
&self,
depth: StackDepth,
) -> bool
pub(super) fn mixed_inductive_coinductive_cycle_from( &self, depth: StackDepth, ) -> bool
True iff there exist at least one coinductive goal and one inductive goal each from the top of the stack down to (and including) the given depth.
Trait Implementations§
source§impl Index<StackDepth> for Stack
impl Index<StackDepth> for Stack
§type Output = StackEntry
type Output = StackEntry
The returned type after indexing.
source§fn index(&self, depth: StackDepth) -> &StackEntry
fn index(&self, depth: StackDepth) -> &StackEntry
Performs the indexing (
container[index]
) operation. Read moresource§impl IndexMut<StackDepth> for Stack
impl IndexMut<StackDepth> for Stack
source§fn index_mut(&mut self, depth: StackDepth) -> &mut StackEntry
fn index_mut(&mut self, depth: StackDepth) -> &mut StackEntry
Performs the mutable indexing (
container[index]
) operation. Read moreAuto Trait Implementations§
impl Freeze for Stack
impl RefUnwindSafe for Stack
impl Send for Stack
impl Sync for Stack
impl Unpin for Stack
impl UnwindSafe for Stack
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