org.aspectj.ajdt.internal.compiler.ast
Class InterTypeMethodDeclaration

java.lang.Object
  extended by org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
      extended by org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration
          extended by org.aspectj.org.eclipse.jdt.internal.compiler.ast.MethodDeclaration
              extended by org.aspectj.ajdt.internal.compiler.ast.AjMethodDeclaration
                  extended by org.aspectj.ajdt.internal.compiler.ast.InterTypeDeclaration
                      extended by org.aspectj.ajdt.internal.compiler.ast.InterTypeMethodDeclaration
All Implemented Interfaces:
org.aspectj.org.eclipse.jdt.internal.compiler.impl.ReferenceContext, org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants, org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeIds, org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemSeverities

public class InterTypeMethodDeclaration
extends InterTypeDeclaration

An inter-type method declaration.

Author:
Jim Hugunin

Field Summary
 
Fields inherited from class org.aspectj.ajdt.internal.compiler.ast.InterTypeDeclaration
declaredModifiers
 
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.MethodDeclaration
returnType, typeParameters
 
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration
annotations, arguments, binding, bodyEnd, bodyStart, compilationResult, declarationSourceEnd, declarationSourceStart, explicitDeclarations, ignoreFurtherInvestigation, javadoc, modifiers, modifiersSourceStart, scope, selector, statements, thrownExceptions
 
Fields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
Bit1, Bit10, Bit11, Bit12, Bit13, Bit14, Bit15, Bit16, Bit17, Bit18, Bit19, Bit2, Bit20, Bit21, Bit22, Bit23, Bit24, Bit25, Bit26, Bit27, Bit28, Bit29, Bit3, Bit30, Bit31, Bit32, Bit32L, Bit33L, Bit34L, Bit35L, Bit36L, Bit37L, Bit38L, Bit39L, Bit4, Bit40L, Bit41L, Bit42L, Bit43L, Bit44L, Bit45L, Bit46L, Bit47L, Bit48L, Bit49L, Bit5, Bit50L, Bit51L, Bit52L, Bit53L, Bit54L, Bit55L, Bit56L, Bit57L, Bit58L, Bit59L, Bit6, Bit60L, Bit61L, Bit62L, Bit63L, Bit64L, Bit7, Bit8, Bit9, bits, BlockExit, ContainsAssertion, DepthMASK, DepthSHIFT, DidResolve, DisableUnnecessaryCastCheck, DiscardEnclosingInstance, DocumentedFallthrough, Empty, ErrorInSignature, FirstAssignmentToLocal, GenerateCheckcast, HasAbstractMethods, HasAllMethodBodies, HasBeenGenerated, HasBeenResolved, HasLocalType, IgnoreNoEffectAssignCheck, IgnoreRawTypeCheck, InsideJavadoc, INVOCATION_ARGUMENT_OK, INVOCATION_ARGUMENT_UNCHECKED, INVOCATION_ARGUMENT_WILDCARD, IsAnnotationDefaultValue, IsAnonymousType, IsAnySubRoutineEscaping, IsCompoundAssigned, IsDefaultConstructor, IsElseIfStatement, IsImplicitThis, IsImplicitUnit, IsLocalDeclarationReachable, IsLocalType, IsMemberType, IsNonNull, IsReachable, IsReturnedValue, IsSecondaryType, IsStrictlyAssigned, IsSubRoutineEscaping, IsSuperType, IsSynchronized, IsTryBlockExiting, IsUsefulEmptyStatement, IsVarArgs, LabelUsed, NeededScope, NeedFreeReturn, OnDemand, OperatorMASK, OperatorSHIFT, OverridingMethodWithSupercall, ParenthesizedMASK, ParenthesizedSHIFT, RestrictiveFlagMASK, ReturnTypeIDMASK, sourceEnd, sourceStart, SuperAccess, ThenExit, UndocumentedEmptyBlock, UnnecessaryCast, UnsafeCast, Used
 
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.problem.ProblemSeverities
Abort, AbortCompilation, AbortCompilationUnit, AbortMethod, AbortType, Error, Fatal, Ignore, Optional, SecondaryError, Warning
 
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeConstants
ANNOTATION, ANNOTATION_PREFIX, ANNOTATION_SUFFIX, ANONYM_PREFIX, ANONYM_SUFFIX, BOOLEAN, BYTE, CHAR, CharArray_JAVA_IO_OBJECTINPUTSTREAM, CharArray_JAVA_IO_OBJECTOUTPUTSTREAM, CharArray_JAVA_IO_OBJECTSTREAMFIELD, CharArray_JAVA_LANG_ANNOTATION_ANNOTATION, CharArray_JAVA_LANG_ENUM, CharArray_JAVA_LANG_OBJECT, CLINIT, CLONE, CONSTRAINT_EQUAL, CONSTRAINT_EXTENDS, CONSTRAINT_SUPER, DOUBLE, FLOAT, GETCLASS, INIT, INT, IO, JAVA, JAVA_IO, JAVA_IO_EXTERNALIZABLE, JAVA_IO_IOEXCEPTION, JAVA_IO_OBJECTINPUTSTREAM, JAVA_IO_OBJECTOUTPUTSTREAM, JAVA_IO_OBJECTSTREAMEXCEPTION, JAVA_IO_PRINTSTREAM, JAVA_IO_SERIALIZABLE, JAVA_LANG, JAVA_LANG_ANNOTATION_ANNOTATION, JAVA_LANG_ANNOTATION_DOCUMENTED, JAVA_LANG_ANNOTATION_ELEMENTTYPE, JAVA_LANG_ANNOTATION_INHERITED, JAVA_LANG_ANNOTATION_RETENTION, JAVA_LANG_ANNOTATION_RETENTIONPOLICY, JAVA_LANG_ANNOTATION_TARGET, JAVA_LANG_ASSERTIONERROR, JAVA_LANG_BOOLEAN, JAVA_LANG_BYTE, JAVA_LANG_CHARACTER, JAVA_LANG_CLASS, JAVA_LANG_CLASSNOTFOUNDEXCEPTION, JAVA_LANG_CLONEABLE, JAVA_LANG_DEPRECATED, JAVA_LANG_DOUBLE, JAVA_LANG_ENUM, JAVA_LANG_ERROR, JAVA_LANG_EXCEPTION, JAVA_LANG_FLOAT, JAVA_LANG_ILLEGALARGUMENTEXCEPTION, JAVA_LANG_INTEGER, JAVA_LANG_ITERABLE, JAVA_LANG_LONG, JAVA_LANG_NOCLASSDEFERROR, JAVA_LANG_OBJECT, JAVA_LANG_OVERRIDE, JAVA_LANG_REFLECT_CONSTRUCTOR, JAVA_LANG_REFLECT_FIELD, JAVA_LANG_REFLECT_METHOD, JAVA_LANG_RUNTIMEEXCEPTION, JAVA_LANG_SHORT, JAVA_LANG_STRING, JAVA_LANG_STRINGBUFFER, JAVA_LANG_STRINGBUILDER, JAVA_LANG_SUPPRESSWARNINGS, JAVA_LANG_SYSTEM, JAVA_LANG_THROWABLE, JAVA_LANG_VOID, JAVA_UTIL_ITERATOR, LANG, LENGTH, LONG, MAIN, MISMATCH, NULL, OBJECT, OK, PACKAGE_INFO_NAME, READOBJECT, READRESOLVE, REFLECT, SERIALPERSISTENTFIELDS, SERIALVERSIONUID, SHORT, SYNTHETIC_ACCESS_METHOD_PREFIX, SYNTHETIC_ASSERT_DISABLED, SYNTHETIC_CLASS, SYNTHETIC_ENCLOSING_INSTANCE_PREFIX, SYNTHETIC_ENUM_VALUES, SYNTHETIC_OUTER_LOCAL_PREFIX, SYNTHETIC_SWITCH_ENUM_TABLE, TYPE, UNCHECKED, UPPER_ANNOTATION_TYPE, UPPER_CLASS, UPPER_CONSTRUCTOR, UPPER_FIELD, UPPER_LOCAL_VARIABLE, UPPER_METHOD, UPPER_PACKAGE, UPPER_PARAMETER, UPPER_RUNTIME, UPPER_SOURCE, UTIL, VALUE, VALUEOF, VALUES, VOID, WILDCARD_CAPTURE, WILDCARD_CAPTURE_NAME_PREFIX, WILDCARD_CAPTURE_NAME_SUFFIX, WILDCARD_EXTENDS, WILDCARD_MINUS, WILDCARD_NAME, WILDCARD_PLUS, WILDCARD_STAR, WILDCARD_SUPER, WRITEOBJECT, WRITEREPLACE
 
Fields inherited from interface org.aspectj.org.eclipse.jdt.internal.compiler.lookup.TypeIds
Boolean2Boolean, Boolean2Int, Boolean2String, BOXING, Byte2Byte, Byte2Char, Byte2Double, Byte2Float, Byte2Int, Byte2Long, Byte2Short, Byte2String, Char2Byte, Char2Char, Char2Double, Char2Float, Char2Int, Char2Long, Char2Short, Char2String, COMPILE_TYPE_MASK, Double2Byte, Double2Char, Double2Double, Double2Float, Double2Int, Double2Long, Double2Short, Double2String, Float2Byte, Float2Char, Float2Double, Float2Float, Float2Int, Float2Long, Float2Short, Float2String, IMPLICIT_CONVERSION_MASK, Int2Byte, Int2Char, Int2Double, Int2Float, Int2Int, Int2Long, Int2Short, Int2String, Long2Byte, Long2Char, Long2Double, Long2Float, Long2Int, Long2Long, Long2Short, Long2String, NoId, Null2String, Object2Object, Object2String, Short2Byte, Short2Char, Short2Double, Short2Float, Short2Int, Short2Long, Short2Short, Short2String, String2String, T_boolean, T_byte, T_char, T_double, T_float, T_int, T_JavaIoException, T_JavaIoExternalizable, T_JavaIoObjectStreamException, T_JavaIoPrintStream, T_JavaIoSerializable, T_JavaLangAnnotationAnnotation, T_JavaLangAnnotationDocumented, T_JavaLangAnnotationElementType, T_JavaLangAnnotationInherited, T_JavaLangAnnotationRetention, T_JavaLangAnnotationRetentionPolicy, T_JavaLangAnnotationTarget, T_JavaLangAssertionError, T_JavaLangBoolean, T_JavaLangByte, T_JavaLangCharacter, T_JavaLangClass, T_JavaLangClassNotFoundException, T_JavaLangCloneable, T_JavaLangDeprecated, T_JavaLangDouble, T_JavaLangEnum, T_JavaLangError, T_JavaLangException, T_JavaLangFloat, T_JavaLangIllegalArgumentException, T_JavaLangInteger, T_JavaLangIterable, T_JavaLangLong, T_JavaLangNoClassDefError, T_JavaLangObject, T_JavaLangOverride, T_JavaLangReflectConstructor, T_JavaLangReflectField, T_JavaLangReflectMethod, T_JavaLangRuntimeException, T_JavaLangShort, T_JavaLangString, T_JavaLangStringBuffer, T_JavaLangStringBuilder, T_JavaLangSuppressWarnings, T_JavaLangSystem, T_JavaLangThrowable, T_JavaLangVoid, T_JavaUtilIterator, T_long, T_null, T_short, T_undefined, T_void, UNBOXING
 
Constructor Summary
InterTypeMethodDeclaration(org.aspectj.org.eclipse.jdt.internal.compiler.CompilationResult result, org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeReference onType)
           
 
Method Summary
 void analyseCode(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope currentScope, org.aspectj.org.eclipse.jdt.internal.compiler.flow.InitializationFlowContext flowContext, org.aspectj.org.eclipse.jdt.internal.compiler.flow.FlowInfo flowInfo)
           
 EclipseTypeMunger build(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope classScope)
          Called from AspectDeclarations.buildInterTypeAndPerClause
 void generateCode(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope classScope, org.aspectj.org.eclipse.jdt.internal.compiler.ClassFile classFile)
           
 void generateDispatchMethod(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope classScope, org.aspectj.org.eclipse.jdt.internal.compiler.ClassFile classFile)
           
 boolean isFinal()
           
 void parseStatements(org.aspectj.org.eclipse.jdt.internal.compiler.parser.Parser parser, org.aspectj.org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration unit)
           
 void resolve(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope upperScope)
           
 void resolveStatements()
           
 
Methods inherited from class org.aspectj.ajdt.internal.compiler.ast.InterTypeDeclaration
addAtAspectJAnnotations, determineTypeVariableAliases, ensureScopeSetup, fixSuperCallsInBody, getDeclaredSelector, getOnType, getSignature, isTargetAnnotation, isTargetEnum, setDeclaredModifiers, setOnType, setSelector
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.MethodDeclaration
isMethod, printReturnType, traverse, typeParameters
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration
abort, bindArguments, bindThrownExceptions, compilationResult, finishResolveTypes, generateCode, hasErrors, isAbstract, isAnnotationMethod, isClinit, isConstructor, isDefaultConstructor, isInitializationMethod, isNative, isStatic, postParse, print, printBody, resolveJavadoc, tagAsHavingErrors
 
Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.ast.ASTNode
checkInvocationArguments, concreteStatement, isFieldUseDeprecated, isImplicitThis, isMethodUseDeprecated, isSuper, isThis, isTypeUseDeprecated, printAnnotations, printIndent, printModifiers, resolveAnnotations, resolveDeprecatedAnnotations, sourceEnd, sourceStart, toString, traverse
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

InterTypeMethodDeclaration

public InterTypeMethodDeclaration(org.aspectj.org.eclipse.jdt.internal.compiler.CompilationResult result,
                                  org.aspectj.org.eclipse.jdt.internal.compiler.ast.TypeReference onType)
Method Detail

parseStatements

public void parseStatements(org.aspectj.org.eclipse.jdt.internal.compiler.parser.Parser parser,
                            org.aspectj.org.eclipse.jdt.internal.compiler.ast.CompilationUnitDeclaration unit)
Overrides:
parseStatements in class org.aspectj.org.eclipse.jdt.internal.compiler.ast.MethodDeclaration

isFinal

public boolean isFinal()

analyseCode

public void analyseCode(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope currentScope,
                        org.aspectj.org.eclipse.jdt.internal.compiler.flow.InitializationFlowContext flowContext,
                        org.aspectj.org.eclipse.jdt.internal.compiler.flow.FlowInfo flowInfo)
Overrides:
analyseCode in class org.aspectj.org.eclipse.jdt.internal.compiler.ast.MethodDeclaration

resolve

public void resolve(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope upperScope)
Overrides:
resolve in class InterTypeDeclaration

resolveStatements

public void resolveStatements()
Overrides:
resolveStatements in class org.aspectj.org.eclipse.jdt.internal.compiler.ast.MethodDeclaration

build

public EclipseTypeMunger build(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope classScope)
Description copied from class: InterTypeDeclaration
Called from AspectDeclarations.buildInterTypeAndPerClause

Specified by:
build in class InterTypeDeclaration

generateCode

public void generateCode(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope classScope,
                         org.aspectj.org.eclipse.jdt.internal.compiler.ClassFile classFile)
Overrides:
generateCode in class org.aspectj.org.eclipse.jdt.internal.compiler.ast.AbstractMethodDeclaration

generateDispatchMethod

public void generateDispatchMethod(org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ClassScope classScope,
                                   org.aspectj.org.eclipse.jdt.internal.compiler.ClassFile classFile)