Package org.codehaus.janino
Class Java.AbstractTypeDeclaration
- java.lang.Object
-
- org.codehaus.janino.Java.AbstractTypeDeclaration
-
- All Implemented Interfaces:
Java.Locatable
,Java.Scope
,Java.TypeDeclaration
- Direct Known Subclasses:
Java.ClassDeclaration
,Java.InterfaceDeclaration
- Enclosing class:
- Java
public abstract static class Java.AbstractTypeDeclaration extends Object implements Java.TypeDeclaration
Abstract implementation ofJava.TypeDeclaration
.
-
-
Field Summary
Fields Modifier and Type Field Description int
anonymousClassCount
For naming anonymous classes.int
localClassCount
For naming local classes.
-
Constructor Summary
Constructors Constructor Description AbstractTypeDeclaration(Location location, Java.Modifiers modifiers)
-
Method Summary
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface org.codehaus.janino.Java.TypeDeclaration
accept, getClassName
-
-
-
-
Constructor Detail
-
AbstractTypeDeclaration
public AbstractTypeDeclaration(Location location, Java.Modifiers modifiers)
-
-
Method Detail
-
getModifierFlags
public short getModifierFlags()
- Specified by:
getModifierFlags
in interfaceJava.TypeDeclaration
- Returns:
- The or'ed modifier flags of the type, as defined in
Mod
-
getAnnotations
public Java.Annotation[] getAnnotations()
- Specified by:
getAnnotations
in interfaceJava.TypeDeclaration
- Returns:
- The annotations of this
Java.TypeDeclaration
-
setEnclosingScope
public void setEnclosingScope(Java.Scope enclosingScope)
Sets the enclosing scope of thisJava.TypeDeclaration
.
-
getEnclosingScope
public Java.Scope getEnclosingScope()
- Specified by:
getEnclosingScope
in interfaceJava.Scope
- Returns:
- The scope that encloses this scope, or
null
-
invalidateMethodCaches
public void invalidateMethodCaches()
Invalidates the method cache of theresolvedType
. This is necessary when methods are added during compilation
-
addMemberTypeDeclaration
public void addMemberTypeDeclaration(Java.MemberTypeDeclaration mcoid)
Adds oneJava.MemberTypeDeclaration
to this type.
-
addDeclaredMethod
public void addDeclaredMethod(Java.MethodDeclarator method)
Adds oneJava.MethodDeclarator
to this type.
-
getMemberTypeDeclarations
public Collection<Java.MemberTypeDeclaration> getMemberTypeDeclarations()
- Specified by:
getMemberTypeDeclarations
in interfaceJava.TypeDeclaration
- Returns:
- The (possibly empty) set of member types declared inside this
Java.TypeDeclaration
-
getMemberTypeDeclaration
public Java.MemberTypeDeclaration getMemberTypeDeclaration(String name)
Description copied from interface:Java.TypeDeclaration
Return the member type with the given name.- Specified by:
getMemberTypeDeclaration
in interfaceJava.TypeDeclaration
- Returns:
null
if a member type with that name is not declared
-
getMethodDeclaration
public Java.MethodDeclarator getMethodDeclaration(String name)
Description copied from interface:Java.TypeDeclaration
Return the first method declared with the given name. (Does not honor inherited methods.)- Specified by:
getMethodDeclaration
in interfaceJava.TypeDeclaration
- Returns:
null
if a method with this name is not declared
-
getMethodDeclarations
public List<Java.MethodDeclarator> getMethodDeclarations()
- Specified by:
getMethodDeclarations
in interfaceJava.TypeDeclaration
- Returns:
- The list of methods declared in this
Java.TypeDeclaration
, not including methods declared in supertypes
-
createLocalTypeName
public String createLocalTypeName(String localTypeName)
Description copied from interface:Java.TypeDeclaration
Creates a unique name for a local class or interface.- Specified by:
createLocalTypeName
in interfaceJava.TypeDeclaration
-
createAnonymousClassName
public String createAnonymousClassName()
Description copied from interface:Java.TypeDeclaration
Creates a unique name for an anonymous class.- Specified by:
createAnonymousClassName
in interfaceJava.TypeDeclaration
-
getLocation
public Location getLocation()
- Specified by:
getLocation
in interfaceJava.Locatable
- Returns:
- The location of this object
-
throwCompileException
public void throwCompileException(String message) throws CompileException
Description copied from interface:Java.Locatable
Throw aCompileException
with the given message and this object's location.- Specified by:
throwCompileException
in interfaceJava.Locatable
- Parameters:
message
- The message to report- Throws:
CompileException
-
-