ant.compiler.trafo
Class SemanticAnalyzer

java.lang.Object
  extended byant.compiler.ast.AbstractVisitor
      extended byant.compiler.trafo.SemanticAnalyzer
All Implemented Interfaces:
Tree.Visitor

public class SemanticAnalyzer
extends AbstractVisitor

Visitor that performs the semantic analysis in Ant Control Programs.

License: GPL

Author:
Bernhard Haumacher

Nested Class Summary
 class SemanticAnalyzer.DefinitionFinder
          Visitor that finds definitions in the symbol table.
 class SemanticAnalyzer.ParentResolver
          Visitor that links tree nodes to their parents.
 class SemanticAnalyzer.UsageResolver
          Visitor that enters definitions into the symbol table.
 
Field Summary
(package private)  SemanticAnalyzer.DefinitionFinder finder
           
(package private)  java.util.HashMap labelDefinitions
           
(package private)  SemanticAnalyzer.ParentResolver linker
           
(package private)  ErrorLog log
           
(package private)  java.util.HashMap procDefinitions
           
(package private)  SemanticAnalyzer.UsageResolver resolver
           
(package private)  java.util.HashMap variableDefinitions
           
 
Constructor Summary
SemanticAnalyzer(ErrorLog log)
           
 
Method Summary
protected  void visitTree(Tree tree)
           
 
Methods inherited from class ant.compiler.ast.AbstractVisitor
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visitBinaryExpression, visitExpression
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

log

ErrorLog log

variableDefinitions

java.util.HashMap variableDefinitions

labelDefinitions

java.util.HashMap labelDefinitions

procDefinitions

java.util.HashMap procDefinitions

linker

SemanticAnalyzer.ParentResolver linker

finder

SemanticAnalyzer.DefinitionFinder finder

resolver

SemanticAnalyzer.UsageResolver resolver
Constructor Detail

SemanticAnalyzer

public SemanticAnalyzer(ErrorLog log)
Method Detail

visitTree

protected void visitTree(Tree tree)
Overrides:
visitTree in class AbstractVisitor