A B C D E F G H I L M N O P Q R S T U V W Y _

A

AND - Static variable in class coursesolutions.courseparser.sym
 
ASS_ADD - Static variable in class coursesolutions.courseparser.sym
 
ASTERICK - Static variable in class coursesolutions.courseparser.sym
 
ASTNodeIsh - interface hw4.ASTNodeIsh.
 
AbstractNode - class hw3.AbstractNode.
All AST nodes are subclasses of this node.
AbstractNode() - Constructor for class hw3.AbstractNode
 
AndIsh - interface hw4.AndIsh.
The and operator (&)
ArgIsh - interface hw4.ArgIsh.
 
AssignIsh - interface hw4.AssignIsh.
An assignment node
AssignTypeRequiring - interface hw4.AssignTypeRequiring.
A node whose right-child type must agree with the left-child type, as with an assignment or a cast node
abandonChildren() - Method in class hw3.AbstractNode
 
accept(ReflectiveVisitor) - Method in class hw3.AbstractNode
Reflective visitor pattern
accept(ReflectiveVisitor) - Method in interface hw3.ReflectiveVisitable
 
action_obj - Variable in class coursesolutions.courseparser.CourseParser
Instance of action encapsulation class.
action_table() - Method in class coursesolutions.courseparser.CourseParser
Access to parse-action table.
adoptChildren(AbstractNode) - Method in class hw3.AbstractNode
Adopt the supplied node and all of its siblings under this node
assertParentOf(Type, Type) - Method in class coursesolutions.CourseHierarchy
Type a is the parent type of b
assertParentOf(Type, Type) - Method in interface hw4.HierarchyInterface
Type a is the parent type of b

B

BANG - Static variable in class coursesolutions.courseparser.sym
 
BOOLEAN - Static variable in class coursesolutions.courseparser.sym
 
BinaryComputeIsh - interface hw4.BinaryComputeIsh.
Represent a bnary arithmetic node: Could be one of add, sub, mul, div, rem
BlockIsh - interface hw4.BlockIsh.
This interface should be implemented by any AST node that represents a block {.....}.
BoolTypeProducing - interface hw4.BoolTypeProducing.
A node that yields a boolean result

C

CLASS - Static variable in class coursesolutions.courseparser.sym
 
COLON - Static variable in class coursesolutions.courseparser.sym
 
COMMA - Static variable in class coursesolutions.courseparser.sym
 
CUP$CourseParser$actions.DontPrintMe - interface coursesolutions.courseparser.CUP$CourseParser$actions.DontPrintMe.
 
CastNode - class hw4.CastNode.
A cast node
CastNode() - Constructor for class hw4.CastNode
 
ClassDeclaring - interface hw4.ClassDeclaring.
An interface for an AST node that declares a class Classes have modifiers, like public/private, but no type
ClassIsh - interface hw4.ClassIsh.
 
CodeGenVisitor - class CodeGenVisitor.
 
CodeGenVisitor() - Constructor for class CodeGenVisitor
 
CompareIsh - interface hw4.CompareIsh.
Represents all of the comparison operators.
ComputeIsh - interface hw4.ComputeIsh.
Represent an arithmetic node--generate code for its children then put out its operation.
ConstantBool - interface hw4.ConstantBool.
A constant boolean value
ConstantFloat - interface hw4.ConstantFloat.
A node that produces a constant integer value
ConstantInt - interface hw4.ConstantInt.
A node that produces a constant integer value
ConstantProducing - interface hw4.ConstantProducing.
A node that produces an ldc-type constant value
ConstantString - interface hw4.ConstantString.
A node that produces a constant String value
ConstructorType - class hw4.ConstructorType.
 
ConstructorType() - Constructor for class hw4.ConstructorType
 
CourseBuildSymtab - class coursesolutions.CourseBuildSymtab.
Class sponsored implementation of a symbol table.
CourseBuildSymtab() - Constructor for class coursesolutions.CourseBuildSymtab
 
CourseCodeGenVisitor - class coursesolutions.CourseCodeGenVisitor.
 
CourseCodeGenVisitor() - Constructor for class coursesolutions.CourseCodeGenVisitor
 
CourseHierarchy - class coursesolutions.CourseHierarchy.
 
CourseHierarchy() - Constructor for class coursesolutions.CourseHierarchy
 
CourseParser - class coursesolutions.courseparser.CourseParser.
CUP v0.11a beta 20060608 generated parser.
CourseParser() - Constructor for class coursesolutions.courseparser.CourseParser
Default constructor.
CourseParser(java_cup.runtime.Scanner) - Constructor for class coursesolutions.courseparser.CourseParser
Constructor which sets the default scanner.
CourseParser(java_cup.runtime.Scanner, java_cup.runtime.SymbolFactory) - Constructor for class coursesolutions.courseparser.CourseParser
Constructor which sets the default scanner.
CourseProjectCodeGenVisitor - class coursesolutions.CourseProjectCodeGenVisitor.
 
CourseProjectCodeGenVisitor() - Constructor for class coursesolutions.CourseProjectCodeGenVisitor
 
CourseProjectCodeGenVisitor.AssignTargVisitor - class coursesolutions.CourseProjectCodeGenVisitor.AssignTargVisitor.
 
CourseProjectCodeGenVisitor.AssignTargVisitor() - Constructor for class coursesolutions.CourseProjectCodeGenVisitor.AssignTargVisitor
 
CourseProjectCodeGenVisitor.RegisterAssignVisitor - class coursesolutions.CourseProjectCodeGenVisitor.RegisterAssignVisitor.
 
CourseProjectCodeGenVisitor.RegisterAssignVisitor(int) - Constructor for class coursesolutions.CourseProjectCodeGenVisitor.RegisterAssignVisitor
 
CourseProjectCodeGenVisitor.SigVisitor - class coursesolutions.CourseProjectCodeGenVisitor.SigVisitor.
 
CourseProjectCodeGenVisitor.SigVisitor() - Constructor for class coursesolutions.CourseProjectCodeGenVisitor.SigVisitor
 
CourseScanner - class coursesolutions.courseparser.CourseScanner.
This class is a scanner generated by JFlex 1.4.1 on 4/9/07 2:02 PM from the specification file jmm.jflex
CourseScanner(Reader) - Constructor for class coursesolutions.courseparser.CourseScanner
Creates a new scanner There is also a java.io.InputStream version of this constructor.
CourseScanner(InputStream) - Constructor for class coursesolutions.courseparser.CourseScanner
Creates a new scanner.
CourseSemanticsVisitor - class coursesolutions.CourseSemanticsVisitor.
Class sponsored symbol-processing visitor.
CourseSemanticsVisitor(HierarchyInterface) - Constructor for class coursesolutions.CourseSemanticsVisitor
Take in a hierarchy so we can decide type inclusion.
CourseSymtabVisitor - class coursesolutions.CourseSymtabVisitor.
Class sponsored symbol-processing visitor.
CourseSymtabVisitor(SymtabInterface) - Constructor for class coursesolutions.CourseSymtabVisitor
 
CourseSymtabVisitor.Info - class coursesolutions.CourseSymtabVisitor.Info.
Local class to carry symbol information
CourseSymtabVisitor.Info(AbstractNode, ModsAttrs, TypeAttrs) - Constructor for class coursesolutions.CourseSymtabVisitor.Info
 
CourseTypeSetVisitor - class coursesolutions.CourseTypeSetVisitor.
Sets the class of all AST nodes
CourseTypeSetVisitor() - Constructor for class coursesolutions.CourseTypeSetVisitor
 
coursesolutions - package coursesolutions
 
coursesolutions.courseparser - package coursesolutions.courseparser
 

D

DEC - Static variable in class coursesolutions.courseparser.sym
 
DOUBLECOLON - Static variable in class coursesolutions.courseparser.sym
 
DumpNodeVisitor - class hw4.DumpNodeVisitor.
This visitor shows you the AST as-is, node for node, with node types printed out.
DumpNodeVisitor(PrintStream) - Constructor for class hw4.DumpNodeVisitor
 
debug - Static variable in class coursesolutions.CourseBuildSymtab
 
debug - Static variable in class hw3.ReflectiveVisitor
 
decrNestLevel() - Method in class coursesolutions.CourseBuildSymtab
 
decrNestLevel() - Method in interface hw4.SymtabInterface
Close an old nest
defaultVisit(Object) - Method in class CodeGenVisitor
 
defaultVisit(Object) - Method in class SymtabVisitor
This method will cause the whole AST to be visited, but nothing will happen.
defaultVisit(Object) - Method in class coursesolutions.CourseCodeGenVisitor
 
defaultVisit(Object) - Method in class coursesolutions.CourseProjectCodeGenVisitor.RegisterAssignVisitor
 
defaultVisit(Object) - Method in class coursesolutions.CourseProjectCodeGenVisitor.SigVisitor
 
defaultVisit(Object) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
defaultVisit(Object) - Method in class coursesolutions.CourseSymtabVisitor
By default, visit children
defaultVisit(Object) - Method in class coursesolutions.CourseTypeSetVisitor
Pass the visitor down
defaultVisit(Object) - Method in class hw3.NodeVisitor
Default visitation if nothing suitable is found
defaultVisit(Object) - Method in class hw3.ReflectiveVisitor
 
defaultVisit(Object) - Method in class hw4.DumpNodeVisitor
 
dispatch(Object) - Method in class hw3.ReflectiveVisitor
Method to accomplish the double-dispatch.
do_action(int, java_cup.runtime.lr_parser, Stack, int) - Method in class coursesolutions.courseparser.CourseParser
Invoke a user supplied parse action.
dump() - Method in class hw3.AbstractNode
 
dump() - Method in interface hw3.NodeDumpable
 

E

ELSE - Static variable in class coursesolutions.courseparser.sym
 
EOF - Static variable in class coursesolutions.courseparser.sym
 
EOF_sym() - Method in class coursesolutions.courseparser.CourseParser
EOF Symbol index.
EQUALS - Static variable in class coursesolutions.courseparser.sym
 
enter(String, SymInfo) - Method in class coursesolutions.CourseBuildSymtab
 
enter(String, SymInfo) - Method in interface hw4.SymtabInterface
 
equals(Object) - Method in class hw4.PrimType
 
equals(Object) - Method in class hw4.RefType
 
err(String) - Method in class hw3.NodeVisitor
 
err(PrintStream, String) - Method in class hw3.NodeVisitor
 
err(String) - Method in class hw4.Symtab
 
err(AbstractNode, String) - Method in class hw4.Symtab
 
err(AbstractNode, String) - Method in interface hw4.SymtabInterface
 
err(String) - Method in interface hw4.SymtabInterface
 
error - Static variable in class coursesolutions.courseparser.sym
 
error_sym() - Method in class coursesolutions.courseparser.CourseParser
error Symbol index.

F

FALSE - Static variable in class coursesolutions.courseparser.sym
 
FLOAT - Static variable in class coursesolutions.courseparser.sym
 
FLOATNUMBER - Static variable in class coursesolutions.courseparser.sym
 
FieldDeclaring - interface hw4.FieldDeclaring.
An interface for an AST node that declares an instance or static variable for a class.
FieldReferencing - interface hw4.FieldReferencing.
 
FloatTypeProducing - interface hw4.FloatTypeProducing.
A node that produces an integer-type value
finished() - Method in class coursesolutions.CourseHierarchy
No more changes
finished() - Method in interface hw4.HierarchyInterface
No more changes.

G

getAnswer() - Method in class coursesolutions.CourseProjectCodeGenVisitor.SigVisitor
 
getAssignTypeNode() - Method in interface hw4.AssignTypeRequiring
Get the left child (target type)
getAssignTypeNode() - Method in class hw4.CastNode
 
getBestMethodFor(Object) - Method in class hw3.ReflectiveVisitor
Find the closest visit method that handles the supplied object.
getBody() - Method in interface hw4.MethodDeclaring
 
getBody() - Method in interface hw4.WhileIsh
 
getChild() - Method in class hw3.AbstractNode
 
getClassName() - Method in interface hw4.StaticReferencing
All but the last part of the qualified name
getClassSig() - Method in class hw4.RefType
 
getClassType() - Method in interface hw4.InvokeReference
 
getCodeGenVisitor() - Static method in class CodeGenVisitor
Change this method to return the visitor you want for code generation.
getCompare() - Method in interface hw4.CompareIsh
Return the actual operator.
getConstant() - Method in interface hw4.ConstantProducing
 
getConstructors() - Method in interface hw4.ClassIsh
 
getCurrentNestLevel() - Method in class coursesolutions.CourseBuildSymtab
 
getCurrentNestLevel() - Method in class hw4.Symtab
 
getCurrentNestLevel() - Method in interface hw4.SymtabInterface
 
getDefiningNode() - Method in class coursesolutions.CourseSymtabVisitor.Info
 
getDefiningNode() - Method in interface hw4.SymInfo
This shows us the node that declares the symbol
getFalsePart() - Method in interface hw4.IfIsh
The "false" branch
getFieldName() - Method in interface hw4.FieldReferencing
The last part of the qualified name (the component)
getFields() - Method in interface hw4.ClassIsh
 
getFirst() - Method in class hw3.AbstractNode
 
getId() - Method in interface hw4.LocalReferencing
A hook to the appropriate declaration.
getInners() - Method in interface hw4.ClassIsh
 
getLastRegisterNumber() - Method in class coursesolutions.CourseProjectCodeGenVisitor.RegisterAssignVisitor
 
getLeftChild() - Method in interface hw4.SameTypeRequiring
 
getMethodName() - Method in interface hw4.InvokeReference
 
getMethods() - Method in interface hw4.ClassIsh
 
getMods() - Method in class coursesolutions.CourseSymtabVisitor.Info
 
getMods() - Method in interface hw4.ClassDeclaring
 
getMods() - Method in interface hw4.FieldDeclaring
 
getMods() - Method in interface hw4.MethodDeclaring
 
getMods() - Method in interface hw4.SymInfo
 
getName() - Method in class hw3.AbstractNode
 
getName() - Method in interface hw4.SymDeclaring
 
getNodeNum() - Method in class hw3.AbstractNode
 
getNodeType() - Method in class hw3.AbstractNode
 
getOperation() - Method in interface hw4.ComputeIsh
Could be one of add, sub, mul, div, rem
getParams() - Method in interface hw4.MethodDeclaring
 
getParent() - Method in class hw3.AbstractNode
 
getPredicate() - Method in interface hw4.IfIsh
The boolean-valued predicate
getPredicate() - Method in interface hw4.WhileIsh
 
getRegister() - Method in class coursesolutions.CourseSymtabVisitor.Info
 
getRegister() - Method in interface hw4.SymInfo
 
getResultingType() - Method in interface hw4.FieldReferencing
The type of the resulting reference
getReturnType() - Method in interface hw4.InvokeReference
 
getRightChild() - Method in interface hw4.SameTypeRequiring
 
getSib() - Method in class hw3.AbstractNode
 
getStatics() - Method in interface hw4.ClassIsh
 
getSubjectNode() - Method in interface hw4.AssignTypeRequiring
Get the right child
getSubjectNode() - Method in class hw4.CastNode
 
getSuperClass(Type) - Method in class coursesolutions.CourseHierarchy
Get the supplied type's superclass
getSuperClass(Type) - Method in interface hw4.HierarchyInterface
Return the parent of the supplied type, null if none
getSymInfo() - Method in interface hw4.LocalReferencing
 
getSymInfo() - Method in interface hw4.SymDeclaring
 
getThisNode() - Method in interface hw4.InvokeReference
returns null if this is a static reference
getTruePart() - Method in interface hw4.IfIsh
The "true" branch
getType() - Method in class coursesolutions.CourseSymtabVisitor.Info
 
getType() - Method in interface hw4.FieldDeclaring
 
getType() - Method in interface hw4.LocalDeclaring
 
getType() - Method in interface hw4.MethodDeclaring
 
getType() - Method in interface hw4.NewIsh
 
getType() - Method in interface hw4.SymInfo
 
getType() - Method in interface hw4.TypeAsserting
 
getTypeName() - Method in class hw4.PrimType
 
getTypeName() - Method in class hw4.RefType
 
getTypeSetVisitor() - Static method in class CodeGenVisitor
 
getTypeString() - Method in class hw4.ConstructorType
 
getTypeString() - Method in class hw4.PrimType
 
getTypeString() - Method in class hw4.RefType
 
getTypeString() - Method in interface hw4.TypeAttrs
 
getTypeString() - Method in class hw4.TypeBridge
A type string suitable for the JVM.
getVal() - Method in interface hw4.ConstantBool
returns the actual value
getVal() - Method in interface hw4.ConstantFloat
The integer value of this node
getVal() - Method in interface hw4.ConstantInt
The integer value of this node
getVal() - Method in interface hw4.ConstantString
The String value of this node
getVisitor() - Static method in class SymtabVisitor
This method lets us keep Main as-is before and after your implementation.

H

HAT - Static variable in class coursesolutions.courseparser.sym
 
HierarchyInterface - interface hw4.HierarchyInterface.
 
hashCode() - Method in class hw4.PrimType
 
hashCode() - Method in class hw4.RefType
 
hw3 - package hw3
 
hw4 - package hw4
 

I

IDENTIFIER - Static variable in class coursesolutions.courseparser.sym
 
IF - Static variable in class coursesolutions.courseparser.sym
 
INC - Static variable in class coursesolutions.courseparser.sym
 
INSTANCEOF - Static variable in class coursesolutions.courseparser.sym
 
INT - Static variable in class coursesolutions.courseparser.sym
 
INTNUMBER - Static variable in class coursesolutions.courseparser.sym
 
IfIsh - interface hw4.IfIsh.
An If node
IntTypeProducing - interface hw4.IntTypeProducing.
A node that produces an integer-type value
InvokeIsh - interface hw4.InvokeIsh.
Represents a method call.
InvokeReference - interface hw4.InvokeReference.
A reference to an invocation
incrNestLevel() - Method in class coursesolutions.CourseBuildSymtab
 
incrNestLevel() - Method in interface hw4.SymtabInterface
Open a new nest
init_actions() - Method in class coursesolutions.courseparser.CourseParser
Action encapsulation object initializer.
isPrimitive() - Method in class hw4.ConstructorType
 
isPrimitive() - Method in class hw4.PrimType
 
isPrimitive() - Method in class hw4.RefType
 
isPrimitive() - Method in class hw4.TypeBridge
 
isPublic() - Method in interface hw4.ModsAttrs
 
isStatic() - Method in interface hw4.ModsAttrs
 
isStaticInvoke() - Method in interface hw4.InvokeReference
 

L

LBRACE - Static variable in class coursesolutions.courseparser.sym
 
LITERAL - Static variable in class coursesolutions.courseparser.sym
 
LPAREN - Static variable in class coursesolutions.courseparser.sym
 
LocalDeclaring - interface hw4.LocalDeclaring.
An interface for an AST node that declares a local variable.
LocalReferencing - interface hw4.LocalReferencing.
Reference to a local variable
level - Variable in class hw3.NodeVisitor
 
lookup(String) - Method in class coursesolutions.CourseBuildSymtab
 
lookup(String) - Method in interface hw4.SymtabInterface
 

M

MINUSOP - Static variable in class coursesolutions.courseparser.sym
 
Main - class Main.
 
Main() - Constructor for class Main
 
MethodDeclaring - interface hw4.MethodDeclaring.
An interface for an AST node that declares a method.
ModsAttrs - interface hw4.ModsAttrs.
Represents whether a declaration is public/private, static/instance
main(String[]) - Static method in class Main
 
makeSibling(AbstractNode) - Method in class hw3.AbstractNode
Join the end of this sibling's list with the supplied sibling's list
methodNode() - Method in interface hw4.InvokeIsh
 

N

NEW - Static variable in class coursesolutions.courseparser.sym
 
NULL - Static variable in class coursesolutions.courseparser.sym
 
NewIsh - interface hw4.NewIsh.
 
NodeDumpable - interface hw3.NodeDumpable.
 
NodeVisitor - class hw3.NodeVisitor.
Visitor idea adapted from http://www.javaworld.com/javaworld/javatips/jw-javatip98.html
NodeVisitor() - Constructor for class hw3.NodeVisitor
 
NullIsh - interface hw4.NullIsh.
 
narrows(Type, Type) - Method in class coursesolutions.CourseHierarchy
is t1 a direct or indirect subclass of t2?
narrows(Type, Type) - Method in interface hw4.HierarchyInterface
is t1 a direct or indirect subclass of t2?
next_token() - Method in class coursesolutions.courseparser.CourseScanner
Resumes scanning until the next regular expression is matched, the end of input is encountered or an I/O-Error occurs.

O

OP_EQ - Static variable in class coursesolutions.courseparser.sym
 
OP_GE - Static variable in class coursesolutions.courseparser.sym
 
OP_GT - Static variable in class coursesolutions.courseparser.sym
 
OP_LAND - Static variable in class coursesolutions.courseparser.sym
 
OP_LE - Static variable in class coursesolutions.courseparser.sym
 
OP_LOR - Static variable in class coursesolutions.courseparser.sym
 
OP_LT - Static variable in class coursesolutions.courseparser.sym
 
OP_NE - Static variable in class coursesolutions.courseparser.sym
 
OrIsh - interface hw4.OrIsh.
The or operator (|)
orphan() - Method in class hw3.AbstractNode
 
out(String) - Method in class coursesolutions.CourseBuildSymtab
 
out(String) - Method in class hw3.NodeVisitor
 
out(PrintStream, String) - Method in class hw3.NodeVisitor
 
out(String) - Method in class hw4.Symtab
 
out(AbstractNode, String) - Method in class hw4.Symtab
 
out(AbstractNode, String) - Method in interface hw4.SymtabInterface
This lets you put out a message about a node, indented by the current nest level
out(String) - Method in interface hw4.SymtabInterface
 

P

PERCENT - Static variable in class coursesolutions.courseparser.sym
 
PERIOD - Static variable in class coursesolutions.courseparser.sym
 
PIPE - Static variable in class coursesolutions.courseparser.sym
 
PLUSOP - Static variable in class coursesolutions.courseparser.sym
 
PRIVATE - Static variable in class coursesolutions.courseparser.sym
 
PUBLIC - Static variable in class coursesolutions.courseparser.sym
 
ParamIsh - interface hw4.ParamIsh.
 
PostDecIsh - interface hw4.PostDecIsh.
 
PostIncIsh - interface hw4.PostIncIsh.
 
PreDecIsh - interface hw4.PreDecIsh.
 
PreIncIsh - interface hw4.PreIncIsh.
 
PrimType - class hw4.PrimType.
 
PrimType(String) - Constructor for class hw4.PrimType
 
PrintTree - class hw3.PrintTree.
Obsolete do not use
PrintTree(PrintStream) - Constructor for class hw3.PrintTree
 
params() - Method in interface hw4.InvokeIsh
 
paramsNode() - Method in interface hw4.InvokeIsh
 
perform(AbstractNode) - Method in class coursesolutions.CourseTypeSetVisitor
Here is where semantic analysis happens.
perform(AbstractNode) - Method in class hw3.ReflectiveVisitor
Method to kick things off.
performVisit(AbstractNode) - Method in class hw3.ReflectiveVisitor
Better version of perform
pname - Variable in class hw4.PrimType
 
post(int, AbstractNode) - Method in class hw3.PrintTree
 
post(int, AbstractNode) - Method in interface hw3.Visitable
 
pre(int, AbstractNode) - Method in class hw3.PrintTree
 
pre(int, AbstractNode) - Method in interface hw3.Visitable
 
production_table() - Method in class coursesolutions.courseparser.CourseParser
Access to production table.
ps - Variable in class hw3.NodeVisitor
 

Q

QUESTION - Static variable in class coursesolutions.courseparser.sym
 

R

RBRACE - Static variable in class coursesolutions.courseparser.sym
 
RETURN - Static variable in class coursesolutions.courseparser.sym
 
RIGHTARROW - Static variable in class coursesolutions.courseparser.sym
 
RPAREN - Static variable in class coursesolutions.courseparser.sym
 
RSLASH - Static variable in class coursesolutions.courseparser.sym
 
RefType - class hw4.RefType.
 
RefType(Vector) - Constructor for class hw4.RefType
 
RefType(String) - Constructor for class hw4.RefType
 
Referencing - interface hw4.Referencing.
Some kind of a reference -- Local, Field, or Static
ReflectiveVisitable - interface hw3.ReflectiveVisitable.
Reflective visitor pattern -- a node must accept a visitor
ReflectiveVisitor - class hw3.ReflectiveVisitor.
A reflective version of Visitor Adapted from http://www.javaworld.com/javaworld/javatips/jw-javatip98.html
ReflectiveVisitor() - Constructor for class hw3.ReflectiveVisitor
 
ReturnIsh - interface hw4.ReturnIsh.
A return node that returns no value
reduce_table() - Method in class coursesolutions.courseparser.CourseParser
Access to reduce_goto table.
rname - Variable in class hw4.RefType
 

S

SEMICOLON - Static variable in class coursesolutions.courseparser.sym
 
STATIC - Static variable in class coursesolutions.courseparser.sym
 
STRING - Static variable in class coursesolutions.courseparser.CourseScanner
lexical states
SUPER - Static variable in class coursesolutions.courseparser.sym
 
SameTypeRequiring - interface hw4.SameTypeRequiring.
A node whose semantics want the left and rightchild to agree on type.
ShortAndIsh - interface hw4.ShortAndIsh.
The short-circuiting and operator (&&).
ShortOrIsh - interface hw4.ShortOrIsh.
The short-circuiting or operator (||).
StaticReferencing - interface hw4.StaticReferencing.
Reference to a static field
StringTypeProducing - interface hw4.StringTypeProducing.
A node that produces a java.lang.String-type value
SymDeclaring - interface hw4.SymDeclaring.
A convenient interface for anything that declares a symbol.
SymInfo - interface hw4.SymInfo.
Everything you want to know about a symbol
Symtab - class hw4.Symtab.
Abstract class so you can print out messages that are properly indented to reflect the current nest level.
Symtab() - Constructor for class hw4.Symtab
 
SymtabInterface - interface hw4.SymtabInterface.
This interface allows you to use my symbol-table solution or yours interchangeably
SymtabVisitor - class SymtabVisitor.
You must implement the visitor and the symbol table
SymtabVisitor(SymtabInterface) - Constructor for class SymtabVisitor
 
setNodeType(Type) - Method in class hw3.AbstractNode
 
setPrintStream(PrintStream) - Method in class hw3.NodeVisitor
Change the output stream.
setRegister(int) - Method in class coursesolutions.CourseSymtabVisitor.Info
 
setRegister(int) - Method in interface hw4.SymInfo
 
setSymInfo(SymInfo) - Method in interface hw4.LocalReferencing
 
setSymInfo(SymInfo) - Method in interface hw4.SymDeclaring
 
setType(Object, Type) - Method in class coursesolutions.CourseTypeSetVisitor
 
start_production() - Method in class coursesolutions.courseparser.CourseParser
Indicates start production.
start_state() - Method in class coursesolutions.courseparser.CourseParser
Indicates start state.
sym - class coursesolutions.courseparser.sym.
CUP generated class containing symbol constants.
sym() - Constructor for class coursesolutions.courseparser.sym
 
symString - class coursesolutions.courseparser.symString.
 
symString() - Constructor for class coursesolutions.courseparser.symString
 
symToString - Static variable in class coursesolutions.courseparser.symString
 

T

THIS - Static variable in class coursesolutions.courseparser.sym
 
TILDE - Static variable in class coursesolutions.courseparser.sym
 
TRUE - Static variable in class coursesolutions.courseparser.sym
 
ThisIsh - interface hw4.ThisIsh.
A "this" node
Type - interface hw3.Type.
 
TypeAsserting - interface hw4.TypeAsserting.
A node that asserts a reference type.
TypeAttrs - interface hw4.TypeAttrs.
An interface for types, mine or yours, interchangeably.
TypeBridge - class hw4.TypeBridge.
This class bridges the generic Type interface from the parser to actual types used in semantic analysis.
TypeBridge() - Constructor for class hw4.TypeBridge
 
toString() - Method in class coursesolutions.CourseSymtabVisitor.Info
 
toString() - Method in class hw3.AbstractNode
 
toString() - Method in class hw4.TypeBridge
 

U

UnaryComputeIsh - interface hw4.UnaryComputeIsh.
Represent a unary arithmetic node, such as neg and return

V

VOID - Static variable in class coursesolutions.courseparser.sym
 
Visitable - interface hw3.Visitable.
Obsolete, do not use!
visit(ClassDeclaring) - Method in class CodeGenVisitor
This outputs a standard prelude, with the class extending Object, a dummy method for main(String[] args) that calls main431 Thus, your test file must have a static main431 to kick things off
visit(ClassDeclaring) - Method in class coursesolutions.CourseCodeGenVisitor
This outputs a standard prelude, with the class extending Object, a dummy method for main(String[] args) that calls main431 Thus, your test file must have a static main431 to kick things off
visit(AssignIsh) - Method in class coursesolutions.CourseCodeGenVisitor
 
visit(ConstantInt) - Method in class coursesolutions.CourseCodeGenVisitor
 
visit(ComputeIsh) - Method in class coursesolutions.CourseCodeGenVisitor
 
visit(MethodDeclaring) - Method in class coursesolutions.CourseCodeGenVisitor
 
visit(ThisIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor.AssignTargVisitor
 
visit(LocalReferencing) - Method in class coursesolutions.CourseProjectCodeGenVisitor.AssignTargVisitor
 
visit(FieldReferencing) - Method in class coursesolutions.CourseProjectCodeGenVisitor.AssignTargVisitor
 
visit(StaticReferencing) - Method in class coursesolutions.CourseProjectCodeGenVisitor.AssignTargVisitor
 
visit(LocalDeclaring) - Method in class coursesolutions.CourseProjectCodeGenVisitor.RegisterAssignVisitor
 
visit(ParamIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor.SigVisitor
 
visit(ArgIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor.SigVisitor
 
visit(LocalDeclaring) - Method in class coursesolutions.CourseProjectCodeGenVisitor.SigVisitor
 
visit(ClassDeclaring) - Method in class coursesolutions.CourseProjectCodeGenVisitor
This outputs a standard prelude, with the class extending Object, a dummy method for main(String[] args) that calls main431 Thus, your test file must have a static main431 to kick things off
visit(LocalReferencing) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(ThisIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(CompareIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(AssignIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(ShortOrIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(ShortAndIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(NullIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(ConstantProducing) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(ComputeIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(MethodDeclaring) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(FieldReferencing) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(StaticReferencing) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(WhileIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(IfIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(InvokeIsh) - Method in class coursesolutions.CourseProjectCodeGenVisitor
 
visit(LocalDeclaring) - Method in class coursesolutions.CourseSymtabVisitor
 
visit(FieldDeclaring) - Method in class coursesolutions.CourseSymtabVisitor
 
visit(ClassDeclaring) - Method in class coursesolutions.CourseSymtabVisitor
 
visit(MethodDeclaring) - Method in class coursesolutions.CourseSymtabVisitor
 
visit(LocalReferencing) - Method in class coursesolutions.CourseSymtabVisitor
 
visit(BlockIsh) - Method in class coursesolutions.CourseSymtabVisitor
 
visit(NewIsh) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(ClassDeclaring) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(ThisIsh) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(LocalReferencing) - Method in class coursesolutions.CourseTypeSetVisitor
Set this node's type to the type of the reference by symbol-table lookup
visit(InvokeIsh) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(ReturnIsh) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(FieldReferencing) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(BoolTypeProducing) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(IntTypeProducing) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(FloatTypeProducing) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(StringTypeProducing) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(TypeAsserting) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(UnaryComputeIsh) - Method in class coursesolutions.CourseTypeSetVisitor
 
visit(BinaryComputeIsh) - Method in class coursesolutions.CourseTypeSetVisitor
Insist both children have the same type, set this note to that type
visit(CastNode) - Method in class coursesolutions.CourseTypeSetVisitor
Cast node -- insist on type of left child
visit(AssignTypeRequiring) - Method in class coursesolutions.CourseTypeSetVisitor
Insist both children have the same type, set this note to that type
visitBothSame(AbstractNode) - Method in class coursesolutions.CourseTypeSetVisitor
Make sure both children have the samet ype, then set this node to that type
visitChildren(AbstractNode) - Method in class hw3.NodeVisitor
Useful to be able to visit all children.

W

WHILE - Static variable in class coursesolutions.courseparser.sym
 
WhileIsh - interface hw4.WhileIsh.
A while node
walkTree(Visitable) - Method in class hw3.AbstractNode
Obsolete, do not use!
whatAmI() - Method in class hw3.AbstractNode
Reflectively indicate the class of "this" node
widens(Type, Type) - Method in class coursesolutions.CourseHierarchy
Is t1 a direct or indirect superclass of t2?
widens(Type, Type) - Method in interface hw4.HierarchyInterface
Is t1 a direct or indirect superclass of t2?

Y

YYEOF - Static variable in class coursesolutions.courseparser.CourseScanner
This character denotes the end of file
YYINITIAL - Static variable in class coursesolutions.courseparser.CourseScanner
 
yybegin(int) - Method in class coursesolutions.courseparser.CourseScanner
Enters a new lexical state
yycharat(int) - Method in class coursesolutions.courseparser.CourseScanner
Returns the character at position pos from the matched text.
yyclose() - Method in class coursesolutions.courseparser.CourseScanner
Closes the input stream.
yylength() - Method in class coursesolutions.courseparser.CourseScanner
Returns the length of the matched text region.
yypushback(int) - Method in class coursesolutions.courseparser.CourseScanner
Pushes the specified amount of characters back into the input stream.
yyreset(Reader) - Method in class coursesolutions.courseparser.CourseScanner
Resets the scanner to read from a new input stream.
yystate() - Method in class coursesolutions.courseparser.CourseScanner
Returns the current lexical state.
yytext() - Method in class coursesolutions.courseparser.CourseScanner
Returns the text matched by the current regular expression.

_

_action_table - Static variable in class coursesolutions.courseparser.CourseParser
Parse-action table.
_production_table - Static variable in class coursesolutions.courseparser.CourseParser
Production table.
_reduce_table - Static variable in class coursesolutions.courseparser.CourseParser
reduce_goto table.

A B C D E F G H I L M N O P Q R S T U V W Y _