org.eclipse.wst.jsdt.core.infer

## Interface IInferEngine

All Known Implementing Classes:
  InferEngine

    public interface IInferEngine

Engine for inferring types from compilation unit.

Clients may implement this interface but should expect some breakage by future releases.

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.

Since:
  3.2

### Field Summary

Fields
`static char[]` `ANONYMOUS_CLASS_ID`
`static char[]` `ANONYMOUS_PREFIX`

### Method Summary

All Methods Instance Methods Abstract Methods
`void` `doInfer()` Requests to perform type inference on provided compilation unit.
`void` `initialize()` Initializes inference engine.
`void` `initializeOptions(InferOptions inferOptions)` Provides inference options to the engine.
`void` `setCompilationUnit(org.eclipse.wst.jsdt.internal.compiler.ast.CompilationUnitDeclaration parsedUnit)` Set compilation unit for processing.

### Field Detail

#### ANONYMOUS_PREFIX

    static final char[] ANONYMOUS_PREFIX

#### ANONYMOUS_CLASS_ID

    static final char[] ANONYMOUS_CLASS_ID

### Method Detail

#### initialize

    void initialize()

Initializes inference engine. Always called before `#setCompilationUnit()` to let engine prepare for next compilation unit.

#### setCompilationUnit

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

Set compilation unit for processing.

#### doInfer

    void doInfer()

Requests to perform type inference on provided compilation unit. Always called after `setCompilationUnit(CompilationUnitDeclaration)`

#### initializeOptions

    void initializeOptions(InferOptions inferOptions)

Provides inference options to the engine.