public class CodegenCompilerJanino extends java.lang.Object implements CodegenCompiler
Janino cannot do shortcut-evaluation in the form of "a ? b : c". This results in "operand stack underflow".
Janino cannot handle compilation error "result = method()" with method returning void. This results in "operand stack underflow".
Define "-Dorg.codehaus.janino.source_debugging.dir=....." and "-Dorg.codehaus.janino.source_debugging.enable=true" for debugging
Constructor and Description |
---|
CodegenCompilerJanino(java.lang.String engineURI,
boolean logging,
boolean includeDebugSymbols) |
Modifier and Type | Method and Description |
---|---|
<T> java.lang.Class<T> |
compileClass(java.lang.String code,
java.lang.String fullyQualifiedClassName,
java.lang.ClassLoader classLoader,
java.util.function.Supplier<java.lang.String> debugInformation) |
java.lang.String |
getPackageName() |
public CodegenCompilerJanino(java.lang.String engineURI, boolean logging, boolean includeDebugSymbols)
public java.lang.String getPackageName()
getPackageName
in interface CodegenCompiler
public <T> java.lang.Class<T> compileClass(java.lang.String code, java.lang.String fullyQualifiedClassName, java.lang.ClassLoader classLoader, java.util.function.Supplier<java.lang.String> debugInformation) throws CodegenCompilerException
compileClass
in interface CodegenCompiler
CodegenCompilerException