Uses of Class
xrel.parser.SymTable

Packages that use SymTable
xrel.analyzer This package contains the classes that process the output of the parser and that perform static checking of the program.  
xrel.parser Many classes here are generated by JavaCC / JJTree.  
 

Uses of SymTable in xrel.analyzer
 

Fields in xrel.analyzer declared as SymTable
protected  SymTable TA.symtab
           
 

Methods in xrel.analyzer with parameters of type SymTable
static int PatternMatching.matchWith(SymTable st, SimpleNode value, java.io.PrintStream out, boolean debug)
          The main method of this class.
static boolean SemanticChecks.checkTypeSwitch(SymTable st, boolean doIrredundancyChk, boolean doExhaustivityChk, boolean doTypeInference, boolean doAmbiguityChk, java.io.PrintStream out, boolean debug)
           
static boolean SemanticChecks.isAmbiguousImport(SymTable st, java.io.PrintStream out, boolean debug)
           
static void Translate.addPredefined(SymTable st)
          Adds the predefined type "Any" to the symbol table.
static void Translate.desugar(SymTable st)
          Performs a few simplifications to all the elements in the symbol table: types, patterns, variable types and expressions.
static SimpleNode Translate.desugarElement(SymTable st, SimpleNode node)
          Removes the operators "+" and "?"
static void Translate.normalization(SymTable st)
          Internalizes all the patterns of the program, that is it transformes them in an internal format so that they can be easily transformed in automata.
static void Translate.diagnosticChecks(SymTable st, int phase)
          Perform diagnostic checks on the elements inside the symbol table.
static boolean WellFormedness.disconnectedness(SymTable st, SimpleNode root)
          Checks that all the type declarations in the program don't have recursion at the top-level.
static boolean WellFormedness.checkLinearity(SymTable st, SimpleNode root)
          Checks that all the patterns inside the program are linear.
static void ElementAutomata.dumpAutomata(SymTable st, java.io.PrintStream out)
          Writes the internal structure of the automata associated to the elements of the symbol table.
static void ElementAutomata.buildAll(SymTable st, boolean debug)
          Builds the automata associated to the elements of the symbol table.
 

Constructors in xrel.analyzer with parameters of type SymTable
TA(java.lang.String nm, SymTable st, boolean dbg, java.io.PrintStream psOut)
          Initializes an empty tree automaton.
TAProduct(TA A1, TA A2, SymTable st, boolean dbg, java.io.PrintStream psOut, boolean force)
           
TAUnion(java.util.HashSet alNames, SymTable st, boolean dbg, java.io.PrintStream psOut)
           
TASimple(java.lang.String nm, SymTable st, boolean dbg, java.io.PrintStream psOut, SymElement el)
           
TADifference(TA A1, TA A2, SymTable st, boolean dbg, java.io.PrintStream psOut)
           
 

Uses of SymTable in xrel.parser
 

Fields in xrel.parser declared as SymTable
protected  SymTable ErrorCheckVisitor.symtab
           
 

Methods in xrel.parser with parameters of type SymTable
 void SimpleNode.writeExpression(java.io.PrintStream out, java.lang.String prefix, SymTable st)
          Writes out to the stream "out" the subtree of this node in a human-readable structured format.
 void SimpleNode.exportExpression(java.lang.String filename, SymTable st)
          Exports to the stream "out" the subtree of this node in an XML format.
static ASTProgram XRelParser.Program(SymTable symtab)
          LANGUAGE GRAMMAR *
static void XRelParser.TypeDecl(SymTable symtab)
           
static void XRelParser.ImportSt(SymTable symtab)
           
static void XRelParser.ExportTp(SymTable symtab)
           
static void XRelParser.SwitchCase(SymTable symtab)
           
static void XRelParser.Case(SymTable symtab)
           
static void XRelParser.StatementList(SymTable symtab)
           
static void XRelParser.Statement(SymTable symtab)
           
static void XRelParser.ValueExpr(SymTable symtab)
           
static void XRelParser.ValueTerm(SymTable symtab)
           
static void XRelParser.TypeExpr(SymTable symtab, boolean binding)
           
static void XRelParser.CommaSeq(SymTable symtab, boolean binding)
           
static void XRelParser.UnaryOp(SymTable symtab, boolean binding)
           
static void XRelParser.TermExpr(SymTable symtab, boolean binding)
           
 

Constructors in xrel.parser with parameters of type SymTable
SymElement(SymTable st, int scope, java.lang.String nm, int k, SimpleNode nd)
          This is the only constructor you can use to initialize an object of the symbol table.
ErrorCheckVisitor(SymTable s)
          Builds the object.