public class DebuggingValueStack<V> extends DefaultValueStack<V>
DefaultValueStack.Element| Modifier and Type | Field and Description |
|---|---|
Sink<String> |
log |
head, tempValue| Constructor and Description |
|---|
DebuggingValueStack() |
DebuggingValueStack(Iterable<V> values) |
DebuggingValueStack(Iterable<V> values,
Sink<String> log) |
DebuggingValueStack(Sink<String> log) |
| Modifier and Type | Method and Description |
|---|---|
void |
clear()
Clears all values.
|
protected void |
log(String action) |
void |
poke(int down,
V value)
Replaces the element the given number of elements below the current top of the stack.
|
V |
pop(int down)
Removes the value the given number of elements below the top of the stack.
|
void |
push(int down,
V value)
Inserts the given value a given number of elements below the current top of the stack.
|
void |
push(V value)
Pushes the given value onto the stack.
|
void |
restoreSnapshot(Object snapshot)
Restores the stack state as previously returned by
ValueStack.takeSnapshot(). |
void |
swap()
Swaps the top two stack values.
|
void |
swap3()
Reverses the order of the top 3 stack values.
|
void |
swap4()
Reverses the order of the top 4 stack values.
|
void |
swap5()
Reverses the order of the top 5 stack values.
|
void |
swap6()
Reverses the order of the top 5 stack values.
|
dup, isEmpty, iterator, peek, peek, poke, pop, pushAll, pushAll, size, takeSnapshotclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitforEach, spliteratorpublic void clear()
ValueStackclear in interface ValueStack<V>clear in class DefaultValueStack<V>public void restoreSnapshot(Object snapshot)
ValueStackValueStack.takeSnapshot().
This cost of running this operation is negligible and independent from the size of the stack.restoreSnapshot in interface ValueStack<V>restoreSnapshot in class DefaultValueStack<V>snapshot - a snapshot object previously returned by ValueStack.takeSnapshot()public void push(V value)
ValueStackpush in interface ValueStack<V>push in class DefaultValueStack<V>value - the valuepublic void push(int down,
V value)
ValueStackpush in interface ValueStack<V>push in class DefaultValueStack<V>down - the number of elements to skip before inserting the value (0 being equivalent to push(value))value - the valuepublic V pop(int down)
ValueStackpop in interface ValueStack<V>pop in class DefaultValueStack<V>down - the number of elements to skip before removing the value (0 being equivalent to pop())public void poke(int down,
V value)
ValueStackpoke in interface ValueStack<V>poke in class DefaultValueStack<V>down - the number of elements to skip before replacing the value (0 being equivalent to poke(value))value - the value to replace withpublic void swap()
ValueStackswap in interface ValueStack<V>swap in class DefaultValueStack<V>public void swap3()
ValueStackswap3 in interface ValueStack<V>swap3 in class DefaultValueStack<V>public void swap4()
ValueStackswap4 in interface ValueStack<V>swap4 in class DefaultValueStack<V>public void swap5()
ValueStackswap5 in interface ValueStack<V>swap5 in class DefaultValueStack<V>public void swap6()
ValueStackswap6 in interface ValueStack<V>swap6 in class DefaultValueStack<V>protected void log(String action)
Copyright © 2019. All rights reserved.