Klasse ParameterizedGenericMethodBinding
java.lang.Object
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ParameterizedMethodBinding
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ParameterizedGenericMethodBinding
- Alle implementierten Schnittstellen:
Substitution
- Bekannte direkte Unterklassen:
PolyParameterizedGenericMethodBinding
public class ParameterizedGenericMethodBinding
extends ParameterizedMethodBinding
implements Substitution
Binding denoting a generic method after type parameter substitutions got performed.
On parameterized type bindings, all methods got substituted, regardless whether
their signature did involve generics or not, so as to get the proper declaringClass for
these methods.
-
Verschachtelte Klassen - Übersicht
Von Schnittstelle geerbte verschachtelte Klassen/Schnittstellen org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Substitution
Substitution.NullSubstitution -
Feldübersicht
FelderVon Klasse geerbte Felder org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ParameterizedMethodBinding
originalMethodVon Klasse geerbte Felder org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding
declaringClass, defaultNullness, extendedTagBits, modifiers, parameterNames, parameterNonNullness, parameters, receiver, returnType, selector, tagBits, thrownExceptions, typeAnnotations, typeVariablesVon Klasse geerbte Felder 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 -
Konstruktorübersicht
KonstruktorenKonstruktorBeschreibungParameterizedGenericMethodBinding(MethodBinding originalMethod, RawTypeBinding rawType, LookupEnvironment environment) Create raw generic method for raw type (double substitution from type vars with raw type arguments, and erasure of method variables) Only invoked for non-static generic methods of raw typeParameterizedGenericMethodBinding(MethodBinding originalMethod, TypeBinding[] typeArguments, LookupEnvironment environment, boolean inferredWithUncheckConversion, boolean hasReturnProblem, TypeBinding targetType) Create method of parameterized type, substituting original parameters with type arguments. -
Methodenübersicht
Modifizierer und TypMethodeBeschreibungbooleanSubtypes can override this to return true if an access method should be used when referring to this method binding.static MethodBindingcomputeCompatibleMethod(MethodBinding originalMethod, TypeBinding[] arguments, Scope scope, InvocationSite invocationSite) Perform inference of generic method type parameters and/or expected typestatic MethodBindingcomputeCompatibleMethod18(MethodBinding originalMethod, TypeBinding[] arguments, Scope scope, InvocationSite invocationSite) char[]computeUniqueKey(boolean isLeaf) Returns the lookup environmentgetAccessMethod(boolean staticReference) This will only be called if alwaysNeedsAccessMethod() returns true.booleanReturns true if some parameters got substituted.booleanReturns true if the return type got substituted.booleanbooleanReturns true for raw substitutionsubstitute(TypeVariableBinding originalVariable) Returns the type substitute for a given type variable, or itself if no substitution got performed.Returns the method to use during tiebreak (usually the method itself).Von Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ParameterizedMethodBinding
canBeSeenBy, instantiateGetClass, original, shallowOriginal, sourceMethodVon Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding
areParameterErasuresEqual, areParametersCompatibleWith, areParametersEqual, areTypeVariableErasuresEqual, asRawMethod, canBeSeenBy, canBeSeenBy, collectMissingTypes, computeSubstitutedMethod, constantPoolName, doesParameterLengthMatch, fillInDefaultNonNullness, fillInDefaultNonNullness18, findOriginalInheritedMethod, findPrivilegedBinding, genericSignature, getAccessFlags, getAllTypeVariables, getAnnotations, getAnnotationTagBits, getDefaultValue, getParameterAnnotations, getTypeAnnotations, getTypeVariable, getVisibleBinding, getVisibleBinding, hasNonNullDefaultForParameter, hasNonNullDefaultForReturnType, hasPolymorphicSignature, isAbstract, isBridge, isCanonicalConstructor, isCompactConstructor, isConstructor, isDefault, isDefaultAbstract, isDefaultMethod, isDeprecated, isFinal, isImplementing, isImplicit, isMain, isNative, isOrEnclosedByPrivateType, isOverriding, isPolymorphic, isPrivate, isProtected, isPublic, isStatic, isStrictfp, isSynchronized, isSynthetic, isUsed, isVarargs, isViewedAsDeprecated, isVoidMethod, kind, readableName, redeclaresPublicObjectMethod, setAnnotations, setAnnotations, setDefaultValue, setParameterAnnotations, setSelector, setTypeAnnotations, shortReadableName, signature, signature, sourceEnd, sourceLambda, sourceRecordComponent, sourceStart, toString, typeVariables, updateTypeVariableBindingVon Klasse geerbte Methoden org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Binding
computeUniqueKey, initializeDeprecatedAnnotationTagBits, isAnnotationType, isParameter, isTaggedRepeatable, isValid, isValidBinding, isVolatile, problemId, setAnnotations
-
Felddetails
-
typeArguments
-
environment
-
inferredReturnType
public boolean inferredReturnType -
wasInferred
public boolean wasInferred -
isRaw
public boolean isRaw -
inferredWithUncheckedConversion
public boolean inferredWithUncheckedConversion -
targetType
-
-
Konstruktordetails
-
ParameterizedGenericMethodBinding
public ParameterizedGenericMethodBinding(MethodBinding originalMethod, RawTypeBinding rawType, LookupEnvironment environment) Create raw generic method for raw type (double substitution from type vars with raw type arguments, and erasure of method variables) Only invoked for non-static generic methods of raw type -
ParameterizedGenericMethodBinding
public ParameterizedGenericMethodBinding(MethodBinding originalMethod, TypeBinding[] typeArguments, LookupEnvironment environment, boolean inferredWithUncheckConversion, boolean hasReturnProblem, TypeBinding targetType) Create method of parameterized type, substituting original parameters with type arguments.
-
-
Methodendetails
-
computeCompatibleMethod
public static MethodBinding computeCompatibleMethod(MethodBinding originalMethod, TypeBinding[] arguments, Scope scope, InvocationSite invocationSite) Perform inference of generic method type parameters and/or expected typeIn 1.8+ if the expected type is not yet available due to this call being an argument to an outer call which is not overload-resolved yet, the returned method binding will be a PolyParameterizedGenericMethodBinding.
-
computeCompatibleMethod18
public static MethodBinding computeCompatibleMethod18(MethodBinding originalMethod, TypeBinding[] arguments, Scope scope, InvocationSite invocationSite) -
computeUniqueKey
public char[] computeUniqueKey(boolean isLeaf) - Setzt außer Kraft:
computeUniqueKeyin KlasseMethodBinding
-
environment
Beschreibung aus Schnittstelle kopiert:SubstitutionReturns the lookup environment- Angegeben von:
environmentin SchnittstelleSubstitution- Siehe auch:
-
hasSubstitutedParameters
public boolean hasSubstitutedParameters()Returns true if some parameters got substituted. NOTE: generic method invocation delegates to its declaring method (could be a parameterized one)- Setzt außer Kraft:
hasSubstitutedParametersin KlasseParameterizedMethodBinding
-
hasSubstitutedReturnType
public boolean hasSubstitutedReturnType()Returns true if the return type got substituted. NOTE: generic method invocation delegates to its declaring method (could be a parameterized one)- Setzt außer Kraft:
hasSubstitutedReturnTypein KlasseParameterizedMethodBinding
-
isParameterizedGeneric
public boolean isParameterizedGeneric()- Setzt außer Kraft:
isParameterizedGenericin KlasseMethodBinding
-
isRawSubstitution
public boolean isRawSubstitution()Beschreibung aus Schnittstelle kopiert:SubstitutionReturns true for raw substitution- Angegeben von:
isRawSubstitutionin SchnittstelleSubstitution- Siehe auch:
-
substitute
Beschreibung aus Schnittstelle kopiert:SubstitutionReturns the type substitute for a given type variable, or itself if no substitution got performed.- Angegeben von:
substitutein SchnittstelleSubstitution- Siehe auch:
-
tiebreakMethod
Beschreibung aus Klasse kopiert:MethodBindingReturns the method to use during tiebreak (usually the method itself). For generic method invocations, tiebreak needs to use generic method with erasure substitutes.- Setzt außer Kraft:
tiebreakMethodin KlasseMethodBinding- Siehe auch:
-
genericMethod
- Setzt außer Kraft:
genericMethodin KlasseMethodBinding
-
alwaysNeedsAccessMethod
public boolean alwaysNeedsAccessMethod()Beschreibung aus Klasse kopiert: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.- Setzt außer Kraft:
alwaysNeedsAccessMethodin KlasseParameterizedMethodBinding
-
getAccessMethod
Beschreibung aus Klasse kopiert:MethodBindingThis will only be called if alwaysNeedsAccessMethod() returns true. In that case it should return the access method to be used.- Setzt außer Kraft:
getAccessMethodin KlasseParameterizedMethodBinding
-