Package org.codehaus.janino

# Class CompilerFactory

java.lang.Object
org.codehaus.commons.compiler.AbstractCompilerFactory
org.codehaus.janino.CompilerFactory

All Implemented Interfaces:
  `ICompilerFactory`

public class CompilerFactory extends AbstractCompilerFactory
The JANINO implementation of `ICompilerFactory`.

## Constructor Summary

Constructors
Constructor
Description
`CompilerFactory()`

## Method Summary

Modifier and Type
Method
Description
`String`
`getId()`
`String`
`getImplementationVersion()`
`IClassBodyEvaluator`
`newClassBodyEvaluator()`
`ICompiler`
`newCompiler()`
`IExpressionEvaluator`
`newExpressionEvaluator()`
`AbstractJavaSourceClassLoader`
`newJavaSourceClassLoader()`
`AbstractJavaSourceClassLoader`
`newJavaSourceClassLoader(ClassLoader parentClassLoader)`
`IScriptEvaluator`
`newScriptEvaluator()`
`ISimpleCompiler`
`newSimpleCompiler()`
`String`
`toString()`

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

## Constructor Details

### CompilerFactory

public CompilerFactory()

## Method Details

### getId

public String getId()

Specified by:
  `getId` in interface `ICompilerFactory`
Specified by:
  `getId` in class `AbstractCompilerFactory`
Returns:
  A `String` which uniquely identifies the concrete implementation of this interface, e.g. `"org.codehaus.janino"` or `"org.codehaus.commons.compiler.jdk"`

### toString

public String toString()

Specified by:
  `toString` in interface `ICompilerFactory`
Specified by:
  `toString` in class `AbstractCompilerFactory`
Returns:
  A human-readable `String` that identifies the concrete implementation of this interface in a user interface, e.g. `"janino"` or `"jdk"`

### getImplementationVersion

public String getImplementationVersion()

Specified by:
  `getImplementationVersion` in interface `ICompilerFactory`
Specified by:
  `getImplementationVersion` in class `AbstractCompilerFactory`
Returns:
  The version of this implementation of the commons-compiler specification, or `null`

### newExpressionEvaluator

public IExpressionEvaluator newExpressionEvaluator()

Specified by:
  `newExpressionEvaluator` in interface `ICompilerFactory`
Overrides:
  `newExpressionEvaluator` in class `AbstractCompilerFactory`
See Also:
  - `IExpressionEvaluator`

### newScriptEvaluator

public IScriptEvaluator newScriptEvaluator()

Specified by:
  `newScriptEvaluator` in interface `ICompilerFactory`
Overrides:
  `newScriptEvaluator` in class `AbstractCompilerFactory`
See Also:
  - `IScriptEvaluator`

### newClassBodyEvaluator

public IClassBodyEvaluator newClassBodyEvaluator()

Specified by:
  `newClassBodyEvaluator` in interface `ICompilerFactory`
Overrides:
  `newClassBodyEvaluator` in class `AbstractCompilerFactory`
See Also:
  - `IClassBodyEvaluator`

### newSimpleCompiler

public ISimpleCompiler newSimpleCompiler()

Specified by:
  `newSimpleCompiler` in interface `ICompilerFactory`
Overrides:
  `newSimpleCompiler` in class `AbstractCompilerFactory`
See Also:
  - `ISimpleCompiler`

### newCompiler

public ICompiler newCompiler()

See Also:
  - `ISimpleCompiler`

### newJavaSourceClassLoader

public AbstractJavaSourceClassLoader newJavaSourceClassLoader()

Specified by:
  `newJavaSourceClassLoader` in interface `ICompilerFactory`
Overrides:
  `newJavaSourceClassLoader` in class `AbstractCompilerFactory`
See Also:
  - `AbstractJavaSourceClassLoader`

### newJavaSourceClassLoader

public AbstractJavaSourceClassLoader newJavaSourceClassLoader(ClassLoader parentClassLoader)

Specified by:
  `newJavaSourceClassLoader` in interface `ICompilerFactory`
Overrides:
  `newJavaSourceClassLoader` in class `AbstractCompilerFactory`
See Also:
  - `AbstractJavaSourceClassLoader`