org.eclipse.wst.jsdt.core.infer
Class InferEngine

java.lang.Object
  extended by org.eclipse.wst.jsdt.core.ast.ASTVisitor
      extended by org.eclipse.wst.jsdt.core.infer.InferEngine

public class InferEngine
extends ASTVisitor

The default inference engine. This class can also be subclassed by Inferrence providors. Provisional API: This class/interface is part of an interim API that is still under development and expected to change significantly before reaching stability. It is being made available at this early stage to solicit feedback from pioneering adopters on the understanding that any code that uses this API will almost certainly be broken (repeatedly) as the API evolves.


Field Summary
static char[] ANONYMOUS_CLASS_ID
           
static char[] ANONYMOUS_PREFIX
           
 int appliesTo
           
 InferredType ArrayType
           
 InferredType BooleanType
           
 InferredType FunctionType
           
 InferredType GlobalType
           
 InferrenceProvider inferenceProvider
           
 InferredType NumberType
           
 InferredType ObjectType
           
 InferredType StringType
           
 InferredType VoidType
           
static org.eclipse.wst.jsdt.internal.compiler.util.HashtableOfObject WellKnownTypes
           
 
Constructor Summary
InferEngine()
           
InferEngine(InferOptions inferOptions)
           
 
Method Summary
 void doInfer()
           
 void endVisit(IAssignment assignment)
           
 void endVisit(IFunctionDeclaration methodDeclaration)
           
 void endVisit(IObjectLiteral literal)
           
 void endVisit(IObjectLiteralField field)
           
 void endVisit(IReturnStatement returnStatement)
           
 IScriptFileDeclaration getScriptFileDeclaration()
          Get the Script file this inferrence is being done on
 void initialize()
           
 void initializeOptions(InferOptions options)
          Overriden by client who wish to update the infer options
 void setCompilationUnit(org.eclipse.wst.jsdt.internal.compiler.ast.CompilationUnitDeclaration compilationUnit)
           
 boolean visit(IAllocationExpression allocationExpression)
           
 boolean visit(IAssignment assignment)
           
 boolean visit(IFunctionCall functionCall)
           
 boolean visit(IFunctionDeclaration methodDeclaration)
           
 boolean visit(ILocalDeclaration localDeclaration)
           
 boolean visit(IObjectLiteral literal)
           
 
Methods inherited from class org.eclipse.wst.jsdt.core.ast.ASTVisitor
acceptProblem, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, endVisit, 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
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

appliesTo

public int appliesTo

inferenceProvider

public InferrenceProvider inferenceProvider

StringType

public InferredType StringType

NumberType

public InferredType NumberType

BooleanType

public InferredType BooleanType

FunctionType

public InferredType FunctionType

ArrayType

public InferredType ArrayType

VoidType

public InferredType VoidType

ObjectType

public InferredType ObjectType

GlobalType

public InferredType GlobalType

WellKnownTypes

public static org.eclipse.wst.jsdt.internal.compiler.util.HashtableOfObject WellKnownTypes

ANONYMOUS_PREFIX

public static final char[] ANONYMOUS_PREFIX

ANONYMOUS_CLASS_ID

public static final char[] ANONYMOUS_CLASS_ID
Constructor Detail

InferEngine

public InferEngine(InferOptions inferOptions)

InferEngine

public InferEngine()
Method Detail

initialize

public void initialize()

setCompilationUnit

public void setCompilationUnit(org.eclipse.wst.jsdt.internal.compiler.ast.CompilationUnitDeclaration compilationUnit)

visit

public boolean visit(IFunctionCall functionCall)
Overrides:
visit in class ASTVisitor

visit

public boolean visit(ILocalDeclaration localDeclaration)
Overrides:
visit in class ASTVisitor

visit

public boolean visit(IAssignment assignment)
Overrides:
visit in class ASTVisitor

endVisit

public void endVisit(IAssignment assignment)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(IReturnStatement returnStatement)
Overrides:
endVisit in class ASTVisitor

endVisit

public void endVisit(IFunctionDeclaration methodDeclaration)
Overrides:
endVisit in class ASTVisitor

visit

public boolean visit(IFunctionDeclaration methodDeclaration)
Overrides:
visit in class ASTVisitor

visit

public boolean visit(IAllocationExpression allocationExpression)
Overrides:
visit in class ASTVisitor

endVisit

public void endVisit(IObjectLiteralField field)
Overrides:
endVisit in class ASTVisitor

doInfer

public void doInfer()

visit

public boolean visit(IObjectLiteral literal)
Overrides:
visit in class ASTVisitor

endVisit

public void endVisit(IObjectLiteral literal)
Overrides:
endVisit in class ASTVisitor

initializeOptions

public void initializeOptions(InferOptions options)
Overriden by client who wish to update the infer options

Parameters:
options -

getScriptFileDeclaration

public IScriptFileDeclaration getScriptFileDeclaration()
Get the Script file this inferrence is being done on

Returns: