| Interface | Description |
|---|---|
| CodeContext.FixUp |
A throw-in interface that marks
CodeContext.Offsets as "fix-ups": During the execution of CodeContext.fixUp(), all "fix-ups" are invoked and can do last touches to the code attribute. |
| IClass.IAnnotation |
Representation of a Java "annotation".
|
| IClass.IMember |
Base for the members of an
IClass. |
| Java.Annotatable |
Representation of Java elements that can be annotated: Fields, constructors, methods, type declarations.
|
| Java.Annotation |
Representation of a Java annotation.
|
| Java.AnnotationTypeDeclaration |
Base for package member ("top-level") and member ("nested") annotation type declarations.
|
| Java.ArrayInitializerOrRvalue |
The union of
Java.ArrayInitializer and Java.Rvalue. |
| Java.BlockStatement |
Everything that can be compiled to code, e.g. the statements occurring in the body of a method or in a block,
explicit constructor invocations and instance/static initializers.
|
| Java.ClassDeclaration |
Base for the various class declarations (top-level class, local class, anonymous class, nested class, top-level
enum, nested enum).
|
| Java.DocCommentable |
Representation of a Java element that can be annotated with a DOC comment ('
/** ...
*/'). |
| Java.ElementValue |
Base of the possible element values in a
Java.NormalAnnotation. |
| Java.EnumDeclaration |
Base for package member (a.k.a.
|
| Java.Locatable |
This interface is implemented by objects which are associated with a location in the source code.
|
| Java.MemberTypeDeclaration |
Represents a class or interface declaration where the immediately enclosing scope is another class or interface
declaration.
|
| Java.NamedTypeDeclaration |
Represents the declaration of a class or an interface that has a name.
|
| Java.PackageMemberTypeDeclaration |
Represents a class or interface declaration on compilation unit level.
|
| Java.Scope |
Representation of a Java 'scope', e.g. a compilation unit, type, method or block.
|
| Java.TypeArgument |
Representation of a JLS7 4.5.1 type argument.
|
| Java.TypeBodyDeclaration |
Representation of a "ClassBodyDeclaration" or an "InterfaceMemberDeclaration".
|
| Java.TypeDeclaration |
Base for the various kinds of type declarations, e.g. top-level class, member interface, local class.
|
| Visitor.AnnotationVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.Annotations. |
| Visitor.AtomVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.Atoms. |
| Visitor.BlockStatementVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.BlockStatements (statements that may appear with a block). |
| Visitor.ConstructorInvocationVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.ConstructorInvocations. |
| Visitor.ElementValueVisitor<R,EX extends Throwable> | |
| Visitor.FunctionDeclaratorVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.FunctionDeclarators. |
| Visitor.ImportVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.CompilationUnit.ImportDeclarations. |
| Visitor.LvalueVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.Lvalues. |
| Visitor.RvalueVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.Rvalues. |
| Visitor.TypeArgumentVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.TypeArguments. |
| Visitor.TypeBodyDeclarationVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.TypeBodyDeclarations (declarations that may appear in the body of a
type declaration). |
| Visitor.TypeDeclarationVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.TypeDeclarations. |
| Visitor.TypeVisitor<R,EX extends Throwable> |
The visitor for all kinds of
Java.Types. |
| Class | Description |
|---|---|
| AntCompilerAdapter |
A simple
CompilerAdapter for the "ant" tool that silently ignores
most of the configuration parameters and attempts to compile all given source files into class files. |
| ByteArrayClassLoader |
This
ClassLoader allows for the loading of a set of Java classes provided in class file format. |
| CachingJavaSourceClassLoader |
A
JavaSourceClassLoader that uses a resource storage provided by the application to
cache compiled classes and thus saving unnecessary recompilations. |
| ClassBodyEvaluator |
The
optionalClassLoader serves two purposes:
It is used to look for classes referenced by the class body. |
| ClassFileIClass | |
| ClassLoaderIClassLoader | |
| CodeContext |
The context of the compilation of a function (constructor or method).
|
| Compiler |
A simplified substitute for the javac tool.
|
| Compiler.SimpleWarningHandler |
Prints warnings to STDERR.
|
| CompilerFactory |
The JANINO implementation of
ICompilerFactory. |
| Descriptor |
Helper class that defines useful methods for handling "field descriptors"
(JVMS 4.3.2) and "method descriptors" (JVMS 4.3.3).
|
| ExpressionEvaluator |
This
IExpressionEvaluator is implemented by creating and compiling a temporary compilation unit defining one
class with one static method with one RETURN statement. |
| FilterWarningHandler |
Invokes a delegate iff the handle of the warning matches one or more of a set of
StringPatterns. |
| IClass |
A simplified equivalent to "java.lang.reflect".
|
| IClassLoader |
Loads an
IClass by type name. |
| Java |
This wrapper class defines classes that represent the elements of the Java programming language.
|
| Java.AbstractAnnotation |
Convenience class.
|
| Java.AbstractClassDeclaration |
Base for the various class declaration kinds.
|
| Java.AbstractPackageMemberClassDeclaration |
Base for the various package member (a.k.a.
|
| Java.AbstractTypeBodyDeclaration |
Abstract implementation of
Java.TypeBodyDeclaration. |
| Java.AbstractTypeDeclaration |
Abstract implementation of
Java.TypeDeclaration. |
| Java.AlternateConstructorInvocation |
Representation of a JLS7 8.8.7.1.
|
| Java.AmbiguousName |
Representation of a JLS7 6.5.2 'ambiguous name'.
|
| Java.AnonymousClassDeclaration |
Representation of a JLS7 15.9.5 'anonymous class declaration'.
|
| Java.ArrayAccessExpression |
Representation of a JLS7 15.13 'array access expression'.
|
| Java.ArrayInitializer |
Representation of a JLS7 10.6 'array initializer'.
|
| Java.ArrayLength |
Representation of the JLS7 10.7 array type 'length' pseudo-member.
|
| Java.ArrayType |
Representation of a JLS7 10.1 'array type'.
|
| Java.AssertStatement |
Representation of the JLS7 14.10 ASSERT statement.
|
| Java.Assignment |
Representation of all JLS7 15.26 assignments.
|
| Java.Atom | |
| Java.BinaryOperation |
Representation of all non-operand-modifying binary operations.
|
| Java.Block |
Representation of a Java "block" (JLS7 14.2).
|
| Java.BooleanLiteral |
Representation of a "boolean literal" (JLS7 3.10.3) (type
boolean). |
| Java.BooleanRvalue |
Base class for
Java.Rvalues that compile better as conditional branches. |
| Java.BreakableStatement |
Base class for statements that can be terminated abnormally with a
break statement. |
| Java.BreakStatement |
Representation of the JLS7 14.15 BREAK statement.
|
| Java.Cast |
Representation of a JLS7 15.16 'cast expression'.
|
| Java.CatchClause |
Representation of a JLS7 14.20.1 CATCH clause.
|
| Java.CharacterLiteral |
Representation of a "character literal" (JLS7 3.10.4) (type
char). |
| Java.ClassLiteral |
Representation of a JLS7 15.8.2 'class literal'.
|
| Java.CompilationUnit |
Holds the result of
Parser.parseCompilationUnit(). |
| Java.CompilationUnit.ImportDeclaration |
Base class for the various IMPORT declarations.
|
| Java.CompilationUnit.SingleStaticImportDeclaration |
Represents a single static import declaration like
import java.util.Collections.EMPTY_MAP;
|
| Java.CompilationUnit.SingleTypeImportDeclaration |
Represents a 'single-type import declaration' like '
import java.util.Map;'. |
| Java.CompilationUnit.StaticImportOnDemandDeclaration |
Represents a static-import-on-demand declaration like
import java.util.Collections.*;
|
| Java.CompilationUnit.TypeImportOnDemandDeclaration |
Represents a type-import-on-demand declaration like
import java.util.*;. |
| Java.ConditionalExpression |
Representation of a JLS7 15.25 'conditional operation'.
|
| Java.ConstructorDeclarator |
Representation of a constructor declarator.
|
| Java.ConstructorInvocation |
Abstract bas class for
Java.SuperConstructorInvocation and Java.AlternateConstructorInvocation. |
| Java.ContinuableStatement |
Base class for statements that support the 'continue' statement.
|
| Java.ContinueStatement |
Representation of the JLS7 14.16 CONTINUE statement.
|
| Java.Crement |
Representation of a JLS7 15.14.2 'postfix increment operation', a JLS7 15.14.3 'postfix decrement operation', a
JLS7 15.15.1 'prefix increment operation' or a JLS7 15.15.2 'prefix decrement operation'.
|
| Java.DoStatement |
Representation of a JLS7 14.13 DO statement.
|
| Java.ElementValueArrayInitializer |
An element value in the form of an array initializer, e.g.
|
| Java.ElementValuePair |
Representation of a 'name = value' element in a
Java.NormalAnnotation. |
| Java.EmptyStatement |
Representation of the "empty statement", i.e. the blank semicolon.
|
| Java.EnclosingScopeOfTypeDeclaration |
Lazily determines and returns the enclosing
Java.Scope of the given Java.TypeDeclaration. |
| Java.EnumConstant |
Representation of an "enum constant", see JLS7 8.9.1.
|
| Java.ExpressionStatement |
Representation of the JLS7 14.8 'expression statement'.
|
| Java.FieldAccess |
Representation of an access to a field of a class or an interface.
|
| Java.FieldAccessExpression |
Representation of a JLS7 15.11 'field access expression', including the "array length" pseudo field access.
|
| Java.FieldDeclaration |
This class is derived from "Statement", because it provides for the initialization of the field.
|
| Java.FloatingPointLiteral |
Representation of a "floating-point literal" (JLS7 3.10.2) (types
float and double). |
| Java.ForEachStatement |
Representation of a JLS7 14.14.2 'enhanced FOR statement'.
|
| Java.ForStatement |
Representation of a JLS7 14.14.1 'basic FOR statement'.
|
| Java.FunctionDeclarator |
Abstract base class for
Java.ConstructorDeclarator and Java.MethodDeclarator. |
| Java.FunctionDeclarator.FormalParameter |
Representation of a (formal) function parameter.
|
| Java.FunctionDeclarator.FormalParameters |
Representation of the (formal) function parameters.
|
| Java.IfStatement |
Representation of a JLS7 14.9 IF statement.
|
| Java.Initializer |
Representation of an 'instance initializer' (JLS7 8.6) or 'static initializer' (JLS7 8.7).
|
| Java.Instanceof |
Representation of a JLS7 15.20.2 'type comparison operation'.
|
| Java.IntegerLiteral |
Representation of an "integer literal" (JLS7 3.10.1) (types
int and long). |
| Java.InterfaceDeclaration |
Base for the various interface declaration kinds.
|
| Java.Invocation |
Abstract base class for
Java.MethodInvocation and Java.SuperclassMethodInvocation. |
| Java.LabeledStatement |
Representation of a JLS7 14.7 'labeled statement'.
|
| Java.Literal |
Abstract base class for the various Java literals; see JLS7 3.10.
|
| Java.LocalClassDeclaration |
Representation of a 'local class declaration' i.e. a class declaration that appears inside a method body.
|
| Java.LocalClassDeclarationStatement |
Representation of the JLS7 14.3 'local class declaration statement'.
|
| Java.LocalVariable |
Representation of a local variable while it is in scope during compilation.
|
| Java.LocalVariableAccess |
Representation of a local variable access -- used during compilation.
|
| Java.LocalVariableDeclarationStatement |
Representation of a JLS7 14.4 'local variable declaration statement'.
|
| Java.LocalVariableSlot |
All local variables have a slot number; local variables that get written into the 'localvariabletable'
also have a start and end offset that defines the variable's extent in the bytecode.
|
| Java.Located |
Abstract implementation of
Java.Locatable. |
| Java.Lvalue |
Representation of an "lvalue", i.e. an expression that has a type and a value, and can be assigned to: An
expression that can be the left-hand-side of an assignment.
|
| Java.MarkerAnnotation |
Representation of a 'marker annotation', i.e. an annotation without any elements in parentheses.
|
| Java.MemberAnnotationTypeDeclaration |
Representation of a member annotation type declaration, a.k.a.
|
| Java.MemberClassDeclaration |
Representation of a 'member class declaration', i.e. a class declaration that appears inside another class or
interface declaration.
|
| Java.MemberEnumDeclaration |
Representation of a 'member enum declaration', i.e. an enum declaration that appears inside another class or
interface declaration.
|
| Java.MemberInterfaceDeclaration |
Representation of a 'member interface declaration', i.e. an interface declaration that appears inside another
class or interface declaration.
|
| Java.MethodDeclarator |
Representation of a method declarator.
|
| Java.MethodInvocation |
Representation of a JLS7 15.12 'method invocation expression'.
|
| Java.Modifiers |
Representation of the modifier flags and annotations that are associated with a declaration.
|
| Java.NamedClassDeclaration |
Base for the various named class declarations.
|
| Java.NewAnonymousClassInstance |
Representation of a JLS7 15.9 'anonymous class instance creation expression'.
|
| Java.NewArray |
Representation of a JLS7 15.10 'array creation expression'.
|
| Java.NewClassInstance |
Representation of a JLS7 'class instance creation expression'.
|
| Java.NewInitializedArray |
Representation of a JLS7 15.10 'array creation expression'.
|
| Java.NormalAnnotation |
A 'normal annotation', i.e. an annotation with multiple elements in parentheses and curly braces.
|
| Java.NullLiteral |
Representation of a "null literal" (JLS7 3.10.7).
|
| Java.Package |
Representation of a JLS7 6.5.2.1.5 'package name'.
|
| Java.PackageDeclaration |
Representation of a package declaration like
package com.acme.tools;. |
| Java.PackageMemberAnnotationTypeDeclaration |
Representation of a package member annotation type declaration, a.k.a.
|
| Java.PackageMemberClassDeclaration |
Implementation of a 'package member class declaration', a.k.a.
|
| Java.PackageMemberEnumDeclaration |
Implementation of a 'package member enum declaration', a.k.a.
|
| Java.PackageMemberInterfaceDeclaration |
Representation of a 'package member interface declaration', a.k.a.
|
| Java.ParameterAccess |
'Artificial' operation for accessing the parameters of the synthetic constructor of an anonymous class.
|
| Java.ParenthesizedExpression |
Representation of a JLS7 15.8.5 'parenthesized expression'.
|
| Java.PrimitiveType |
Representation of a JLS7 4.2 "primitive type", i.e a primitive type "usage", which has a location.
|
| Java.QualifiedThisReference |
Representation of an JLS7 15.8.4 access to the current object or an enclosing instance.
|
| Java.ReferenceType |
Representation of a JLS7 4.3 reference type.
|
| Java.ReturnStatement |
Representation of the JLS7 14.17 RETURN statement.
|
| Java.Rvalue |
Representation of an "rvalue", i.e. an expression that has a type and a value, but cannot be assigned to: An
expression that can be the right-hand-side of an assignment.
|
| Java.RvalueMemberType |
Representation of the first part of a JLS7 15.9 'Qualified class instance creation expression': The 'a.new
MyClass' part of 'a.new MyClass(...)'.
|
| Java.SimpleConstant |
This class is not used when code is parsed; it is intended for "programmatic" literals.
|
| Java.SimpleType |
This class is not used when code is parsed; it is intended for "programmatic" types.
|
| Java.SingleElementAnnotation |
Representation of a 'single-element annotation', i.e. an annotation followed by a single element in parentheses.
|
| Java.Statement |
Everything that can occur in the body of a method or in a block.
|
| Java.StringLiteral |
Representation of a "string literal" (JLS7 3.10.5) (type
String). |
| Java.SuperclassFieldAccessExpression |
Representation of an JLS7 'superclass field access expression', e.g.
|
| Java.SuperclassMethodInvocation |
Representation of a JLS7 15.12.1.1.3 'superclass method invocation'.
|
| Java.SuperConstructorInvocation |
Representation of a JLS7 8.8.7.1.
|
| Java.SwitchStatement |
The JLS7 14.10
switch Statement. |
| Java.SwitchStatement.SwitchBlockStatementGroup |
Representation of a 'switch block statement group' as defined in JLS7 14.11.
|
| Java.SynchronizedStatement |
Representation of a JLS7 14.9 SYNCHRONIZED statement.
|
| Java.ThisReference |
Representation of an JLS7 15.8.3 access to the innermost enclosing instance.
|
| Java.ThrowStatement |
Representation of a JLS7 14.18 THROW statement.
|
| Java.TryStatement |
Representation of a JLS7 14.20 TRY statement.
|
| Java.Type |
Representation of a Java type.
|
| Java.TypeParameter |
Representation of a type parameter (which declares a type variable).
|
| Java.UnaryOperation |
Representation of a JLS7 15.15.3 'unary plus operator', a JLS7 15.15.4 'unary minus operator', a JLS7 15.15.5
'bitwise complement operator' or a JLS7 15.15.6 'logical complement operator'.
|
| Java.VariableDeclarator |
Used by FieldDeclaration and LocalVariableDeclarationStatement.
|
| Java.WhileStatement |
Representation of the JLS7 14.2 WHILE statement.
|
| Java.Wildcard |
Representation of a JLS7 4.5.1 'wildcard'.
|
| JavaSourceClassLoader |
A
ClassLoader that, unlike usual ClassLoaders, does not load byte code, but reads Java source code
and then scans, parses, compiles and loads it into the virtual machine. |
| JavaSourceIClassLoader |
This
IClassLoader finds, scans and parses compilation units. |
| MethodDescriptor |
Representation of a "method descriptor" (JVMS 4.3.3).
|
| Mod |
This class defines constants and convenience methods for the handling of modifiers as defined by the JVM.
|
| Parser |
A parser for the Java programming language.
|
| ResourceFinderIClassLoader | |
| Scanner |
Splits up a character stream into tokens and returns them as
String objects. |
| ScriptEvaluator |
An implementation of
IScriptEvaluator that utilizes the JANINO Java compiler. |
| SimpleCompiler |
To set up a
SimpleCompiler object, proceed as described for ISimpleCompiler. |
| UnicodeUnescapeReader |
A
FilterReader that unescapes the "Unicode Escapes" as described in JLS7 3.10.6. |
| UnitCompiler |
This class actually implements the Java compiler.
|
| UnitCompiler.SimpleIField |
Short-hand implementation of
IClass.IField that implements a non-constant, non-static,
package-accessible field. |
| Unparser |
Unparses (un-compiles) an AST to a
Writer. |
| Visitor |
The basis for the "visitor" pattern as described in "Gamma, Helm, Johnson, Vlissides: Design Patterns".
|
| Enum | Description |
|---|---|
| Access |
Return value for
IClass.IMember.getAccess(). |
| Java.Primitive |
Java's primitive types.
|
| Parser.ClassDeclarationContext |
The kinds of context where a class declaration can occur.
|
| Parser.InterfaceDeclarationContext |
The kinds of context where an interface declaration can occur.
|
| Scanner.TokenType |
Enumeration of the types of tokens that this scanner produces.
|
| Exception | Description |
|---|---|
| JaninoRuntimeException |
All Janino components that throw
RuntimeException throw this subclass to allow for client libraries to
intercept them more easily. |
| UnicodeUnescapeException |
Represents a problem that occurred while unescaping a unicode escape sequence through a
UnicodeUnescapeReader. |
The package comprises a scanner (Scanner, a parser (Parser)
and a class file library. The parser builds a syntax tree from the "Java.*" classes that represents the parsed
code. The UnitCompiler.compileUnit(boolean, boolean, boolean) method compiles this syntax tree into a ClassFile object, which can write JavaTM bytecode to an "OutputStream".
This package implements the org.codehaus.commons.compiler API.