public final class ReferencedUnits extends ASTVisitorBase
Constructor and Description |
---|
ReferencedUnits() |
Modifier and Type | Method and Description |
---|---|
static java.util.Collection<Symbol> |
compute(AST tree)
Compute referenced units.
|
static void |
computeClosure(java.util.Collection<Symbol> in,
java.util.Vector<Symbol> out)
Compute closure of unit dependencies.
|
static java.util.Collection<Symbol> |
filterDependencies(Symbol symbol,
java.util.Collection<Symbol> symbols)
Filter all those units that (directly or indirectly) depend on given unit.
|
void |
visit(Identifier ident)
Process identifier.
|
void |
visit(StringLiteral literal)
Process string literal
|
void |
visit(StringType type)
Process string type.
|
visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit, visit
public static java.util.Collection<Symbol> compute(AST tree)
tree
- the source of the unit.public void visit(Identifier ident)
visit
in interface ASTVisitor
visit
in class ASTVisitorBase
ident
- an identifier.public void visit(StringType type)
visit
in interface ASTVisitor
visit
in class ASTVisitorBase
type
- a string type expression.public void visit(StringLiteral literal)
visit
in interface ASTVisitor
visit
in class ASTVisitorBase
literal
- a string literalpublic static java.util.Collection<Symbol> filterDependencies(Symbol symbol, java.util.Collection<Symbol> symbols)
symbol
- the symbol denoting a unitsymbols
- a collection of unitspublic static void computeClosure(java.util.Collection<Symbol> in, java.util.Vector<Symbol> out)
in
- a collection of unit (class/theory) symbols.out
- a vector of unit (class/theory) symbols different from in.
to which the reflexive transitive closure of the unit (class/theory)
dependencies of in are added in dependence order.