Mozilla/mozilla/js/js2/java/JSStack.java
rogerl%netscape.com 16d4f681d8 Oops.
git-svn-id: svn://10.0.0.236/trunk@29409 18797224-902f-48f8-a5cc-f745e15eee43
1999-04-27 06:28:04 +00:00

39 lines
690 B
Java

import java.util.Stack;
class JSStack {
Stack stack = new Stack();
int frameTop;
void newFrame(StackValue returnAddress)
{
stack.push(returnAddress);
stack.push(new StackValue(frameTop));
frameTop = stack.size();
}
StackValue popFrame()
{
stack.setSize(frameTop);
StackValue oldFrame = (StackValue)(stack.pop());
frameTop = oldFrame.i;
return (StackValue)stack.pop();
}
void push(StackValue v)
{
stack.push(v);
}
boolean isEmpty()
{
return stack.isEmpty();
}
StackValue pop()
{
return (StackValue)stack.pop();
}
}