Package org.codehaus.janino
Class Java.MemberClassDeclaration
java.lang.Object
org.codehaus.janino.Java.AbstractTypeDeclaration
org.codehaus.janino.Java.ClassDeclaration
org.codehaus.janino.Java.NamedClassDeclaration
org.codehaus.janino.Java.MemberClassDeclaration
- All Implemented Interfaces:
Java.DocCommentable,Java.Locatable,Java.MemberTypeDeclaration,Java.NamedTypeDeclaration,Java.Scope,Java.TypeBodyDeclaration,Java.TypeDeclaration
- Enclosing class:
Java
public static final class Java.MemberClassDeclaration
extends Java.NamedClassDeclaration
implements Java.MemberTypeDeclaration
-
Field Summary
Fields inherited from class org.codehaus.janino.Java.NamedClassDeclaration
implementedTypes, name, optionalExtendedTypeFields inherited from class org.codehaus.janino.Java.ClassDeclaration
constructors, variableDeclaratorsAndInitializersFields inherited from class org.codehaus.janino.Java.AbstractTypeDeclaration
anonymousClassCount, localClassCount -
Constructor Summary
ConstructorsConstructorDescriptionMemberClassDeclaration(Location location, String optionalDocComment, Java.ModifiersAndAnnotations modifiersAndAnnotations, String name, Java.Type optionalExtendedType, Java.Type[] implementedTypes) -
Method Summary
Modifier and TypeMethodDescriptionvoidaccept(Visitor.TypeBodyDeclarationVisitor visitor) voidaccept(Visitor.TypeDeclarationVisitor visitor) voiddefineSyntheticField(IClass.IField iField) Inner classes have zero or more synthetic fields that hold references to their enclosing context:this$n(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.Determine the effective class name, e.g.booleanisStatic()voidsetDeclaringType(Java.TypeDeclaration declaringType) Methods inherited from class org.codehaus.janino.Java.NamedClassDeclaration
getDocComment, getName, hasDeprecatedDocTag, toStringMethods inherited from class org.codehaus.janino.Java.ClassDeclaration
addConstructor, addVariableDeclaratorOrInitializer, defineSyntheticFieldMethods inherited from class org.codehaus.janino.Java.AbstractTypeDeclaration
addDeclaredMethod, addMemberTypeDeclaration, createAnonymousClassName, createLocalTypeName, getEnclosingScope, getLocation, getMemberTypeDeclaration, getMemberTypeDeclarations, getMethodDeclaration, getMethodDeclarations, getModifiersAndAnnotations, invalidateMethodCaches, setEnclosingScope, throwCompileExceptionMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface org.codehaus.janino.Java.Locatable
getLocation, throwCompileExceptionMethods inherited from interface org.codehaus.janino.Java.NamedTypeDeclaration
getNameMethods inherited from interface org.codehaus.janino.Java.Scope
getEnclosingScopeMethods inherited from interface org.codehaus.janino.Java.TypeDeclaration
createAnonymousClassName, createLocalTypeName, getMemberTypeDeclaration, getMemberTypeDeclarations, getMethodDeclaration, getMethodDeclarations, getModifiersAndAnnotations
-
Constructor Details
-
MemberClassDeclaration
-
-
Method Details
-
setDeclaringType
- Specified by:
setDeclaringTypein interfaceJava.TypeBodyDeclaration
-
getDeclaringType
- Specified by:
getDeclaringTypein interfaceJava.TypeBodyDeclaration
-
isStatic
public boolean isStatic()- Specified by:
isStaticin interfaceJava.TypeBodyDeclaration
-
getClassName
Description copied from interface:Java.TypeDeclarationDetermine the effective class name, e.g. "pkg.Outer$Inner".- Specified by:
getClassNamein interfaceJava.TypeDeclaration
-
accept
- Specified by:
acceptin interfaceJava.TypeDeclaration
-
accept
- Specified by:
acceptin interfaceJava.TypeBodyDeclaration
-
defineSyntheticField
Inner classes have zero or more synthetic fields that hold references to their enclosing context:this$n-
(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.
nis N-1 for the Nth nesting level; e.g. the public non-static member class of a package member class has a synthetic fieldthis$0. val$local-variable-name-
(Allowed for local classes and anonymous classes; forbidden for member classes)
Hold copies of
finallocal variables of the defining context.
IClass.IFieldarray returned byIClass.getDeclaredIFields2().If a synthetic field with the same name exists already, then it must have the same type and the redefinition is ignored.
- Parameters:
iField-- Throws:
CompileException
-