janino.net

org.codehaus.janino
Class Java

java.lang.Object
  extended by org.codehaus.janino.Java

public final class Java
extends Object

This wrapper class defines classes that represent the elements of the Java™ programming language.

Notice:

'JLS7' refers to the Java Language Specification, Java SE 7 Edition.


Nested Class Summary
static class Java.AbstractTypeBodyDeclaration
          Abstract implementation of Java.TypeBodyDeclaration.
static class Java.AbstractTypeDeclaration
          Abstract implementation of Java.TypeDeclaration.
static class Java.AlternateConstructorInvocation
          Representation of a JLS7 8.8.7.1.
static class Java.AmbiguousName
          Representation of a JLS7 6.5.2 'ambiguous name'.
static interface Java.Annotation
          Representation of a Java ™ annotation.
static class Java.AnonymousClassDeclaration
          Representation of a JLS7 15.9.5 'anonymous class declaration'.
static class Java.ArrayAccessExpression
          Representation of a JLS7 15.13 'array access expression'.
static class Java.ArrayInitializer
          Representation of a JLS7 10.6 'array initializer'.
static interface Java.ArrayInitializerOrRvalue
          The union of Java.ElementValueArrayInitializer and Java.Rvalue.
static class Java.ArrayLength
          Representation of the JLS7 10.7 array type 'length' pseudo-member.
static class Java.ArrayType
          Representation of a JLS7 10.1 'array type'.
static class Java.AssertStatement
          Representation of the JLS7 14.10 ASSERT statement.
static class Java.Assignment
          Representation of all JLS7 15.26 assignments.
static class Java.Atom
          Abstract base class for Java.Type, Java.Rvalue and Java.Lvalue.
static class Java.BasicType
          Representation of a JLS7 18 "basic type" (obviously equivalent to a JLS7 4.2 "primitive type").
static class Java.BinaryOperation
          Representation of all non-operand-modifying binary operations.
static class Java.Block
          Representation of a Java™ "block" (JLS7 14.2).
static interface 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.
static class Java.BooleanLiteral
          Representation of a "boolean literal" (JLS7 3.10.3) (type boolean).
static class Java.BooleanRvalue
          Base class for Java.Rvalues that compile better as conditional branches.
static class Java.BreakableStatement
          Base class for statements that can be terminated abnormally with a "break" statement.
static class Java.BreakStatement
          Representation of the JLS7 14.15 BREAK statement.
static class Java.Cast
          Representation of a JLS7 15.16 'cast expression'.
static class Java.CatchClause
          Representation of a JLS7 14.20.1 CATCH clause.
static class Java.CharacterLiteral
          Representation of a "character literal" (JLS7 3.10.4) (type char).
static class Java.ClassDeclaration
          Base for the various class declaration kinds.
static class Java.ClassLiteral
          Representation of a JLS7 15.8.2 'class literal'.
static class Java.CompilationUnit
          Holds the result of Parser.parseCompilationUnit().
static class Java.ConditionalExpression
          Representation of a JLS7 15.25 'conditional operation'.
static class Java.ConstructorDeclarator
          Representation of a constructor declarator.
static class Java.ConstructorInvocation
          Abstract bas class for Java.SuperConstructorInvocation and Java.AlternateConstructorInvocation.
static class Java.ContinuableStatement
          Base class for statements that support the 'continue' statement.
static class Java.ContinueStatement
          Representation of the JLS7 14.16 CONTINUE statement.
static class 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'.
static interface Java.DocCommentable
          Representation of a Java™ element that can be annotated with a DOC comment ('/** ... */').
static class Java.DoStatement
          Representation of a JLS7 14.13 DO statement.
static interface Java.ElementValue
          Base of the possible element values in a Java.NormalAnnotation.
static class Java.ElementValueArrayInitializer
          An element value in the form of an array initializer, e.g.
static class Java.ElementValuePair
          Representation of a 'name = value' element in a Java.NormalAnnotation.
static class Java.EmptyStatement
          Representation of the "empty statement", i.e. the blank semicolon.
static class Java.EnclosingScopeOfTypeDeclaration
          Lazily determines and returns the enclosing Java.Scope of the given Java.TypeDeclaration.
static class Java.ExpressionStatement
          Representation of the JLS7 14.8 'expression statement'.
static class Java.FieldAccess
          Representation of an access to a field of a class or an interface.
static class Java.FieldAccessExpression
          Representation of a JLS7 15.11 'field access expression', including the "array length" pseudo field access.
static class Java.FieldDeclaration
          This class is derived from "Statement", because it provides for the initialization of the field.
static class Java.FloatingPointLiteral
          Representation of a "floating-point literal" (JLS7 3.10.2) (types float and double).
static class Java.ForEachStatement
          Representation of a JLS7 14.14.2 'enhanced FOR statement'.
static class Java.ForStatement
          Representation of a JLS7 14.14.1 'basic FOR statement'.
static class Java.FunctionDeclarator
          Abstract base class for Java.ConstructorDeclarator and Java.MethodDeclarator.
static class Java.IfStatement
          Representation of a JLS7 14.9 IF statement.
static class Java.Initializer
          Representation of an 'instance initializer' (JLS7 8.6) or 'static initializer' (JLS7 8.7).
static class Java.Instanceof
          Representation of a JLS7 15.20.2 'type comparison operation'.
static class Java.IntegerLiteral
          Representation of an "integer literal" (JLS7 3.10.1) (types int and long).
static class Java.InterfaceDeclaration
          Base for the various interface declaration kinds.
static class Java.Invocation
          Abstract base class for Java.MethodInvocation and Java.SuperclassMethodInvocation.
static class Java.LabeledStatement
          Representation of a JLS7 14.7 'labeled statement'.
static class Java.Literal
          Abstract base class for the various Java™ literals; see JLS7 3.10.
static class Java.LocalClassDeclaration
          Representation of a 'local class declaration' i.e. a class declaration that appears inside a method body.
static class Java.LocalClassDeclarationStatement
          Representation of the JLS7 14.3 'local class declaration statement'.
static class Java.LocalVariable
          Representation of a local variable while it is in scope during compilation.
static class Java.LocalVariableAccess
          Representation of a local variable access -- used during compilation.
static class Java.LocalVariableDeclarationStatement
          Representation of a JLS7 14.4 'local variable declaration statement'.
static class 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.
static interface Java.Locatable
          This interface is implemented by objects which are associated with a location in the source code.
static class Java.Located
          Abstract implementation of Java.Locatable.
static class 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.
static class Java.MarkerAnnotation
          Repreentation of a 'marker annotation', i.e. an annotation without any elements in parentheses.
static class Java.MemberClassDeclaration
          Representation of a 'member class declaration', i.e. a class declaration that appears inside another class declaration.
static class Java.MemberInterfaceDeclaration
          Representation of a 'member interface declaration', i.e. an interface declaration that appears inside another class or interface declaration.
static interface Java.MemberTypeDeclaration
          Represents a class or interface declaration where the immediately enclosing scope is another class or interface declaration.
static class Java.MethodDeclarator
          Representation of a method declarator.
static class Java.MethodInvocation
          Representation of a JLS7 15.12 'method invocation expression'.
static class Java.Modifiers
          Representation of the modifier flags and annotations that are associated with a declaration.
static class Java.NamedClassDeclaration
          Base for the various named class declarations.
static interface Java.NamedTypeDeclaration
          Represents the declaration of a class or an interface that has a name.
static class Java.NewAnonymousClassInstance
          Representation of a JLS7 15.9 'anonymous class instance creation expression'.
static class Java.NewArray
          Representation of a JLS7 15.10 'array creation expression'.
static class Java.NewClassInstance
          Representation of a JLS7 'class instance creation expression'.
static class Java.NewInitializedArray
          Representation of a JLS7 15.10 'array creation expression'.
static class Java.NormalAnnotation
          A 'normal annotation', i.e. an annotation with multiple elements in parentheses and curly braces.
static class Java.NullLiteral
          Representation of a "null literal" (JLS7 3.10.7).
static class Java.Package
          Representation of a JLS7 6.5.2.1.5 'package name'.
static class Java.PackageDeclaration
          Representation of a package declaration like package com.acme.tools;.
static class Java.PackageMemberClassDeclaration
          Implementation of a 'package member class declaration', a.k.a.
static class Java.PackageMemberInterfaceDeclaration
          Representation of a 'package member interface declaration', a.k.a.
static interface Java.PackageMemberTypeDeclaration
          Represents a class or interface declaration on compilation unit level.
static class Java.ParameterAccess
          'Artificial' operation for accessing the parameters of the synthetic constructor of an anonymous class.
static class Java.ParenthesizedExpression
          Representation of a JLS7 15.8.5 'parenthesized expression'.
static class Java.QualifiedThisReference
          Representation of an JLS7 15.8.4 access to the current object or an enclosing instance.
static class Java.ReferenceType
          representation of a JLS7 4.3 reference type.
static class Java.ReturnStatement
          Representation of the JLS7 14.17 RETURN statement.
static class 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.
static class 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(...)'.
static interface Java.Scope
          Representation of a Java™ 'scope', e.g. a compilation unit, type, method or block.
static class Java.SimpleConstant
          This class is not used when code is parsed; it is intended for "programmatic" literals.
static class Java.SimpleType
          This class is not used when code is parsed; it is intended for "programmatic" types.
static class Java.SingleElementAnnotation
          Representation of a 'single-element annotation', i.e. an annotation followed by a single element in parentheses.
static class Java.Statement
          Everything that can occur in the body of a method or in a block.
static class Java.StringLiteral
          Representation of a "string literal" (JLS7 3.10.5) (type String).
static class Java.SuperclassFieldAccessExpression
          Representation of an JLS7 'superclass field access expression', e.g.
static class Java.SuperclassMethodInvocation
          Representation of a JLS7 15.12.1.1.3 'superclass method invocation'.
static class Java.SuperConstructorInvocation
          Representation of a JLS7 8.8.7.1.
static class Java.SwitchStatement
          The JLS7 14.10 "switch" Statement.
static class Java.SynchronizedStatement
          Representation of a JLS7 14.9 SYNCHRONIZED statement.
static class Java.ThisReference
          Representation of an JLS7 15.8.3 access to the innermost enclosing instance.
static class Java.ThrowStatement
          Representation of a JLS7 14.18 THROW statement.
static class Java.TryStatement
          Representation of a JLS7 14.20 TRY statement.
static class Java.Type
          Representation of a Java™ type.
static interface Java.TypeArgument
          Representation of a JLS7 4.5.1 type argument.
static interface Java.TypeBodyDeclaration
          Representation of a "ClassBodyDeclaration" or an "InterfaceMemberDeclaration".
static interface Java.TypeDeclaration
          Base for the various kinds of type declarations, e.g. top-level class, member interface, local class.
static class Java.TypeParameter
          Representation of a type parameter (which declares a type variable).
static class 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'.
static class Java.VariableDeclarator
          Used by FieldDeclaration and LocalVariableDeclarationStatement.
static class Java.WhileStatement
          Representation of the JLS7 14.2 WHILE statement.
static class Java.Wildcard
          Representation of a JLS7 4.5.1 'wildcard'.
 
Method Summary
static String join(Object[] a, String separator)
           
static String join(Object[] a, String separator, int off, int len)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

join

public static String join(Object[] a,
                          String separator)
Returns:
null iff a == null, or "" iff a.length == 0, or the elements of a, converted to strings concatenated and separated with the separator

join

public static String join(Object[] a,
                          String separator,
                          int off,
                          int len)
Returns:
null iff a == null, or "" iff off >= len, or element off ... len-1 of a, converted to strings concatenated and separated with the separator

janino.net