org.aspectj.org.eclipse.jdt.internal.compiler.lookup
Class ClassScope

java.lang.Object
  extended by org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope
      extended by org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope
Direct Known Subclasses:
InterTypeScope

public class ClassScope
extends Scope

AspectJ Extension - added many hooks


Field Summary
 TypeDeclaration referenceContext
           
 TypeReference superTypeReference
           
 
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope
AUTOBOX_COMPATIBLE, BLOCK_SCOPE, CLASS_SCOPE, COMPATIBLE, COMPILATION_UNIT_SCOPE, EQUAL_OR_MORE_SPECIFIC, kind, METHOD_SCOPE, MORE_GENERIC, NOT_COMPATIBLE, NOT_RELATED, parent, VARARGS_COMPATIBLE
 
Constructor Summary
ClassScope(Scope parent, TypeDeclaration context)
           
 
Method Summary
 int addDepth()
           
 void checkParameterizedSuperTypeCollisions()
           
 void checkParameterizedTypeBounds()
           
 boolean detectHierarchyCycle(TypeBinding superType, TypeReference reference)
           
 SourceTypeBinding invocationType()
          For Java scopes, the invocationType is always the same as the enclosingSourceType This distinction is important for AspectJ's inter-type declarations For inter-type declarations, the invocationType is the lexically enclosing type.
 ProblemReporter problemReporter()
           
 TypeDeclaration referenceType()
           
 java.lang.String toString()
           
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Scope
boxing, classScope, compareTypes, compilationUnitScope, compilerOptions, computeCompatibleMethod, connectTypeVariables, convertEliminatingTypeVariables, createArrayType, createTypeVariables, deferBoundCheck, enclosingClassScope, enclosingMethodScope, enclosingReceiverType, enclosingReferenceContext, enclosingSourceType, environment, findDefaultAbstractMethod, findDirectMemberType, findExactMethod, findField, findField, findMemberType, findMethod, findMethod, findMethodForArray, findMethodInSuperInterfaces, findPrivilegedHandler, findType, findTypeVariable, findVariable, getBaseType, getBinding, getConstructor, getCurrentPackage, getDeclarationModifiers, getField, getImplicitMethod, getJavaIoSerializable, getJavaLangAnnotationAnnotation, getJavaLangAssertionError, getJavaLangClass, getJavaLangCloneable, getJavaLangEnum, getJavaLangIterable, getJavaLangObject, getJavaLangString, getJavaLangThrowable, getJavaUtilIterator, getMemberType, getMethod, getPackage, getStaticFactory, getType, getType, getType, getTypeOrPackage, greaterLowerBound, greaterLowerBound, hasErasedCandidatesCollisions, innermostSwitchCase, isAcceptableMethod, isBoxingCompatibleWith, isDefinedInField, isDefinedInMethod, isDefinedInSameUnit, isDefinedInType, isInsideCase, isInsideDeprecatedCode, isPossibleSubtypeOfRawType, lowerUpperBound, methodScope, minimalErasedCandidates, mostSpecificClassMethodBinding, mostSpecificInterfaceMethodBinding, mostSpecificMethodBinding, outerMostClassScope, outerMostMethodScope, parameterCompatibilityLevel, referenceCompilationUnit, referenceContext, substitute, substitute, substitute
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

referenceContext

public TypeDeclaration referenceContext

superTypeReference

public TypeReference superTypeReference
Constructor Detail

ClassScope

public ClassScope(Scope parent,
                  TypeDeclaration context)
Method Detail

checkParameterizedSuperTypeCollisions

public void checkParameterizedSuperTypeCollisions()

checkParameterizedTypeBounds

public void checkParameterizedTypeBounds()

detectHierarchyCycle

public boolean detectHierarchyCycle(TypeBinding superType,
                                    TypeReference reference)

problemReporter

public ProblemReporter problemReporter()
Specified by:
problemReporter in class Scope

referenceType

public TypeDeclaration referenceType()

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

addDepth

public int addDepth()

invocationType

public SourceTypeBinding invocationType()
Description copied from class: Scope
For Java scopes, the invocationType is always the same as the enclosingSourceType This distinction is important for AspectJ's inter-type declarations For inter-type declarations, the invocationType is the lexically enclosing type.

Overrides:
invocationType in class Scope