private short |
UnitCompiler.accessFlags(Java.Modifier[] modifiers) |
|
private void |
UnitCompiler.addFields(Java.FieldDeclaration fd,
ClassFile cf) |
|
private Java.Modifier[] |
Parser.annotationTypeElementModifiers(Java.Modifier[] modifiers) |
|
private java.lang.Object |
UnitCompiler.assignmentConversion(Java.Locatable locatable,
java.lang.Object value,
IType targetType) |
Implements "assignment conversion" (JLS7 5.2) on a constant value.
|
private void |
UnitCompiler.assignmentConversion(Java.Locatable locatable,
IType sourceType,
IType targetType,
java.lang.Object constantValue) |
Implements "assignment conversion" (JLS7 5.2).
|
(package private) void |
UnitCompiler.assignSyntheticParametersToSyntheticFields(Java.ConstructorDeclarator cd) |
Copies the values of the synthetic parameters of this constructor ("this$..." and "val$...") to the synthetic
fields of the object ("this$..." and "val$...").
|
private IClass |
UnitCompiler.binaryNumericPromotionType(Java.Locatable locatable,
IType type1,
IType type2) |
|
private void |
UnitCompiler.boxingConversion(Java.Locatable locatable,
IType sourceType,
IType targetType) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.Block block,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private java.util.Map<java.lang.String,Java.LocalVariable> |
UnitCompiler.buildLocalVariableMap(Java.BlockStatement blockStatement,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
Computes and fills in the 'local variable map' for the given blockStatement.
|
protected void |
UnitCompiler.buildLocalVariableMap(Java.CatchClause catchClause,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
Adds the given localVars to the 'local variable map' of the given catchClause.
|
private void |
UnitCompiler.buildLocalVariableMap(Java.DoStatement ds,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.ForEachStatement fes,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.ForStatement fs,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.FunctionDeclarator fd) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.IfStatement is,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.Initializer i,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private java.util.Map<java.lang.String,Java.LocalVariable> |
UnitCompiler.buildLocalVariableMap(Java.LabeledStatement ls,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private java.util.Map<java.lang.String,Java.LocalVariable> |
UnitCompiler.buildLocalVariableMap(Java.LocalVariableDeclarationStatement lvds,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.SwitchStatement ss,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.SynchronizedStatement ss,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.TryStatement ts,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.buildLocalVariableMap(Java.WhileStatement ws,
java.util.Map<java.lang.String,Java.LocalVariable> localVars) |
|
private void |
UnitCompiler.castConversion(Java.Locatable locatable,
IType sourceType,
IType targetType,
java.lang.Object constantValue) |
|
private void |
UnitCompiler.checkAccessible(IClass.IMember member,
Java.Scope contextScope,
Location location) |
Checks whether the given IClass.IMember is accessible in the given context, according to JLS7
6.6.1.BL1.B4.
|
private void |
UnitCompiler.checkAccessible(IClass type,
Java.Scope contextScope,
Location location) |
Checks whether the given IClass is accessible in the given context, according to JLS7 6.6.1.2 and
6.6.1.4.
|
private void |
UnitCompiler.checkForConflictWithSingleTypeImport(java.lang.String name,
Location location) |
|
private void |
UnitCompiler.checkForNameConflictWithAnotherPackageMemberTypeDeclaration(Java.PackageMemberTypeDeclaration pmtd) |
|
private void |
UnitCompiler.checkMemberAccessible(IClass iClassDeclaringMember,
IClass.IMember member,
Java.Scope contextScope,
Location location) |
Verifies that a member (class, interface, field or method) declared in a given class is accessible from a given
block statement context, according to JLS7 6.6.1.4.
|
private Java.Modifier[] |
Parser.checkModifiers(Java.Modifier[] modifiers,
java.lang.String... allowedKeywords) |
Verifies that the modifiers are consistent.
|
private void |
UnitCompiler.checkThrownException(Java.Locatable locatable,
IType type,
Java.Scope scope) |
|
private void |
UnitCompiler.checkThrownExceptions(Java.Invocation in,
IClass.IMethod iMethod) |
|
private Java.Modifier[] |
Parser.classModifiers(Java.Modifier[] modifiers) |
|
private IType |
UnitCompiler.commonSupertype(IType t1,
IType t2) |
|
private IType |
UnitCompiler.commonSupertype2(IType t1,
IType t2) |
|
void |
Compiler.compile(Resource[] sourceResources) |
|
void |
UnitCompiler.Compilable.compile() |
|
boolean |
UnitCompiler.Compilable2.compile() |
|
private boolean |
UnitCompiler.compile(Java.BlockStatement bs) |
|
private void |
UnitCompiler.compile(Java.FunctionDeclarator fd,
ClassFile classFile) |
|
private void |
UnitCompiler.compile(Java.Rvalue rv) |
Some Java.Rvalue s compile more efficiently when their value is not needed, e.g.
|
private void |
UnitCompiler.compile(Java.TypeDeclaration td) |
|
private void |
UnitCompiler.compile2(Java.AbstractClassDeclaration cd) |
|
private boolean |
UnitCompiler.compile2(Java.AlternateConstructorInvocation aci) |
|
private void |
UnitCompiler.compile2(Java.AnonymousClassDeclaration acd) |
|
private boolean |
UnitCompiler.compile2(Java.AssertStatement as) |
|
private void |
UnitCompiler.compile2(Java.Assignment a) |
|
private boolean |
UnitCompiler.compile2(Java.Block b) |
|
private boolean |
UnitCompiler.compile2(Java.BreakStatement bs) |
|
private void |
UnitCompiler.compile2(Java.CompilationUnit cu) |
Compiles an (ordinary, not modular) compilation unit
|
private boolean |
UnitCompiler.compile2(Java.ContinueStatement cs) |
|
private void |
UnitCompiler.compile2(Java.Crement c) |
|
private boolean |
UnitCompiler.compile2(Java.DoStatement ds) |
|
private boolean |
UnitCompiler.compile2(Java.ExpressionStatement ee) |
|
private boolean |
UnitCompiler.compile2(Java.FieldDeclaration fd) |
|
private boolean |
UnitCompiler.compile2(Java.ForEachStatement fes) |
|
private boolean |
UnitCompiler.compile2(Java.ForStatement fs) |
|
private void |
UnitCompiler.compile2(Java.FunctionDeclarator fd,
ClassFile classFile) |
|
private boolean |
UnitCompiler.compile2(Java.IfStatement is) |
|
private boolean |
UnitCompiler.compile2(Java.Initializer i) |
|
private void |
UnitCompiler.compile2(Java.InnerClassDeclaration icd) |
|
private void |
UnitCompiler.compile2(Java.InterfaceDeclaration id) |
|
private boolean |
UnitCompiler.compile2(Java.LabeledStatement ls) |
|
private void |
UnitCompiler.compile2(Java.LocalClassDeclaration lcd) |
|
private boolean |
UnitCompiler.compile2(Java.LocalClassDeclarationStatement lcds) |
|
private boolean |
UnitCompiler.compile2(Java.LocalVariableDeclarationStatement lvds) |
|
private void |
UnitCompiler.compile2(Java.ModularCompilationUnit mcu) |
|
private void |
UnitCompiler.compile2(Java.PackageMemberClassDeclaration pmcd) |
Compiles a top-level class or enum declaration.
|
private void |
UnitCompiler.compile2(Java.PackageMemberInterfaceDeclaration pmid) |
Compiles a top-level interface or annotation type declaration.
|
private void |
UnitCompiler.compile2(Java.ParenthesizedExpression pe) |
|
private boolean |
UnitCompiler.compile2(Java.ReturnStatement rs) |
|
private void |
UnitCompiler.compile2(Java.Rvalue rv) |
|
private boolean |
UnitCompiler.compile2(Java.SuperConstructorInvocation sci) |
|
private boolean |
UnitCompiler.compile2(Java.SwitchStatement ss) |
|
private boolean |
UnitCompiler.compile2(Java.SynchronizedStatement ss) |
|
private boolean |
UnitCompiler.compile2(Java.ThrowStatement ts) |
|
private boolean |
UnitCompiler.compile2(Java.TryStatement ts) |
|
private boolean |
UnitCompiler.compile2(Java.WhileStatement ws) |
|
private void |
UnitCompiler.compileAnnotations(Java.Annotation[] annotations,
Annotatable target,
ClassFile cf) |
Converts and adds the annotations to the target.
|
private IType |
UnitCompiler.compileArithmeticBinaryOperation(Java.Locatable locatable,
IType lhsType,
java.lang.String operator,
Java.Rvalue rhs) |
The LHS operand of type lhsType is expected on the stack.
|
private IType |
UnitCompiler.compileArithmeticOperation(Java.Locatable locatable,
IType firstOperandType,
java.util.Iterator<Java.Rvalue> operands,
java.lang.String operator) |
Executes an arithmetic operation on a sequence of operands.
|
private void |
UnitCompiler.compileBoolean(Java.Rvalue rv,
CodeContext.Offset dst,
boolean orientation) |
Compiles an Java.Rvalue and branches, depending on the value.
|
private void |
UnitCompiler.compileBoolean2(Java.BinaryOperation bo,
CodeContext.Offset dst,
boolean orientation) |
|
private void |
UnitCompiler.compileBoolean2(Java.ParenthesizedExpression pe,
CodeContext.Offset dst,
boolean orientation) |
|
private void |
UnitCompiler.compileBoolean2(Java.Rvalue rv,
CodeContext.Offset dst,
boolean orientation) |
|
private void |
UnitCompiler.compileBoolean2(Java.UnaryOperation ue,
CodeContext.Offset dst,
boolean orientation) |
|
private int |
UnitCompiler.compileContext(Java.Rvalue rv) |
Generates code that determines the context of the Java.Rvalue and puts it on the operand stack.
|
private int |
UnitCompiler.compileContext2(Java.AmbiguousName an) |
|
private int |
UnitCompiler.compileContext2(Java.ArrayAccessExpression aae) |
Array access expression; see JLS7 15.13 / JLS8+ 15.10.3.
|
private int |
UnitCompiler.compileContext2(Java.ArrayLength al) |
|
private int |
UnitCompiler.compileContext2(Java.FieldAccess fa) |
|
private int |
UnitCompiler.compileContext2(Java.FieldAccessExpression fae) |
|
private int |
UnitCompiler.compileContext2(Java.ParenthesizedExpression pe) |
|
private int |
UnitCompiler.compileContext2(Java.SuperclassFieldAccessExpression scfae) |
|
private void |
UnitCompiler.compileDeclaredMemberTypes(Java.TypeDeclaration decl,
ClassFile cf) |
Compiles all of the types for this declaration
|
private void |
UnitCompiler.compileDeclaredMethods(Java.TypeDeclaration typeDeclaration,
ClassFile cf) |
Compiles all of the methods for this declaration
|
private void |
UnitCompiler.compileDeclaredMethods(Java.TypeDeclaration typeDeclaration,
ClassFile cf,
int startPos) |
Compiles methods for this declaration starting at startPos.
|
private ClassFile.ElementValue |
UnitCompiler.compileElementValue(Java.ElementValue elementValue,
ClassFile cf) |
|
private void |
UnitCompiler.compileError(java.lang.String message) |
|
private void |
UnitCompiler.compileError(java.lang.String message,
Location location) |
Issues a compile error with the given message.
|
private IType |
UnitCompiler.compileGet(Java.Rvalue rv) |
Generates code that determines the value of the Java.Rvalue and puts it on the operand stack.
|
private IType |
UnitCompiler.compileGet2(Java.AmbiguousName an) |
|
private IType |
UnitCompiler.compileGet2(Java.ArrayAccessExpression aae) |
|
private IClass |
UnitCompiler.compileGet2(Java.ArrayCreationReference acr) |
|
private IType |
UnitCompiler.compileGet2(Java.Assignment a) |
|
private IType |
UnitCompiler.compileGet2(Java.BinaryOperation bo) |
|
private IClass |
UnitCompiler.compileGet2(Java.BooleanRvalue brv) |
|
private IType |
UnitCompiler.compileGet2(Java.Cast c) |
|
private IClass |
UnitCompiler.compileGet2(Java.ClassInstanceCreationReference cicr) |
|
private IClass |
UnitCompiler.compileGet2(Java.ClassLiteral cl) |
|
private IType |
UnitCompiler.compileGet2(Java.ConditionalExpression ce) |
|
private IType |
UnitCompiler.compileGet2(Java.Crement c) |
|
private IType |
UnitCompiler.compileGet2(Java.FieldAccess fa) |
|
private IType |
UnitCompiler.compileGet2(Java.FieldAccessExpression fae) |
|
private IClass |
UnitCompiler.compileGet2(Java.Instanceof io) |
|
private IClass |
UnitCompiler.compileGet2(Java.LambdaExpression le) |
|
private IClass |
UnitCompiler.compileGet2(Java.Literal l) |
|
private IClass |
UnitCompiler.compileGet2(Java.MethodInvocation mi) |
|
private IClass |
UnitCompiler.compileGet2(Java.MethodReference mr) |
|
private IClass |
UnitCompiler.compileGet2(Java.NewAnonymousClassInstance naci) |
|
private IClass |
UnitCompiler.compileGet2(Java.NewArray na) |
|
private IType |
UnitCompiler.compileGet2(Java.NewClassInstance nci) |
|
private IType |
UnitCompiler.compileGet2(Java.NewInitializedArray nia) |
|
private IType |
UnitCompiler.compileGet2(Java.ParameterAccess pa) |
|
private IType |
UnitCompiler.compileGet2(Java.ParenthesizedExpression pe) |
|
private IType |
UnitCompiler.compileGet2(Java.QualifiedThisReference qtr) |
|
private IClass |
UnitCompiler.compileGet2(Java.SimpleConstant sl) |
|
private IType |
UnitCompiler.compileGet2(Java.SuperclassFieldAccessExpression scfae) |
|
private IClass |
UnitCompiler.compileGet2(Java.SuperclassMethodInvocation scmi) |
|
private IClass |
UnitCompiler.compileGet2(Java.ThisReference tr) |
|
private IClass |
UnitCompiler.compileGet2(Java.UnaryOperation uo) |
|
private void |
UnitCompiler.compileGetValue(Java.ArrayInitializer ai,
IType arrayType) |
|
private IType |
UnitCompiler.compileGetValue(Java.Rvalue rv) |
|
private void |
UnitCompiler.compileSet(Java.Lvalue lv) |
|
private void |
UnitCompiler.compileSet2(Java.AmbiguousName an) |
|
private void |
UnitCompiler.compileSet2(Java.ArrayAccessExpression aae) |
|
private void |
UnitCompiler.compileSet2(Java.FieldAccess fa) |
|
private void |
UnitCompiler.compileSet2(Java.FieldAccessExpression fae) |
|
private void |
UnitCompiler.compileSet2(Java.ParenthesizedExpression pe) |
|
private void |
UnitCompiler.compileSet2(Java.SuperclassFieldAccessExpression scfae) |
|
private boolean |
UnitCompiler.compileStatements(java.util.List<? extends Java.BlockStatement> statements) |
|
private IClass |
UnitCompiler.compileStringConcatenation(Java.Locatable locatable,
IType type,
Java.Rvalue secondOperand,
java.util.Iterator<Java.Rvalue> operands) |
|
protected java.lang.ClassLoader |
SimpleCompiler.compileToClassLoader(Java.AbstractCompilationUnit abstractCompilationUnit) |
Compiles the given compilation unit.
|
private boolean |
UnitCompiler.compileTryCatch(Java.TryStatement tryStatement,
UnitCompiler.Compilable2 compileBody,
CodeContext.Offset beginningOfBody,
CodeContext.Offset afterStatement) |
Generates code for a TRY statement without resources and without a FINALLY clause.
|
private boolean |
UnitCompiler.compileTryCatchFinally(Java.TryStatement ts,
UnitCompiler.Compilable2 compileBody,
Java.BlockStatement finallY) |
Generates code for a TRY statement without resources, but with an (optional) FINALLY clause.
|
private boolean |
UnitCompiler.compileTryCatchFinallyWithResources(Java.TryStatement ts,
java.util.List<Java.TryStatement.Resource> resources,
UnitCompiler.Compilable2 compileBody,
Java.Block finallY) |
Generates code for a TRY statement with (possibly zero) resources and an (optional) FINALLY clause.
|
private boolean |
UnitCompiler.compileUnconditionalLoop(Java.ContinuableStatement cs,
Java.BlockStatement body,
Java.Rvalue[] update) |
|
private boolean |
UnitCompiler.compileUnconditionalLoopWithUpdate(Java.ContinuableStatement cs,
Java.BlockStatement body,
Java.Rvalue[] update) |
|
ClassFile[] |
UnitCompiler.compileUnit(boolean debugSource,
boolean debugLines,
boolean debugVars) |
Generates an array of ClassFile objects which represent the classes and interfaces declared in the
compilation unit.
|
private IClass |
UnitCompiler.consT(Java.Locatable locatable,
java.lang.Object value) |
|
private Java.Modifier[] |
Parser.constantModifiers(Java.Modifier[] modifiers) |
|
private Java.Modifier[] |
Parser.constructorModifiers(Java.Modifier[] modifiers) |
|
private IClass |
UnitCompiler.convertToPrimitiveNumericType(Java.Locatable locatable,
IType type) |
If the given type is a primitive type, return that type.
|
void |
ClassBodyEvaluator.cook(java.lang.String fileName,
java.io.Reader r) |
|
(package private) void |
ClassBodyEvaluator.cook(Java.CompilationUnit compilationUnit) |
|
void |
ClassBodyEvaluator.cook(Scanner scanner) |
|
void |
ExpressionEvaluator.cook(java.lang.String[] fileNames,
java.io.Reader[] readers) |
|
void |
ExpressionEvaluator.cook(java.lang.String fileName,
java.io.Reader reader) |
|
void |
ExpressionEvaluator.cook(Parser... parsers) |
|
void |
ExpressionEvaluator.cook(Scanner scanner) |
|
void |
ExpressionEvaluator.cook(Scanner... scanners) |
|
void |
ScriptEvaluator.cook(java.lang.String[] fileNames,
java.io.Reader[] readers) |
On a 2 GHz Intel Pentium Core Duo under Windows XP with an IBM 1.4.2 JDK, compiling 10000 expressions "a + b"
(integer) takes about 4 seconds and 56 MB of main memory.
|
void |
ScriptEvaluator.cook(java.lang.String fileName,
java.io.Reader reader) |
|
(package private) void |
ScriptEvaluator.cook(java.lang.String fileName,
Java.AbstractCompilationUnit.ImportDeclaration[] importDeclarations,
Java.BlockStatement[][] statementss,
Java.MethodDeclarator[][] localMethodss) |
|
protected void |
ScriptEvaluator.cook(Java.CompilationUnit compilationUnit) |
Compiles the given compilationUnit, defines it into a ClassLoader , loads the generated class,
gets the script methods from that class, and makes them available through ScriptEvaluator.getMethod(int) .
|
void |
ScriptEvaluator.cook(Java.CompilationUnit compilationUnit,
java.util.Collection<Java.MethodDeclarator> methodDeclarators) |
|
void |
ScriptEvaluator.cook(Parser[] parsers) |
|
void |
ScriptEvaluator.cook(Scanner... scanners) |
Cooks a set of scripts into one class.
|
void |
SimpleCompiler.cook(java.lang.String fileName,
java.io.Reader r) |
Scans, parses and compiles a given compilation unit from the given Reader .
|
void |
SimpleCompiler.cook(Java.AbstractCompilationUnit abstractCompilationUnit) |
Cooks this compilation unit directly.
|
void |
SimpleCompiler.cook(Scanner scanner) |
Scans, parses and compiles a given compilation unit from the given scanner.
|
static java.lang.Object |
ClassBodyEvaluator.createFastClassBodyEvaluator(Scanner scanner,
java.lang.Class<?> baseType,
java.lang.ClassLoader parentClassLoader) |
Deprecated.
|
static java.lang.Object |
ClassBodyEvaluator.createFastClassBodyEvaluator(Scanner scanner,
java.lang.String className,
java.lang.Class<?> extendedClass,
java.lang.Class<?>[] implementedInterfaces,
java.lang.ClassLoader parentClassLoader) |
Deprecated.
|
<T> T |
ExpressionEvaluator.createFastEvaluator(java.io.Reader reader,
java.lang.Class<? extends T> interfaceToImplement,
java.lang.String... parameterNames) |
|
<T> T |
ExpressionEvaluator.createFastEvaluator(java.lang.String script,
java.lang.Class<? extends T> interfaceToImplement,
java.lang.String... parameterNames) |
|
<T> T |
ExpressionEvaluator.createFastEvaluator(Scanner scanner,
java.lang.Class<T> interfaceToImplement,
java.lang.String... parameterNames) |
Notice: This method is not declared in IScriptEvaluator , and is hence only available in this
implementation of org.codehaus.commons.compiler .
|
<T> T |
ScriptEvaluator.createFastEvaluator(java.io.Reader reader,
java.lang.Class<T> interfaceToImplement,
java.lang.String[] parameterNames) |
|
<T> T |
ScriptEvaluator.createFastEvaluator(java.lang.String script,
java.lang.Class<T> interfaceToImplement,
java.lang.String[] parameterNames) |
|
<T> T |
ScriptEvaluator.createFastEvaluator(Scanner scanner,
java.lang.Class<?> interfaceToImplement,
java.lang.String[] parameterNames) |
Notice: This method is not declared in IScriptEvaluator , and is hence only available in this
implementation of org.codehaus.commons.compiler .
|
static java.lang.Object |
ExpressionEvaluator.createFastExpressionEvaluator(java.lang.String expression,
java.lang.Class<?> interfaceToImplement,
java.lang.String[] parameterNames,
java.lang.ClassLoader parentClassLoader) |
Deprecated.
|
static java.lang.Object |
ExpressionEvaluator.createFastExpressionEvaluator(Scanner scanner,
java.lang.String[] defaultImports,
java.lang.String className,
java.lang.Class<?> extendedType,
java.lang.Class<?> interfaceToImplement,
java.lang.String[] parameterNames,
java.lang.ClassLoader parentClassLoader) |
Deprecated.
|
static java.lang.Object |
ExpressionEvaluator.createFastExpressionEvaluator(Scanner scanner,
java.lang.String className,
java.lang.Class<?> extendedType,
java.lang.Class<?> interfaceToImplement,
java.lang.String[] parameterNames,
java.lang.ClassLoader parentClassLoader) |
Deprecated.
|
static java.lang.Object |
ScriptEvaluator.createFastScriptEvaluator(java.lang.String script,
java.lang.Class<?> interfaceToImplement,
java.lang.String[] parameterNames) |
Deprecated.
|
static java.lang.Object |
ScriptEvaluator.createFastScriptEvaluator(Scanner scanner,
java.lang.Class<?> interfaceToImplement,
java.lang.String[] parameterNames,
java.lang.ClassLoader parentClassLoader) |
Deprecated.
|
static java.lang.Object |
ScriptEvaluator.createFastScriptEvaluator(Scanner scanner,
java.lang.String[] defaultImports,
java.lang.String className,
java.lang.Class<?> extendedClass,
java.lang.Class<?> interfaceToImplement,
java.lang.String[] parameterNames,
java.lang.ClassLoader parentClassLoader) |
Deprecated.
|
static java.lang.Object |
ScriptEvaluator.createFastScriptEvaluator(Scanner scanner,
java.lang.String className,
java.lang.Class<?> extendedType,
java.lang.Class<?> interfaceToImplement,
java.lang.String[] parameterNames,
java.lang.ClassLoader parentClassLoader) |
Deprecated.
|
java.lang.Object |
ClassBodyEvaluator.createInstance(java.io.Reader reader) |
|
void |
Java.AbstractClassDeclaration.defineSyntheticField(IClass.IField iField) |
|
void |
Java.InnerClassDeclaration.defineSyntheticField(IClass.IField iField) |
Inner classes have zero or more synthetic fields that hold references to their enclosing context:
this$<em>n</em>
(Mandatory for non-private non-static member classes; optional for private non-static
member classes, local classes in non-static context, and anonymous classes in
non-static context; forbidden for static member classes, local classes in static
context, and anonymous classes in static context)
Holds a reference to the immediately enclosing instance.
|
private Java.Rvalue |
UnitCompiler.determineValue(Java.FieldAccessExpression fae) |
|
private Java.Rvalue |
UnitCompiler.determineValue(Java.SuperclassFieldAccessExpression scfae) |
"super.fld", "Type.super.fld"
|
private Java.Modifier[] |
Parser.enumConstantModifiers(Java.Modifier[] modifiers) |
|
private boolean |
UnitCompiler.fakeCompile(Java.BlockStatement bs) |
Called to check whether the given Java.Rvalue compiles or not.
|
private void |
UnitCompiler.fakeCompile(Java.Rvalue rv) |
Called to check whether the given Java.Rvalue compiles or not.
|
private void |
UnitCompiler.fakeCompileVariableDeclaratorsAndInitializers(Java.AbstractClassDeclaration cd) |
|
private IClass.IMethod |
UnitCompiler.fakeIMethod(IClass targetType,
java.lang.String name,
Java.Rvalue[] arguments) |
|
private Java.Modifier[] |
Parser.fieldModifiers(Java.Modifier[] modifiers) |
|
private ITypeVariableOrIClass |
ClassFileIClass.fieldTypeSignatureToITypeVariableOrIClass(SignatureParser.FieldTypeSignature fts) |
|
protected Java.AbstractCompilationUnit |
JavaSourceIClassLoader.findCompilationUnit(java.lang.String className) |
Finds the Java source file for the named class through the configured 'source resource finder' and parses it.
|
IClass.IConstructor |
IClass.findIConstructor(IClass[] parameterTypes) |
|
private IClass.IField |
UnitCompiler.findIField(IClass iClass,
java.lang.String name,
Location location) |
Finds a named field in the given IClass .
|
IClass.IMethod |
IClass.findIMethod(java.lang.String methodName,
IClass[] parameterTypes) |
|
private IClass.IMethod |
UnitCompiler.findIMethod(IType targetType,
Java.Invocation invocation) |
Finds a IClass.IMethod in the given targetType, its superclasses or superinterfaces which is
applicable with the given invocation.
|
IClass.IMethod |
UnitCompiler.findIMethod(Java.MethodInvocation mi) |
Finds methods of the mi. target named mi. methodName ,
examines the argument types and chooses the most specific method.
|
IClass.IMethod |
UnitCompiler.findIMethod(Java.SuperclassMethodInvocation superclassMethodInvocation) |
|
(package private) IClass[] |
IClass.findMemberType(java.lang.String name) |
If name is null , finds all IClass es visible in the scope of the current
class.
|
private void |
IClass.findMemberType(java.lang.String name,
java.util.Collection<IClass> result) |
|
private IClass |
UnitCompiler.findMemberType(IType iType,
java.lang.String name,
Java.TypeArgument[] typeArguments,
Location location) |
|
IClass.IInvocable |
UnitCompiler.findMostSpecificIInvocable(Java.Locatable locatable,
IClass.IInvocable[] iInvocables,
IClass[] argumentTypes,
boolean boxingPermitted,
Java.Scope contextScope) |
Determines the applicable invocables and choose the most specific invocable.
|
private IClass.IInvocable |
UnitCompiler.findMostSpecificIInvocable(Java.Locatable locatable,
IClass.IInvocable[] iInvocables,
Java.Rvalue[] arguments,
Java.Scope contextScope) |
Determines the arguments' types, determine the applicable invocables and choose the most specific invocable
and adjust arguments as needed (for varargs case).
|
private IClass |
UnitCompiler.findTypeByFullyQualifiedName(Location location,
java.lang.String[] identifiers) |
|
private IClass |
UnitCompiler.findTypeByName(Location location,
java.lang.String className) |
|
private void |
UnitCompiler.generateBridgeMethod(ClassFile cf,
IClass declaringIClass,
IClass.IMethod base,
IClass.IMethod override) |
Generates and compiles a bridge method with signature base that delegates to override.
|
private boolean |
UnitCompiler.generatesCode(Java.BlockStatement bs) |
|
private boolean |
UnitCompiler.generatesCode2(java.util.List<Java.BlockStatement> l) |
|
private boolean |
UnitCompiler.generatesCode2(Java.Block b) |
|
private boolean |
UnitCompiler.generatesCode2(Java.FieldDeclaration fd) |
|
private boolean |
UnitCompiler.generatesCode2(Java.Initializer i) |
|
IType |
IClass.IAnnotation.getAnnotationType() |
|
private ITypeVariableOrIClass[] |
ClassFileIClass.getBounds(SignatureParser.FormalTypeParameter ftp) |
|
ITypeVariableOrIClass[] |
ITypeVariable.getBounds() |
|
abstract java.lang.Object |
IClass.IField.getConstantValue() |
Returns the value of the field if it is a compile-time constant value, i.e.
|
java.lang.Object |
ReflectionIClass.ReflectionIField.getConstantValue() |
This implementation of IClass.IField.getConstantValue() is not completely correct:
It treats non-static fields as non-constant
Even fields with a non-constant initializer are identified as constant.
|
java.lang.Object |
UnitCompiler.getConstantValue(Java.Rvalue rv) |
Attempts to evaluate as a constant expression.
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.AmbiguousName an) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.BinaryOperation bo) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.Cast c) |
|
private char |
UnitCompiler.getConstantValue2(Java.CharacterLiteral cl) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.ConditionalExpression ce) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.FieldAccess fa) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.FloatingPointLiteral fpl) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.IntegerLiteral il) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.LocalVariableAccess lva) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.ParenthesizedExpression pe) |
|
private java.lang.String |
UnitCompiler.getConstantValue2(Java.StringLiteral sl) |
|
private java.lang.Object |
UnitCompiler.getConstantValue2(Java.UnaryOperation uo) |
|
IClass[] |
IClass.getDeclaredIClasses() |
Returns the classes and interfaces declared as members of the class (but not inherited classes and interfaces).
|
protected IClass[] |
ClassFileIClass.getDeclaredIClasses2() |
|
protected abstract IClass[] |
IClass.getDeclaredIClasses2() |
|
private Java.AbstractClassDeclaration |
UnitCompiler.getDeclaringClass(Java.QualifiedThisReference qtr) |
|
IClass |
IClass.getDeclaringIClass() |
|
protected IClass |
ClassFileIClass.getDeclaringIClass2() |
|
protected abstract IClass |
IClass.getDeclaringIClass2() |
|
private Java.TypeBodyDeclaration |
UnitCompiler.getDeclaringTypeBodyDeclaration(Java.QualifiedThisReference qtr) |
|
java.lang.String |
IClass.IField.getDescriptor() |
|
MethodDescriptor |
IClass.IInvocable.getDescriptor() |
Returns the method descriptor of this constructor or method.
|
MethodDescriptor |
IClass.IConstructor.getDescriptor2() |
|
abstract MethodDescriptor |
IClass.IInvocable.getDescriptor2() |
|
MethodDescriptor |
IClass.IMethod.getDescriptor2() |
|
java.lang.Object |
IClass.IAnnotation.getElementValue(java.lang.String name) |
Returns the value of the named element:
Boolean
Byte
Character
Double
Float
Integer
Long
Short
A primitive value
String
A string value
IClass.IField
An enum constant
IClass
A class literal
IClass.IAnnotation
An annotation
Object []
An array value
|
private void |
UnitCompiler.getfield(Java.Locatable locatable,
IClass.IField iField) |
|
IClass.IAnnotation[] |
IClass.getIAnnotations() |
|
protected IClass.IAnnotation[] |
ClassFileIClass.getIAnnotations2() |
|
protected IClass.IAnnotation[] |
IClass.getIAnnotations2() |
|
IClass.IAnnotation[] |
ReflectionIClass.getIAnnotations2() |
|
private IClass |
UnitCompiler.getIClass(Java.ThisReference tr) |
|
IClass.IMethod[] |
IClass.getIMethods() |
Returns all methods declared in the class or interface, its superclasses and its superinterfaces.
|
private void |
IClass.getIMethods(java.util.List<IClass.IMethod> result) |
|
void |
UnitCompiler.getIMethods(IClass type,
java.lang.String methodName,
java.util.List<IClass.IMethod> v) |
Adds all methods with the given methodName that are declared by the type, its superclasses
and all their superinterfaces to the result list v.
|
IClass[] |
IClass.getInterfaces() |
Returns the interfaces implemented by the class, respectively the superinterfaces of the interface, respectively
{ Cloneable , Serializable } for arrays.
|
private static IType[] |
UnitCompiler.getInterfaces(IType t1) |
|
protected IClass[] |
ClassFileIClass.getInterfaces2() |
|
protected abstract IClass[] |
IClass.getInterfaces2() |
|
ITypeVariable[] |
IClass.getITypeVariables() |
|
protected ITypeVariable[] |
ClassFileIClass.getITypeVariables2() |
|
protected abstract ITypeVariable[] |
IClass.getITypeVariables2() |
|
Java.LocalVariable |
UnitCompiler.getLocalVariable(Java.CatchParameter parameter) |
|
Java.LocalVariable |
UnitCompiler.getLocalVariable(Java.FunctionDeclarator.FormalParameter parameter) |
|
Java.LocalVariable |
UnitCompiler.getLocalVariable(Java.FunctionDeclarator.FormalParameter parameter,
boolean isVariableArityParameter) |
|
Java.LocalVariable |
UnitCompiler.getLocalVariable(Java.LocalVariableDeclarationStatement lvds,
Java.VariableDeclarator vd) |
|
(package private) Java.ArrayInitializerOrRvalue |
UnitCompiler.getNonConstantFinalInitializer(Java.FieldDeclaration fd,
Java.VariableDeclarator vd) |
|
IClass |
IClass.getOuterIClass() |
The following types have an "outer class":
Anonymous classes declared in a non-static method of a class
Local classes declared in a non-static method of a class
Non-static member classes
|
protected IClass |
ClassFileIClass.getOuterIClass2() |
|
protected abstract IClass |
IClass.getOuterIClass2() |
|
protected IClass |
ReflectionIClass.getOuterIClass2() |
|
IClass[] |
IClass.IInvocable.getParameterTypes() |
Returns the types of the parameters of this constructor or method.
|
abstract IClass[] |
IClass.IInvocable.getParameterTypes2() |
Opposed to the Constructor , there is no magic "this$0 " parameter.
|
IClass[] |
ReflectionIClass.ReflectionIConstructor.getParameterTypes2() |
|
private IClass |
UnitCompiler.getRawReferenceType(Location location,
java.lang.String simpleTypeName,
Java.Scope scope) |
|
private IClass |
UnitCompiler.getRawType(Java.Type t) |
|
private IType |
UnitCompiler.getReferenceType(Location location,
java.lang.String simpleTypeName,
Java.TypeArgument[] typeArguments,
Java.Scope scope) |
JLS7 6.5.5.1 Simple type name (single identifier)
|
private IType |
UnitCompiler.getReferenceType(Location location,
Java.Scope scope,
java.lang.String[] identifiers,
int n,
Java.TypeArgument[] typeArguments) |
|
abstract IClass |
IClass.IMethod.getReturnType() |
|
private IType |
UnitCompiler.getReturnType(Java.FunctionDeclarator fd) |
|
java.lang.String[] |
UnitCompiler.getSingleTypeImport(java.lang.String name,
Location location) |
Checks if the given simple name was imported through a single type import.
|
IClass |
IClass.getSuperclass() |
Returns the superclass of the class.
|
private static IType |
UnitCompiler.getSuperclass(IType type) |
|
protected IClass |
ClassFileIClass.getSuperclass2() |
|
protected abstract IClass |
IClass.getSuperclass2() |
|
private IType |
UnitCompiler.getTargetIType(Java.QualifiedThisReference qtr) |
|
IClass[] |
IClass.IInvocable.getThrownExceptions() |
Returns the types thrown by this constructor or method.
|
abstract IClass[] |
IClass.IInvocable.getThrownExceptions2() |
|
abstract IClass |
IClass.IField.getType() |
|
private IType |
UnitCompiler.getType(Java.Atom a) |
|
private IType |
UnitCompiler.getType(Java.Lvalue lv) |
|
private IType |
UnitCompiler.getType(Java.Rvalue rv) |
|
private IType |
UnitCompiler.getType(Java.Type t) |
|
private IType |
UnitCompiler.getType2(Java.AmbiguousName an) |
|
private IType |
UnitCompiler.getType2(Java.ArrayAccessExpression aae) |
|
private IClass |
UnitCompiler.getType2(Java.ArrayCreationReference acr) |
|
private IClass |
UnitCompiler.getType2(Java.ArrayType at) |
|
private IType |
UnitCompiler.getType2(Java.Assignment a) |
|
private IType |
UnitCompiler.getType2(Java.BinaryOperation bo) |
|
private IType |
UnitCompiler.getType2(Java.Cast c) |
|
private IClass |
UnitCompiler.getType2(Java.ClassInstanceCreationReference cicr) |
|
private IType |
UnitCompiler.getType2(Java.ConditionalExpression ce) |
|
private IClass |
UnitCompiler.getType2(Java.ConstructorInvocation ci) |
|
private IType |
UnitCompiler.getType2(Java.Crement c) |
|
private IType |
UnitCompiler.getType2(Java.FieldAccess fa) |
|
private IType |
UnitCompiler.getType2(Java.FieldAccessExpression fae) |
|
private IClass |
UnitCompiler.getType2(Java.LambdaExpression le) |
|
private IClass |
UnitCompiler.getType2(Java.MethodInvocation mi) |
|
private IClass |
UnitCompiler.getType2(Java.MethodReference mr) |
|
private IClass |
UnitCompiler.getType2(Java.NewArray na) |
|
private IType |
UnitCompiler.getType2(Java.NewClassInstance nci) |
|
private IType |
UnitCompiler.getType2(Java.NewInitializedArray nia) |
|
private IClass |
UnitCompiler.getType2(Java.Package p) |
|
private IType |
UnitCompiler.getType2(Java.ParameterAccess pa) |
|
private IType |
UnitCompiler.getType2(Java.ParenthesizedExpression pe) |
|
private IType |
UnitCompiler.getType2(Java.QualifiedThisReference qtr) |
|
private IType |
UnitCompiler.getType2(Java.ReferenceType rt) |
|
private IClass |
UnitCompiler.getType2(Java.RvalueMemberType rvmt) |
|
private IType |
UnitCompiler.getType2(Java.SuperclassFieldAccessExpression scfae) |
|
private IClass |
UnitCompiler.getType2(Java.SuperclassMethodInvocation scmi) |
|
private IClass |
UnitCompiler.getType2(Java.ThisReference tr) |
|
private IClass |
UnitCompiler.getType2(Java.UnaryOperation uo) |
|
private IType[] |
UnitCompiler.getTypes(Java.Type[] types) |
|
static java.lang.String[] |
ExpressionEvaluator.guessParameterNames(Scanner scanner) |
Guess the names of the parameters used in the given expression.
|
static java.lang.String[] |
ScriptEvaluator.guessParameterNames(Scanner scanner) |
Guesses the names of the parameters used in the given expression.
|
void |
FilterWarningHandler.handleWarning(java.lang.String handle,
java.lang.String message,
Location location) |
|
private boolean |
UnitCompiler.hasAnnotation(Java.FunctionDeclarator fd,
IClass annotationType) |
|
boolean |
IClass.hasIMethod(java.lang.String methodName,
IClass[] parameterTypes) |
|
boolean |
IClass.implementsInterface(IClass that) |
If this represents a class: Return true if this class directly or indirectly implements
that interface.
|
private java.util.List<java.lang.Object> |
UnitCompiler.importSingleStatic(java.lang.String simpleName) |
Imports a member class, member interface, static field or static method via the compilation unit's single
static import declarations.
|
private IClass |
UnitCompiler.importSingleType(java.lang.String simpleTypeName,
Location location) |
If the given name was declared in a simple type import, load that class.
|
private void |
UnitCompiler.importStatic(IClass declaringIClass,
java.lang.String simpleName,
java.util.Collection<java.lang.Object> result,
Location location) |
Finds all members (member classes, member interfaces, static fields and/or static methods) of the
declaringIClass with the given simpleName and adds them to the result.
|
private java.util.List<java.lang.Object> |
UnitCompiler.importStaticOnDemand(java.lang.String simpleName) |
Imports a member class or interface, static field or static method via the compilation unit's static import
on-demand declarations.
|
IClass |
UnitCompiler.importTypeOnDemand(java.lang.String simpleTypeName,
Location location) |
6.5.2.BL1.B1.B5, 6.5.2.BL1.B1.B6 Type-import-on-demand.
6.5.5.1.6 Type-import-on-demand declaration.
|
private IClass |
UnitCompiler.importTypeOnDemand2(java.lang.String simpleTypeName,
Location location) |
|
(package private) void |
UnitCompiler.initializeInstanceVariablesAndInvokeInstanceInitializers(Java.ConstructorDeclarator cd) |
Compiles the instance variable initializers and the instance initializers in their lexical order.
|
private Java.Modifier[] |
Parser.interfaceMethodModifiers(Java.Modifier[] modifiers) |
|
private Java.Modifier[] |
Parser.interfaceModifiers(Java.Modifier[] modifiers) |
|
private java.lang.String |
UnitCompiler.internalCheckAccessible(IClass iClassDeclaringMember,
Access memberAccess,
Java.Scope contextScope) |
|
private java.lang.String |
UnitCompiler.internalCheckAccessible(IClass type,
Java.Scope contextScope) |
|
private int |
Scanner.internalRead() |
|
private void |
UnitCompiler.invokeConstructor(Java.Locatable locatable,
IClass.IConstructor iConstructor) |
Invokes the iConstructor; assumes that this and the correct number and types of arguments are
on the operand stack.
|
private void |
UnitCompiler.invokeConstructor(Java.Locatable locatable,
Java.Scope scope,
Java.Rvalue enclosingInstance,
IType targetType,
Java.Rvalue[] arguments) |
Expects the object to initialize on the stack.
|
private void |
UnitCompiler.invokeMethod(Java.Locatable locatable,
IClass.IMethod iMethod) |
Invokes the iMethod; assumes that this (unless iMethod is static) and the correct
number and types of arguments are on the operand stack.
|
private boolean |
UnitCompiler.isAccessible(IClass.IMember member,
Java.Scope contextScope) |
Determines whether the given IClass.IMember is accessible in the given context, according to
JLS7 6.6.1.BL1.B4.
|
private boolean |
UnitCompiler.isAccessible(IClass iClassDeclaringMember,
Access memberAccess,
Java.Scope contextScope) |
Determines whether a member (class, interface, field or method) declared in a given class is accessible from a
given block statement context, according to JLS7 6.6.1.4.
|
private boolean |
UnitCompiler.isAccessible(IClass type,
Java.Scope contextScope) |
Determines whether the given IClass is accessible in the given context, according to JLS7 6.6.1.2 and
6.6.1.4.
|
boolean |
IClass.isAssignableFrom(IClass that) |
Determines if this is assignable from that.
|
private static boolean |
UnitCompiler.isAssignableFrom(IType targetType,
IType sourceType) |
|
private boolean |
UnitCompiler.isCastReferenceConvertible(IType sourceType,
IType targetType) |
JLS7 5.5
|
(package private) Java.LocalVariable |
UnitCompiler.isIntLv(Java.Crement c) |
Checks whether the operand is an int local variable.
|
boolean |
IClass.IInvocable.isLessSpecificThan(IClass.IInvocable that) |
|
private boolean |
UnitCompiler.isMethodInvocationConvertible(IClass sourceType,
IClass targetType,
boolean boxingPermitted) |
Checks if "method invocation conversion" (5.3) is possible.
|
boolean |
IClass.IInvocable.isMoreSpecificThan(IClass.IInvocable that) |
|
private boolean |
UnitCompiler.isNarrowingReferenceConvertible(IType sourceType,
IType targetType) |
Checks whether "narrowing reference conversion" (JLS7 5.1.5) is possible.
|
boolean |
IClass.isSubclassOf(IClass that) |
Returns true if this class is an immediate or non-immediate subclass of that class.
|
private boolean |
UnitCompiler.isType(Java.Atom a) |
|
private boolean |
UnitCompiler.isType2(Java.AmbiguousName an) |
|
private boolean |
UnitCompiler.isWideningReferenceConvertible(IType sourceType,
IType targetType) |
Checks if "widening reference conversion" (5.1.4) is possible.
|
private void |
UnitCompiler.leave(Java.BlockStatement bs) |
Cleans up the statement context.
|
private void |
UnitCompiler.leave2(Java.TryStatement ts) |
|
private void |
UnitCompiler.leaveStatements(Java.Scope from,
Java.Scope to) |
Statements that jump out of blocks (return , break , continue ) must call this method to
make sure that the finally clauses of all try ... catch and synchronized statements are
executed.
|
(package private) Java.AbstractCompilationUnit.ImportDeclaration[] |
ClassBodyEvaluator.makeImportDeclarations(Parser parser) |
|
protected void |
ScriptEvaluator.makeStatements(int idx,
Parser parser,
java.util.List<Java.BlockStatement> resultStatements,
java.util.List<Java.MethodDeclarator> resultMethods) |
Parses statements from the parser until end-of-input.
|
private void |
UnitCompiler.maybeCreateInitMethod(Java.TypeDeclaration td,
ClassFile cf,
java.util.List<Java.BlockStatement> statements) |
Creates class/interface initialization method iff there is any initialization code.
|
private Java.Modifier[] |
Parser.methodModifiers(Java.Modifier[] modifiers) |
|
private ClassFile |
UnitCompiler.newClassFile(short accessFlags,
IClass iClass,
IClass superclass,
IClass[] interfaces) |
|
private boolean |
UnitCompiler.overridesMethod(IClass.IMethod method,
IClass type) |
|
private boolean |
UnitCompiler.overridesMethodFromSupertype(IClass.IMethod m,
IClass type) |
|
private Java.Modifier[] |
Parser.packageMemberClassModifiers(Java.Modifier[] modifiers) |
|
private Java.Modifier[] |
Parser.packageMemberInterfaceModifiers(Java.Modifier[] modifiers) |
|
private Java.Modifier[] |
Parser.packageModifiers(Java.Modifier[] modifiers) |
|
private Java.AbstractCompilationUnit |
Compiler.parseAbstractCompilationUnit(java.lang.String fileName,
java.io.InputStream inputStream,
java.nio.charset.Charset charset) |
Reads one compilation unit from a file and parses it.
|
Java.AbstractCompilationUnit |
Parser.parseAbstractCompilationUnit() |
CompilationUnit := [ PackageDeclaration ]
{ ImportDeclaration }
{ TypeDeclaration }
|
Java.Atom |
Parser.parseAdditiveExpression() |
AdditiveExpression :=
MultiplicativeExpression { ( '+' | '-' ) MultiplicativeExpression }
|
Java.Atom |
Parser.parseAndExpression() |
AndExpression :=
EqualityExpression { '&' EqualityExpression }
|
private Java.Annotation |
Parser.parseAnnotation() |
Annotation :=
MarkerAnnotation // JLS7 9.7.2
| SingleElementAnnotation // JLS7 9.7.3
| NormalAnnotation // JLS7 9.7.1
MarkerAnnotation := '@' Identifier
SingleElementAnnotation := '@' Identifier '(' ElementValue ')'
NormalAnnotation := '@' TypeName '(' ElementValuePairsOpt ')'
ElementValuePairsOpt := [ ElementValuePair { ',' ElementValuePair } ]
|
Java.AnnotationTypeDeclaration |
Parser.parseAnnotationTypeDeclarationRest(java.lang.String docComment,
Java.Modifier[] modifiers,
Parser.InterfaceDeclarationContext context) |
AnnotationTypeDeclarationRest := Identifier AnnotationTypeBody
|
Java.Rvalue[] |
Parser.parseArgumentList() |
ArgumentList := Expression { ',' Expression }
|
Java.Rvalue[] |
Parser.parseArguments() |
Arguments := '(' [ ArgumentList ] ')'
|
Java.ArrayInitializer |
Parser.parseArrayInitializer() |
ArrayInitializer :=
'{' [ VariableInitializer { ',' VariableInitializer } [ ',' ] '}'
|
Java.Statement |
Parser.parseAssertStatement() |
AssertStatement := 'assert' Expression [ ':' Expression ] ';'
|
Java.Atom |
Parser.parseAssignmentExpression() |
AssignmentExpression :=
ConditionalExpression [ AssignmentOperator AssignmentExpression ]
AssignmentOperator :=
'=' | '*=' | '/=' | '%=' | '+=' | '-=' | '<<=' |
'>>=' | '>>>=' | '&=' | '^=' | '|='
|
Java.Block |
Parser.parseBlock() |
Block := '{' BlockStatements '}'
|
Java.BlockStatement |
Parser.parseBlockStatement() |
BlockStatement :=
Statement | (1)
'class' ...
|
java.util.List<Java.BlockStatement> |
Parser.parseBlockStatements() |
BlockStatements := { BlockStatement }
|
(package private) int |
Parser.parseBracketsOpt() |
BracketsOpt := { '[' ']' }
|
Java.Statement |
Parser.parseBreakStatement() |
BreakStatement := 'break' [ Identifier ] ';'
|
Java.CatchParameter |
Parser.parseCatchParameter() |
CatchFormalParameter := { VariableModifier } CatchType VariableDeclaratorId
CatchType := UnannClassType { '|' ClassType }
VariableModifier := Annotation | 'final'
VariableDeclaratorId := Identifier [ Dims ]
Dims := { Annotation } '[' ']' { { Annotation } '[' ']' }
UnannClassType :=
Identifier [ TypeArguments ]
| UnannClassOrInterfaceType '.' { Annotation } Identifier [ TypeArguments ]
UnannInterfaceType := UnannClassType
UnannClassOrInterfaceType := UnannClassType | UnannInterfaceType
ClassType :=
{ Annotation } Identifier [ TypeArguments ]
| ClassOrInterfaceType '.' { Annotation } Identifier [ TypeArguments ]
|
void |
Parser.parseClassBody(Java.AbstractClassDeclaration classDeclaration) |
ClassBody := '{' { ClassBodyDeclaration } '}'
|
void |
Parser.parseClassBodyDeclaration(Java.AbstractClassDeclaration classDeclaration) |
ClassBodyDeclaration :=
';' |
ModifiersOpt (
Block | // Instance (JLS7 8.6) or static initializer (JLS7 8.7)
'void' Identifier MethodDeclarationRest |
'class' ClassDeclarationRest |
'interface' InterfaceDeclarationRest |
ConstructorDeclarator |
[ TypeArguments ] Type Identifier MethodDeclarationRest |
Type Identifier FieldDeclarationRest ';'
)
|
Java.NamedClassDeclaration |
Parser.parseClassDeclarationRest(java.lang.String docComment,
Java.Modifier[] modifiers,
Parser.ClassDeclarationContext context) |
ClassDeclarationRest :=
Identifier [ typeParameters ]
[ 'extends' ReferenceType ]
[ 'implements' ReferenceTypeList ]
ClassBody
|
Java.Atom |
Parser.parseConditionalAndExpression() |
ConditionalAndExpression :=
InclusiveOrExpression { '&&' InclusiveOrExpression }
|
Java.Atom |
Parser.parseConditionalExpression() |
ConditionalExpression :=
ConditionalOrExpression [ '?' Expression ':' ConditionalExpression ]
|
Java.Atom |
Parser.parseConditionalOrExpression() |
ConditionalOrExpression :=
ConditionalAndExpression { '||' ConditionalAndExpression ]
|
Java.ConstructorDeclarator |
Parser.parseConstructorDeclarator(java.lang.String docComment,
Java.Modifier[] modifiers) |
ConstructorDeclarator :=
Identifier
FormalParameters
[ 'throws' ReferenceTypeList ]
'{'
[ 'this' Arguments ';' | 'super' Arguments ';' | Primary '.' 'super' Arguments ';' ]
BlockStatements
'}'
|
Java.Statement |
Parser.parseContinueStatement() |
ContinueStatement := 'continue' [ Identifier ] ';'
|
Java.Rvalue |
Parser.parseDimExpr() |
DimExpr := '[' Expression ']'
|
Java.Rvalue[] |
Parser.parseDimExprs() |
DimExprs := DimExpr { DimExpr }
|
Java.Statement |
Parser.parseDoStatement() |
DoStatement := 'do' Statement 'while' '(' Expression ')' ';'
|
private Java.ElementValue |
Parser.parseElementValue() |
ElementValue :=
ConditionalExpression
| Annotation
| ElementValueArrayInitializer
|
private Java.ElementValue |
Parser.parseElementValueArrayInitializer() |
ElementValueArrayInitializer := '{' { ElementValue | ',' } '}'
|
private Java.ElementValuePair |
Parser.parseElementValuePair() |
ElementValuePair := Identifier '=' ElementValue
|
Java.Statement |
Parser.parseEmptyStatement() |
EmptyStatement := ';'
|
void |
Parser.parseEnumBody(Java.EnumDeclaration enumDeclaration) |
EnumBody := '{' [ EnumConstant { ',' EnumConstant } [ ',' ] [ ';' ] { ClassBodyDeclaration } '}'
|
Java.EnumConstant |
Parser.parseEnumConstant() |
EnumConstant := [ Annotations ] Identifier [ Arguments ] [ ClassBody ]
|
Java.EnumDeclaration |
Parser.parseEnumDeclarationRest(java.lang.String docComment,
Java.Modifier[] modifiers,
Parser.ClassDeclarationContext context) |
EnumDeclarationRest := Identifier [ 'implements' ReferenceTypeList ] EnumBody
|
Java.Atom |
Parser.parseEqualityExpression() |
EqualityExpression :=
RelationalExpression { ( '==' | '!=' ) RelationalExpression }
|
Java.Atom |
Parser.parseExclusiveOrExpression() |
ExclusiveOrExpression :=
AndExpression { '^' AndExpression }
|
Java.Rvalue |
Parser.parseExpression() |
Expression := AssignmentExpression | LambdaExpression
|
Java.Rvalue[] |
Parser.parseExpressionList() |
ExpressionList := Expression { ',' Expression }
|
Java.Atom |
Parser.parseExpressionOrType() |
|
Java.Statement |
Parser.parseExpressionStatement() |
ExpressionStatement := Expression ';'
|
Java.VariableDeclarator[] |
Parser.parseFieldDeclarationRest(java.lang.String name) |
FieldDeclarationRest :=
VariableDeclaratorRest
{ ',' VariableDeclarator }
|
Java.FunctionDeclarator.FormalParameter |
Parser.parseFormalParameter(boolean[] hasEllipsis) |
FormalParameter := [ 'final' ] Type FormalParameterRest
|
Java.FunctionDeclarator.FormalParameters |
Parser.parseFormalParameterList() |
FormalParameterList := FormalParameter { ',' FormalParameter }
|
Java.FunctionDeclarator.FormalParameters |
Parser.parseFormalParameterListRest(Java.Type firstParameterType) |
FormalParameterListRest := Identifier { ',' FormalParameter }
|
Java.FunctionDeclarator.FormalParameter |
Parser.parseFormalParameterRest(Java.Modifier[] modifiers,
Java.Type type,
boolean[] hasEllipsis) |
FormalParameterRest := [ '.' '.' '.' ] Identifier BracketsOpt
|
Java.FunctionDeclarator.FormalParameters |
Parser.parseFormalParameters() |
FormalParameters := '(' [ FormalParameterList ] ')'
|
Java.Statement |
Parser.parseForStatement() |
ForStatement :=
'for' '(' [ ForInit ] ';' [ Expression ] ';' [ ExpressionList ] ')' Statement
| 'for' '(' FormalParameter ':' Expression ')' Statement
ForInit :=
Modifiers Type VariableDeclarators
| ModifiersOpt PrimitiveType VariableDeclarators
| Expression VariableDeclarators (1)
| Expression { ',' Expression }
|
Java.Statement |
Parser.parseIfStatement() |
IfStatement := 'if' '(' Expression ')' Statement [ 'else' Statement ]
|
Java.AbstractCompilationUnit.ImportDeclaration |
Parser.parseImportDeclaration() |
ImportDeclaration := 'import' ImportDeclarationBody ';'
|
Java.AbstractCompilationUnit.ImportDeclaration |
Parser.parseImportDeclarationBody() |
ImportDeclarationBody := [ 'static' ] Identifier { '.' Identifier } [ '.' '*' ]
|
(package private) Java.AbstractCompilationUnit.ImportDeclaration[] |
ScriptEvaluator.parseImports(Parser parser) |
|
Java.Atom |
Parser.parseInclusiveOrExpression() |
InclusiveOrExpression :=
ExclusiveOrExpression { '|' ExclusiveOrExpression }
|
void |
Parser.parseInterfaceBody(Java.InterfaceDeclaration interfaceDeclaration) |
InterfaceBody := '{' {
';' |
ModifiersOpt (
'void' Identifier MethodDeclarationRest |
'class' ClassDeclarationRest |
'interface' InterfaceDeclarationRest |
Type Identifier (
MethodDeclarationRest |
FieldDeclarationRest
)
)
} '}'
|
Java.InterfaceDeclaration |
Parser.parseInterfaceDeclarationRest(java.lang.String docComment,
Java.Modifier[] modifiers,
Parser.InterfaceDeclarationContext context) |
InterfaceDeclarationRest :=
Identifier [ typeParameters ]
[ 'extends' ReferenceTypeList ]
InterfaceBody
|
Java.Statement |
Parser.parseLabeledStatement() |
LabeledStatement := Identifier ':' Statement
|
private Java.LambdaBody |
Parser.parseLambdaBody() |
LambdaBody :=
|
private Java.LambdaExpression |
Parser.parseLambdaExpression() |
LambdaExpression := LambdaParameters '->' LambdaBody
|
private Java.LambdaParameters |
Parser.parseLambdaParameters() |
LambdaParameters :=
Identifier
| '(' [ FormalParameterList ] ')'
| '(' InferredFormalParameterList ')'
|
Java.Rvalue |
Parser.parseLiteral() |
Literal :=
IntegerLiteral
| FloatingPointLiteral
| BooleanLiteral
| CharacterLiteral
| StringLiteral
| NullLiteral
|
Java.Block |
Parser.parseMethodBody() |
MethodBody := Block
|
Java.MethodDeclarator |
Parser.parseMethodDeclaration() |
Equivalent with parseMethodDeclaration(false, MethodDeclarationContext.CLASS_DECLARATION) .
|
Java.MethodDeclarator |
Parser.parseMethodDeclaration(boolean allowDefaultClause,
Parser.MethodDeclarationContext context) |
MethodDeclaration :=
[ DocComment ] Modifiers [ TypeParameters ] VoidOrType Identifier MethodDeclarationRest
|
Java.MethodDeclarator |
Parser.parseMethodDeclarationRest(java.lang.String docComment,
Java.Modifier[] modifiers,
Java.TypeParameter[] typeParameters,
Java.Type type,
java.lang.String name,
boolean allowDefaultClause,
Parser.MethodDeclarationContext context) |
MethodDeclarationRest :=
FormalParameters
{ '[' ']' }
[ 'throws' ReferenceTypeList ]
[ 'default' expression ]
( ';' | MethodBody )
|
Java.Modifier[] |
Parser.parseModifiers() |
Modifiers := { Modifier }
|
Java.ModuleDeclaration |
Parser.parseModuleDeclarationRest(Java.Modifier[] modifiers) |
ModuleDeclarationRest := [ 'open' ] 'module' identifier { '.' identifier} '{' { ModuleDirective } '}'
|
Java.Atom |
Parser.parseMultiplicativeExpression() |
MultiplicativeExpression :=
UnaryExpression { ( '*' | '/' | '%' ) UnaryExpression }
|
Java.Modifier |
Parser.parseOptionalModifier() |
Modifier :=
Annotation
| 'public' | 'protected' | 'private'
| 'static' | 'abstract' | 'final' | 'native' | 'synchronized' | 'transient' | 'volatile' | 'strictfp'
| 'default'
|
Java.PackageDeclaration |
Parser.parsePackageDeclaration() |
PackageDeclaration := 'package' QualifiedIdentifier ';'
|
Java.PackageDeclaration |
Parser.parsePackageDeclarationRest(java.lang.String docComment,
Java.Modifier[] modifiers) |
PackageDeclaration := { PackageModifier } 'package' identifier { '.' identifier} ';'
|
Java.PackageMemberTypeDeclaration |
Parser.parsePackageMemberTypeDeclaration() |
PackageMemberTypeDeclaration := ModifiersOpt PackageMemberTypeDeclarationRest
|
private Java.PackageMemberTypeDeclaration |
Parser.parsePackageMemberTypeDeclarationRest(java.lang.String docComment,
Java.Modifier[] modifiers) |
PackageMemberTypeDeclarationRest :=
'class' ClassDeclarationRest |
'enum' EnumDeclarationRest |
'interface' InterfaceDeclarationRest
'@' 'interface' AnnotationTypeDeclarationRest
|
Java.Atom |
Parser.parsePrimary() |
Primary :=
CastExpression | // CastExpression 15.16
'(' Expression ')' | // ParenthesizedExpression 15.8.5
Literal | // Literal 15.8.1
Name | // AmbiguousName
Name Arguments | // MethodInvocation
Name '[]' { '[]' } | // ArrayType 10.1
Name '[]' { '[]' } '.' 'class' | // ClassLiteral 15.8.2
'this' | // This 15.8.3
'this' Arguments | // Alternate constructor invocation 8.8.5.1
'super' Arguments | // Unqualified superclass constructor invocation 8.8.5.1
'super' '.' Identifier | // SuperclassFieldAccess 15.11.2
'super' '.' Identifier Arguments | // SuperclassMethodInvocation 15.12.4.9
NewClassInstance |
NewAnonymousClassInstance | // ClassInstanceCreationExpression 15.9
NewArray | // ArrayCreationExpression 15.10
NewInitializedArray | // ArrayInitializer 10.6
PrimitiveType { '[]' } | // Type
PrimitiveType { '[]' } '.' 'class' | // ClassLiteral 15.8.2
'void' '.' 'class' | // ClassLiteral 15.8.2
MethodReference // MethodReference JLS9 15.13
Name :=
Identifier { '.' Identifier }
CastExpression :=
'(' PrimitiveType { '[]' } ')' UnaryExpression |
'(' Expression ')' UnaryExpression
NewClassInstance := 'new' ReferenceType Arguments
NewAnonymousClassInstance := 'new' ReferenceType Arguments [ ClassBody ]
NewArray := 'new' Type DimExprs { '[]' }
NewInitializedArray := 'new' ArrayType ArrayInitializer
|
java.lang.String[] |
Parser.parseQualifiedIdentifier() |
QualifiedIdentifier := Identifier { '.' Identifier }
|
Java.ReferenceType |
Parser.parseReferenceType() |
ReferenceType := { Annotation } QualifiedIdentifier [ TypeArguments ]
|
Java.ReferenceType[] |
Parser.parseReferenceTypeList() |
ReferenceTypeList := ReferenceType { ',' ReferenceType }
|
Java.Atom |
Parser.parseRelationalExpression() |
RelationalExpression :=
ShiftExpression {
'instanceof' ReferenceType
| '<' ShiftExpression [ { ',' TypeArgument } '>' ]
| '<' TypeArgument [ { ',' TypeArgument } '>' ]
| ( '>' | '<=' | '>=' ) ShiftExpression
}
|
private Java.TryStatement.Resource |
Parser.parseResource() |
Resource :=
Modifiers Type VariableDeclarator
| VariableAccess
|
Java.Statement |
Parser.parseReturnStatement() |
ReturnStatement := 'return' [ Expression ] ';'
|
private static void |
ScriptEvaluator.parseScriptStatement(Parser parser,
java.util.List<Java.BlockStatement> mainStatements,
java.util.List<Java.MethodDeclarator> localMethods) |
ScriptStatement :=
Statement (1)
| 'class' ...
|
Java.Atom |
Parser.parseSelector(Java.Atom atom) |
Selector :=
'.' Identifier | // FieldAccess 15.11.1
'.' Identifier Arguments | // MethodInvocation
'.' '<' TypeList '>' 'super' Arguments // Superconstructor invocation (?)
'.' '<' TypeList '>' 'super' '.' .
|
Java.Atom |
Parser.parseShiftExpression() |
ShiftExpression :=
AdditiveExpression { ( '<<' | '>>' | '>>>' ) AdditiveExpression }
|
Java.Statement |
Parser.parseStatement() |
Statement :=
LabeledStatement |
Block |
IfStatement |
ForStatement |
WhileStatement |
DoStatement |
TryStatement |
'switch' ...
|
Java.Statement |
Parser.parseSwitchStatement() |
SwitchStatement :=
'switch' '(' Expression ')' '{' { SwitchLabels BlockStatements } '}'
SwitchLabels := SwitchLabels { SwitchLabels }
SwitchLabel := 'case' Expression ':' | 'default' ':'
|
Java.Statement |
Parser.parseSynchronizedStatement() |
SynchronizedStatement :=
'synchronized' '(' expression ')' Block
|
Java.Statement |
Parser.parseThrowStatement() |
ThrowStatement := 'throw' Expression ';'
|
Java.Statement |
Parser.parseTryStatement() |
TryStatement :=
'try' Block Catches [ Finally ] |
'try' Block Finally
Catches := CatchClause { CatchClause }
CatchClause := 'catch' '(' FormalParameter ')' Block
Finally := 'finally' Block
|
Java.Type |
Parser.parseType() |
Type := (
'byte' | 'short' | 'char' | 'int' | 'long' |
'float' | 'double' | 'boolean' |
ReferenceType
) { '[' ']' }
|
private Java.TypeArgument |
Parser.parseTypeArgument() |
TypeArgument :=
ReferenceType { '[' ']' } <= The optional brackets are missing in JLS7, section 18!?
| PrimitiveType '[' ']' { '[' ']' }
| '?' extends ReferenceType
| '?' super ReferenceType
|
private Java.TypeArgument[] |
Parser.parseTypeArgumentsOpt() |
TypeArguments := '<' [ TypeArgument { ',' TypeArgument } ] '>'
|
private Java.TypeParameter |
Parser.parseTypeParameter() |
TypeParameter := identifier [ 'extends' ( identifier | ReferenceType { '&' ReferenceType }
|
private Java.TypeParameter[] |
Parser.parseTypeParametersOpt() |
TypeParameters := '<' TypeParameter { ',' TypeParameter } '>'
|
Java.Atom |
Parser.parseUnaryExpression() |
UnaryExpression :=
{ PrefixOperator } Primary { Selector } { PostfixOperator }
PrefixOperator := '++' | '--' | '+' | '-' | '~' | '!'
PostfixOperator := '++' | '--'
|
Java.VariableDeclarator |
Parser.parseVariableDeclarator() |
VariableDeclarator := Identifier VariableDeclaratorRest
|
Java.VariableDeclarator |
Parser.parseVariableDeclaratorRest(java.lang.String name) |
VariableDeclaratorRest := { '[' ']' } [ '=' VariableInitializer ]
|
Java.VariableDeclarator[] |
Parser.parseVariableDeclarators() |
VariableDeclarators := VariableDeclarator { ',' VariableDeclarator }
|
Java.ArrayInitializerOrRvalue |
Parser.parseVariableInitializer() |
VariableInitializer :=
ArrayInitializer |
Expression
|
Java.Type |
Parser.parseVoidOrType() |
VoidOrType := 'void' | Type
|
Java.Statement |
Parser.parseWhileStatement() |
WhileStatement := 'while' '(' Expression ')' Statement
|
Token |
Parser.peek() |
|
boolean |
Parser.peek(java.lang.String suspected) |
|
int |
Parser.peek(java.lang.String... suspected) |
|
boolean |
Parser.peek(TokenType suspected) |
|
int |
Parser.peek(TokenType... suspected) |
|
private int |
Scanner.peek() |
Returns the next character, but does not consume it.
|
private boolean |
Scanner.peek(java.lang.String expectedCharacters) |
|
Token |
TokenStream.peek() |
|
boolean |
TokenStream.peek(java.lang.String suspected) |
|
int |
TokenStream.peek(java.lang.String... suspected) |
Checks whether the value of the next token equals any of the suspected; does not consume the next
token.
|
boolean |
TokenStream.peek(TokenType suspected) |
|
int |
TokenStream.peek(TokenType... suspected) |
Checks whether the type of the next token is any of the suspected; does not consume the next token.
|
Token |
TokenStreamImpl.peek() |
|
boolean |
TokenStreamImpl.peek(java.lang.String suspected) |
|
int |
TokenStreamImpl.peek(java.lang.String... suspected) |
|
boolean |
TokenStreamImpl.peek(TokenType suspected) |
|
int |
TokenStreamImpl.peek(TokenType... suspected) |
|
private int |
Scanner.peekButOne() |
Returns the next-but-one character, but does not consume any characters.
|
private boolean |
Parser.peekLiteral() |
|
Token |
Parser.peekNextButOne() |
|
boolean |
Parser.peekNextButOne(java.lang.String suspected) |
|
boolean |
Parser.peekNextButOne(TokenType suspected) |
|
Token |
TokenStream.peekNextButOne() |
|
boolean |
TokenStream.peekNextButOne(java.lang.String suspected) |
|
Token |
TokenStreamImpl.peekNextButOne() |
|
boolean |
TokenStreamImpl.peekNextButOne(java.lang.String suspected) |
|
boolean |
Parser.peekRead(java.lang.String suspected) |
|
int |
Parser.peekRead(java.lang.String... suspected) |
|
java.lang.String |
Parser.peekRead(TokenType suspected) |
|
private boolean |
Scanner.peekRead(int expected) |
Consumes the next character iff it equals the expected character.
|
private boolean |
Scanner.peekRead(java.lang.String expectedCharacters) |
Consumes the next character iff it is one of the expectedCharacters
|
boolean |
TokenStream.peekRead(java.lang.String suspected) |
Checks whether the value of the next token equals the suspected; if so, consumes the token.
|
int |
TokenStream.peekRead(java.lang.String... suspected) |
Checks whether the value of the next token is one of the suspected; if so, consumes the token.
|
java.lang.String |
TokenStream.peekRead(TokenType suspected) |
Checks whether the type of the next token is the suspected; if so, consumes the token.
|
int |
TokenStream.peekRead(TokenType... suspected) |
Checks whether the type of the next token is one of the suspected; if so, consumes the token.
|
boolean |
TokenStreamImpl.peekRead(java.lang.String suspected) |
|
int |
TokenStreamImpl.peekRead(java.lang.String... suspected) |
|
java.lang.String |
TokenStreamImpl.peekRead(TokenType suspected) |
|
int |
TokenStreamImpl.peekRead(TokenType... suspected) |
|
Token |
Scanner.produce() |
Produces and returns the next token.
|
private Token |
TokenStreamImpl.produceToken() |
|
private void |
UnitCompiler.putfield(Java.Locatable locatable,
IClass.IField iField) |
|
Token |
Parser.read() |
|
void |
Parser.read(java.lang.String expected) |
|
int |
Parser.read(java.lang.String... expected) |
|
java.lang.String |
Parser.read(TokenType expected) |
|
private char |
Scanner.read() |
Consumes and returns the next character.
|
Token |
TokenStream.read() |
|
void |
TokenStream.read(java.lang.String expected) |
Verifies that the value of the next token equals expected, and consumes the token.
|
int |
TokenStream.read(java.lang.String... expected) |
Verifies that the value of the next token equals one of the expected, and consumes the token.
|
java.lang.String |
TokenStream.read(TokenType expected) |
Verifies that the type of the next token is the expected, and consumes the token.
|
int |
TokenStream.read(TokenType... expected) |
Verifies that the type of the next token is one of the expected, and consumes the token.
|
Token |
TokenStreamImpl.read() |
|
void |
TokenStreamImpl.read(java.lang.String expected) |
|
int |
TokenStreamImpl.read(java.lang.String... expected) |
|
java.lang.String |
TokenStreamImpl.read(TokenType expected) |
|
int |
TokenStreamImpl.read(TokenType... expected) |
|
private Java.Atom |
UnitCompiler.reclassify(Java.AmbiguousName an) |
|
private Java.Atom |
UnitCompiler.reclassifyName(Location location,
Java.Scope scope,
java.lang.String identifier) |
JLS7 6.5.2.1
|
private Java.Atom |
UnitCompiler.reclassifyName(Location location,
Java.Scope scope,
java.lang.String[] identifiers,
int n) |
Reclassifies the ambiguous name consisting of the first n of the identifiers (JLS7
6.5.2.2).
|
private void |
UnitCompiler.referenceThis(Java.Locatable locatable,
Java.AbstractTypeDeclaration declaringType,
Java.TypeBodyDeclaration declaringTypeBodyDeclaration,
IType targetIType) |
|
private IClass[] |
ClassFileIClass.resolveClasses(short[] ifs) |
|
private void |
UnitCompiler.reverseUnaryNumericPromotion(Java.Locatable locatable,
IClass sourceType,
IType targetType) |
|
private TokenType |
Scanner.scan() |
|
private void |
Scanner.scanLiteralCharacter() |
Scans the next literal character into a StringBuilder .
|
private TokenType |
Scanner.scanNumericLiteral() |
|
private void |
UnitCompiler.stringConversion(Java.Locatable locatable,
IType sourceType) |
Converts object of type "sourceType" to type "String" (JLS7 15.18.1.1).
|
void |
Java.AbstractAnnotation.throwCompileException(java.lang.String message) |
|
void |
Java.AbstractTypeDeclaration.throwCompileException(java.lang.String message) |
|
void |
Java.Locatable.throwCompileException(java.lang.String message) |
|
void |
Java.Located.throwCompileException(java.lang.String message) |
|
private IClass.IAnnotation |
ClassFileIClass.toIAnnotation(ClassFile.Annotation annotation) |
|
private IClass.IAnnotation |
UnitCompiler.toIAnnotation(Java.Annotation annotation) |
|
private IClass.IAnnotation[] |
ClassFileIClass.toIAnnotations(ClassFile.Annotation[] annotations) |
|
private IClass.IAnnotation[] |
UnitCompiler.toIAnnotations(Java.Annotation[] annotations) |
|
Java.Lvalue |
Java.Atom.toLvalueOrCompileException() |
|
private Java.Lvalue |
UnitCompiler.toLvalueOrCompileException(Java.Atom a) |
|
Java.Rvalue |
Java.Atom.toRvalueOrCompileException() |
|
private Java.Rvalue |
UnitCompiler.toRvalueOrCompileException(Java.Atom a) |
|
Java.Type |
Java.Atom.toTypeOrCompileException() |
|
private Java.Type |
UnitCompiler.toTypeOrCompileException(Java.Atom a) |
|
private boolean |
UnitCompiler.tryAssignmentConversion(Java.Locatable locatable,
IType sourceType,
IType targetType,
java.lang.Object constantValue) |
|
private boolean |
UnitCompiler.tryBoxingConversion(Java.Locatable locatable,
IType sourceType,
IType targetType) |
|
private boolean |
UnitCompiler.tryCastConversion(Java.Locatable locatable,
IType sourceType,
IType targetType,
java.lang.Object constantValue) |
|
private boolean |
UnitCompiler.tryConstantAssignmentConversion(Java.Locatable locatable,
java.lang.Object constantValue,
IType targetType) |
Checks if "constant assignment conversion" (JLS7 5.2, paragraph 1) is possible.
|
private boolean |
UnitCompiler.tryNarrowingReferenceConversion(Java.Locatable locatable,
IType sourceType,
IType targetType) |
Implements "narrowing reference conversion" (5.1.5).
|
private IType |
UnitCompiler.typeArgumentToIType(Java.TypeArgument ta) |
|
private IType[] |
ReflectionIClass.typesToITypes(java.lang.reflect.Type[] types) |
|
private IType |
ReflectionIClass.typeToIType(java.lang.reflect.Type type) |
|
private IClass |
UnitCompiler.unaryNumericPromotion(Java.Locatable locatable,
IType type) |
Implements "unary numeric promotion" (JLS7 5.6.1).
|
private IClass |
UnitCompiler.unaryNumericPromotionType(Java.Locatable locatable,
IType type) |
|
private void |
UnitCompiler.unboxingConversion(Java.Locatable locatable,
IType sourceType,
IClass targetType) |
|
private static java.lang.String |
UnitCompiler.unescape(java.lang.String s,
Location location) |
Decodes any escape sequences like \n , or \377 , but not \uxxxx .
|
private Java.Modifier[] |
Parser.variableModifiers(Java.Modifier[] modifiers) |
|
private void |
Parser.verifyIdentifierIsConventionalClassOrInterfaceName(java.lang.String id,
Location loc) |
Issues a warning if the given identifier does not comply with the class and interface type naming conventions
(JLS7 6.8.2).
|
private void |
Parser.verifyIdentifierIsConventionalFieldName(java.lang.String id,
Location loc) |
Issues a warning if the given identifier does not comply with the field naming conventions (JLS7 6.8.4) and
constant naming conventions (JLS7 6.8.5).
|
private void |
Parser.verifyIdentifierIsConventionalLocalVariableOrParameterName(java.lang.String id,
Location loc) |
Issues a warning if the given identifier does not comply with the local variable and parameter naming
conventions (JLS7 6.8.6).
|
private void |
Parser.verifyIdentifierIsConventionalMethodName(java.lang.String id,
Location loc) |
Issues a warning if the given identifier does not comply with the method naming conventions (JLS7 6.8.3).
|
private void |
Parser.verifyStringIsConventionalPackageName(java.lang.String s,
Location loc) |
Issues a warning if the given string does not comply with the package naming conventions.
|
private void |
Parser.warning(java.lang.String handle,
java.lang.String message) |
|
private void |
Parser.warning(java.lang.String handle,
java.lang.String message,
Location location) |
Issues a warning with the given message and location and returns.
|
private void |
TokenStreamImpl.warning(java.lang.String handle,
java.lang.String message,
Location location) |
Issues a warning with the given message and location and returns.
|
private void |
UnitCompiler.warning(java.lang.String handle,
java.lang.String message,
Location location) |
Issues a warning with the given message an location an returns.
|