com.rychlik.calculator
|
Nested Class Summary | |
class |
StackMachine.Abs
Describe class Abs here. |
class |
StackMachine.Add
Describe class Add here. |
class |
StackMachine.And
Describe class And here. |
class |
StackMachine.Asin
Describe class Asin here. |
class |
StackMachine.Assign
Assign the top value on stack to a variable. |
class |
StackMachine.Atan
Describe class Atan here. |
class |
StackMachine.BinaryMathFunction
Describe class BinaryMathFunction here. |
class |
StackMachine.Branch
Describe class Branch here. |
class |
StackMachine.Call
Describe class Call here. |
class |
StackMachine.Constant
Describe class Constant here. |
class |
StackMachine.Cos
Describe class Cos here. |
class |
StackMachine.Div
Describe class Div here. |
class |
StackMachine.DumpStack
Output the current contents of the stack. |
class |
StackMachine.Eq
Describe class Eq here. |
class |
StackMachine.Exp
Describe class Exp here. |
class |
StackMachine.Function
Describe class Function here. |
class |
StackMachine.Ge
Describe class Ge here. |
class |
StackMachine.GoTo
Goto |
class |
StackMachine.Gt
Describe class Gt here. |
class |
StackMachine.If
Describe class If here. |
static interface |
StackMachine.Instruction
Describe interface Instruction here. |
class |
StackMachine.Le
Describe class Le here. |
class |
StackMachine.Ln
Describe class Ln here. |
class |
StackMachine.Lt
Describe class Lt here. |
class |
StackMachine.MathFunction
Describe class MathFunction here. |
class |
StackMachine.Max
Describe class Max here. |
class |
StackMachine.Min
Describe class Min here. |
class |
StackMachine.Mul
Describe class Mul here. |
class |
StackMachine.Ne
Describe class Ne here. |
class |
StackMachine.Negate
Describe class Negate here. |
class |
StackMachine.Or
Describe class Or here. |
class |
StackMachine.Pop
Describe class Pop here. |
class |
StackMachine.PopPrint
Print the top of the stack. |
class |
StackMachine.Pow
Describe class Pow here. |
class |
StackMachine.Print
Print the top of the stack. |
class |
StackMachine.PushAddress
Push address on stack. |
class |
StackMachine.PushConstant
Push constant on stack. |
class |
StackMachine.PushVariable
Push value of a variable on stack. |
class |
StackMachine.Return
Return from a function |
class |
StackMachine.Sgn
Describe class Sgn here. |
class |
StackMachine.Sin
Describe class Sin here. |
class |
StackMachine.Sqrt
Describe class Sqrt here. |
class |
StackMachine.Step
Describe class Step here. |
class |
StackMachine.Stop
Describe class Stop here. |
class |
StackMachine.Sub
Describe class Sub here. |
class |
StackMachine.SymbolTableEntry
Describe class SymbolTableEntry here. |
class |
StackMachine.Tan
Describe class Tan here. |
class |
StackMachine.TernaryMathFunction
Describe class TernaryMathFunction here. |
class |
StackMachine.UnaryMathFunction
Describe class UnaryMathFunction here. |
class |
StackMachine.Variable
Describe class Variable here. |
Constructor Summary | |
StackMachine()
Creates a new StackMachine instance. |
Method Summary | |
int |
allocateVariable()
Add a new uninitialized variable. |
int |
allocateVariable(double value)
Add a new initialized variable. |
void |
assign(int address,
double value)
Assign value to a variable. |
void |
clear()
Describe clear method here. |
void |
clearData()
Describe clearData method here. |
void |
clearGlobalSymbolTable()
Describe clearGlobalSymbolTable method here. |
void |
clearLocalSymbolTable()
Describe clearLocalSymbolTable method here. |
void |
clearProgram()
Describe clearProgram method here. |
void |
clearProgram(int beg)
Describe clearProgram method here. |
void |
clearReturnStack()
Describe clearReturnStack method here. |
void |
clearStack()
Describe clearStack method here. |
void |
createConstant(java.lang.String id,
double value)
Create a new constant and place it in the global symbol table. |
void |
createFunction(java.lang.String id,
int progbase,
int argbase,
int nargs)
Describe createFunction method here. |
StackMachine.Variable |
createVariable(java.lang.String id)
Create a new global variable. |
StackMachine.Variable |
createVariable(java.lang.String id,
double value)
Create a new global variable. |
void |
dumpStack()
Describe dumpStack method here. |
void |
enterLocalScope()
Describe enterLocalScope method here. |
void |
execute()
Execute the entire code of the program. |
void |
execute(int progbase)
Execute code of the program, starting at a given program counter. |
void |
exitLocalScope()
Describe exitLocalScope method here. |
double |
getData(int address)
Describe getData method here. |
int |
getProgramBase()
Describe getProgramBase method here. |
void |
globalScope()
Describe globalScope method here. |
void |
initMathConstants()
Describe initMathConstants method here. |
boolean |
isConstant(java.lang.String id)
Describe isConstant method here. |
StackMachine.SymbolTableEntry |
lookup(java.lang.String name)
Lookup symbol in a symbol table. |
java.lang.Object |
peek()
Describe peek method here. |
double |
peekDouble()
Describe peekDouble method here. |
int |
peekInt()
Describe peekInt method here. |
java.lang.Object |
pop()
Describe pop method here. |
double |
popDouble()
Describe popDouble method here. |
int |
popInt()
Describe popInt method here. |
int |
popReturn()
Describe popReturn method here. |
void |
pushDouble(double x)
Describe pushDouble method here. |
void |
pushInstruction(StackMachine.Instruction i)
Add an instruction at the end of the program |
void |
pushInstruction(StackMachine.Instruction i,
java.lang.String name,
int nargs)
Push instruction with arity check |
void |
pushInt(int x)
Describe pushInt method here. |
void |
pushReturn(int location)
Describe pushReturn method here. |
java.lang.Object |
removeSymbol(java.lang.String id)
Remove a symbol from the current scope. |
void |
renameSymbol(java.lang.String old,
java.lang.String id)
Rename a global symbol. |
boolean |
scopeIsLocal()
Describe scopeIsLocal method here. |
void |
setInstructionAt(StackMachine.Instruction i,
int location)
Sets an instruction at a given location in the program |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
public StackMachine()
StackMachine
instance.
Method Detail |
public final int getProgramBase()
getProgramBase
method here.
public final boolean scopeIsLocal()
scopeIsLocal
method here.
boolean
valuepublic final void enterLocalScope() throws ParseException
enterLocalScope
method here.
ParseException
- if an error occurspublic final void exitLocalScope() throws ParseException
exitLocalScope
method here.
ParseException
- if an error occurspublic final void globalScope()
globalScope
method here.
public final void initMathConstants()
initMathConstants
method here.
public final void clearProgram()
clearProgram
method here.
public final void clearProgram(int beg)
clearProgram
method here.
beg
- an int
valuepublic final void clearStack()
clearStack
method here.
public final void clearReturnStack()
clearReturnStack
method here.
public final void clearGlobalSymbolTable()
clearGlobalSymbolTable
method here.
public final void clearLocalSymbolTable()
clearLocalSymbolTable
method here.
public final void clear()
clear
method here.
public final void dumpStack()
dumpStack
method here.
public final boolean isConstant(java.lang.String id)
isConstant
method here.
id
- a String
value
boolean
valuepublic final void renameSymbol(java.lang.String old, java.lang.String id) throws ParseException
old
- Old symbol name.id
- New symbol name.
ParseException
- if an error occurspublic final StackMachine.Variable createVariable(java.lang.String id)
id
- The name of the variable
Variable
valuepublic final StackMachine.Variable createVariable(java.lang.String id, double value)
id
- The name of the variablevalue
- a double
value
Variable
valuepublic final java.lang.Object removeSymbol(java.lang.String id)
id
- The name of the symbol.
public final void createConstant(java.lang.String id, double value)
id
- The name of the constant.value
- The value of the constant.public final void createFunction(java.lang.String id, int progbase, int argbase, int nargs)
createFunction
method here.
id
- a String
valueprogbase
- an int
valueargbase
- an int
valuenargs
- an int
valuepublic StackMachine.SymbolTableEntry lookup(java.lang.String name)
name
- Name of symbol to be looked up
public final double getData(int address) throws ParseException
getData
method here.
address
- an int
value
double
value
ParseException
- if an error occurspublic final void pushInstruction(StackMachine.Instruction i)
i
- The instructionpublic final void setInstructionAt(StackMachine.Instruction i, int location)
i
- The instructionlocation
- an int
valuepublic final int allocateVariable()
public final void clearData()
clearData
method here.
public final int allocateVariable(double value)
value
- a double
value
public final void assign(int address, double value) throws ParseException
address
- The address of the variable.value
- The value to be assigned.
ParseException
- if an error occurspublic final void pushInstruction(StackMachine.Instruction i, java.lang.String name, int nargs) throws ParseException
i
- The instruction.name
- The name of the function to be reported if arity and the number
of arguments don't matchnargs
- The number of arguments.
ParseException
- if an error occurspublic final java.lang.Object pop() throws ParseException
pop
method here.
Object
value
ParseException
- if an error occurspublic final int popReturn() throws ParseException
popReturn
method here.
int
value
ParseException
- if an error occurspublic final void pushReturn(int location)
pushReturn
method here.
location
- an int
valuepublic final java.lang.Object peek() throws ParseException
peek
method here.
Object
value
ParseException
- if an error occurspublic final int popInt() throws ParseException
popInt
method here.
int
value
ParseException
- if an error occurspublic final int peekInt() throws ParseException
peekInt
method here.
int
value
ParseException
- if an error occurspublic final double peekDouble() throws ParseException
peekDouble
method here.
double
value
ParseException
- if an error occurspublic final double popDouble() throws ParseException
popDouble
method here.
double
value
ParseException
- if an error occurspublic final void pushInt(int x)
pushInt
method here.
x
- an int
valuepublic final void pushDouble(double x)
pushDouble
method here.
x
- a double
valuepublic final void execute(int progbase) throws ParseException
progbase
- an int
value
ParseException
- if an error occurspublic final void execute() throws ParseException
ParseException
- if an error occurs
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
This page last modified Sun Sep 12 12:29:59 2004
Questions? Comments? Please send feedback to jason howald