Class InterTypeMethodBinding
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding
org.aspectj.ajdt.internal.compiler.lookup.InterTypeMethodBinding
A special method binding representing an ITD that pretends to be a member in some target type for matching purposes.
-
Field Summary
FieldsModifier and TypeFieldDescriptionFields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding
declaringClass, defaultNullness, extendedTagBits, modifiers, PARAM_NONNULL, PARAM_NOTOWNING, PARAM_NULLABLE, PARAM_NULLITY, PARAM_OWNING, parameterFlowBits, parameterNames, parameters, receiver, returnType, selector, tagBits, thrownExceptions, typeAnnotations, typeVariablesFields inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding
ANY_EXCEPTION, ARRAY_TYPE, BASE_TYPE, DefaultLocationArrayContents, DefaultLocationField, DefaultLocationParameter, DefaultLocationReturnType, DefaultLocationsForTrueValue, DefaultLocationTypeArgument, DefaultLocationTypeBound, DefaultLocationTypeParameter, FIELD, GENERIC_TYPE, IMPORT, INTERSECTION_TYPE, INTERSECTION_TYPE18, LOCAL, METHOD, MODULE, NO_ANNOTATIONS, NO_COMPONENTS, NO_ELEMENT_VALUE_PAIRS, NO_EXCEPTIONS, NO_FIELDS, NO_MEMBER_TYPES, NO_METHODS, NO_MODULES, NO_NULL_DEFAULT, NO_PACKAGES, NO_PARAMETER_NAMES, NO_PARAMETERS, NO_PERMITTEDTYPES, NO_PLAIN_PACKAGES, NO_REFERENCE_TYPES, NO_SUPERINTERFACES, NO_TYPE_VARIABLES, NO_TYPES, NULL_UNSPECIFIED_BY_DEFAULT, NullnessDefaultMASK, PACKAGE, PARAMETERIZED_TYPE, PATTERN, POLY_TYPE, RAW_TYPE, RECORD_COMPONENT, TYPE, TYPE_PARAMETER, TYPE_USE, UNINITIALIZED_COMPONENTS, UNINITIALIZED_FIELDS, UNINITIALIZED_METHODS, UNINITIALIZED_REFERENCE_TYPES, VARIABLE, WILDCARD_TYPE -
Constructor Summary
ConstructorsConstructorDescriptionInterTypeMethodBinding(EclipseFactory world, ResolvedTypeMunger munger, UnresolvedType withinType, AbstractMethodDeclaration sourceMethod) -
Method Summary
Modifier and TypeMethodDescriptionbooleanSubtypes can override this to return true if an access method should be used when referring to this method binding.booleancanBeSeenBy(TypeBinding receiverType, InvocationSite invocationSite, Scope scope) getAccessMethod(boolean staticReference) This will only be called if alwaysNeedsAccessMethod() returns true.booleanisFinal()toString()Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding
areParameterErasuresEqual, areParametersCompatibleWith, areParametersEqual, areTypeVariableErasuresEqual, asRawMethod, canBeSeenBy, canBeSeenBy, collectMissingTypes, computeSignature, computeSubstitutedMethod, computeUniqueKey, constantPoolName, doesParameterLengthMatch, fillInDefaultNonNullness, fillInDefaultNonNullness18, findOriginalInheritedMethod, findPrivilegedBinding, flowBitFromAnnotationTagBit, genericMethod, genericSignature, getAccessFlags, getAllTypeVariables, getAnnotations, getAnnotationTagBits, getDefaultValue, getParameterAnnotations, getParameterNullness, getTypeAnnotations, getTypeVariable, getVisibleBinding, getVisibleBinding, hasNonNullDefaultForParameter, hasNonNullDefaultForReturnType, hasPolymorphicSignature, hasSubstitutedParameters, hasSubstitutedReturnType, isAbstract, isBridge, isCandindateMain, isCanonicalConstructor, isClosingMethod, isCompactConstructor, isConstructor, isDefault, isDefaultAbstract, isDefaultMethod, isDeprecated, isImplementing, isImplicit, isMain, isNative, isOrEnclosedByPrivateType, isOverriding, isParameterizedGeneric, isPolymorphic, isPrivate, isProtected, isPublic, isStatic, isStrictfp, isSynchronized, isSynthetic, isUsed, isVarargs, isViewedAsDeprecated, isVoidMethod, isWellknownMethod, isWellknownMethod, kind, notownsParameter, original, ownsParameter, readableName, redeclaresPublicObjectMethod, setAnnotations, setAnnotations, setDefaultValue, setParameterAnnotations, setSelector, setTypeAnnotations, shallowOriginal, shortReadableName, signature, signature, sourceEnd, sourceLambda, sourceRecordComponent, sourceStart, tiebreakMethod, typeVariables, updateTypeVariableBinding, verifyOverrideCompatibilityMethods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding
computeUniqueKey, initializeDeprecatedAnnotationTagBits, isAnnotationType, isParameter, isPatternVariable, isTaggedRepeatable, isValid, isValidBinding, isVolatile, problemId, setAnnotations
-
Field Details
-
postDispatchMethod
-
sourceMethod
-
-
Constructor Details
-
InterTypeMethodBinding
public InterTypeMethodBinding(EclipseFactory world, ResolvedTypeMunger munger, UnresolvedType withinType, AbstractMethodDeclaration sourceMethod)
-
-
Method Details
-
canBeSeenBy
- Overrides:
canBeSeenByin classMethodBinding
-
isFinal
public boolean isFinal()- Overrides:
isFinalin classMethodBinding
-
getAccessMethod
Description copied from class:MethodBindingThis will only be called if alwaysNeedsAccessMethod() returns true. In that case it should return the access method to be used.- Overrides:
getAccessMethodin classMethodBinding
-
alwaysNeedsAccessMethod
public boolean alwaysNeedsAccessMethod()Description copied from class:MethodBindingSubtypes can override this to return true if an access method should be used when referring to this method binding. Currently used for AspectJ's inter-type method declarations.- Overrides:
alwaysNeedsAccessMethodin classMethodBinding
-
sourceMethod
- Overrides:
sourceMethodin classMethodBinding
-
getTargetType
-
getOwningClass
-
toString
- Overrides:
toStringin classMethodBinding
-