Class SyntheticMethodBinding
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.SyntheticMethodBinding
- Direct Known Subclasses:
SimpleSyntheticAccessMethodBinding
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final intstatic final intstatic final intstatic final intstatic final intintstatic final intstatic final intstatic final intintstatic final intstatic final intintstatic final intstatic final intintstatic final intstatic final intstatic final intstatic final intMethod reference expression whose target FI is Serializable.static final intServes as a placeholder for a method reference whose target FI is Serializable.intintstatic final intstatic final intstatic final intSwitch (one from many) linked to the switch tablestatic final intstatic final intFields 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
ConstructorsConstructorDescriptionSyntheticMethodBinding(int purpose, ArrayBinding arrayType, char[] selector, SourceTypeBinding declaringClass) SyntheticMethodBinding(LambdaExpression lambda, char[] lambdaName, SourceTypeBinding declaringClass) SyntheticMethodBinding(ReferenceExpression ref, SourceTypeBinding declaringClass) SyntheticMethodBinding(FieldBinding targetField, boolean isReadAccess, boolean isSuperAccess, ReferenceBinding declaringClass) SyntheticMethodBinding(FieldBinding targetField, ReferenceBinding declaringClass, TypeBinding enumBinding, char[] selector, SwitchStatement switchStatement) SyntheticMethodBinding(MethodBinding myBinding) SyntheticMethodBinding(MethodBinding targetMethod, boolean isSuperAccess, ReferenceBinding declaringClass) SyntheticMethodBinding(MethodBinding privateConstructor, MethodBinding publicConstructor, char[] selector, TypeBinding[] enclosingInstances, SourceTypeBinding declaringClass) SyntheticMethodBinding(MethodBinding overridenMethodToBridge, MethodBinding targetMethod, SourceTypeBinding declaringClass) Construct a bridge methodSyntheticMethodBinding(MethodBinding overridenMethodToBridge, SourceTypeBinding declaringClass) SyntheticMethodBinding(ReferenceBinding declaringClass, char[] selector, int index) SyntheticMethodBinding(ReferenceBinding declaringClass, RecordComponentBinding[] rcb) SyntheticMethodBinding(ReferenceBinding declaringClass, RecordComponentBinding rcb, int index) SyntheticMethodBinding(SourceTypeBinding declaringClass) Construct $deserializeLambda$ methodSyntheticMethodBinding(SourceTypeBinding declaringEnum, char[] selector) Construct enum special methods: values or valueOf methodsSyntheticMethodBinding(SourceTypeBinding declaringEnum, int startIndex, int endIndex) Construct enum special methods: values or valueOf methods -
Method Summary
Modifier and TypeMethodDescriptionorg.aspectj.org.eclipse.jdt.internal.compiler.lookup.ParameterNonNullDefaultProvidervoidinitializeConstructorAccessor(MethodBinding accessedConstructor) An constructor accessor is a constructor with an extra argument (declaringClass), in case of collision with an existing constructor, then add again an extra argument (declaringClass again).voidinitializeMethodAccessor(MethodBinding accessedMethod, boolean isSuperAccess, ReferenceBinding receiverType) An method accessor is a method with an access$N selector, where N is incremented in case of collisions.protected booleanvoidmarkNonNull(LookupEnvironment environment) voidsetAnnotations(AnnotationBinding[] annotations, Scope scope, boolean forceStore) Methods inherited from class org.aspectj.org.eclipse.jdt.internal.compiler.lookup.MethodBinding
alwaysNeedsAccessMethod, areParameterErasuresEqual, areParametersCompatibleWith, areParametersEqual, areTypeVariableErasuresEqual, asRawMethod, canBeSeenBy, canBeSeenBy, canBeSeenBy, collectMissingTypes, computeSignature, computeSubstitutedMethod, computeUniqueKey, constantPoolName, doesParameterLengthMatch, fillInDefaultNonNullness, fillInDefaultNonNullness18, findOriginalInheritedMethod, findPrivilegedBinding, flowBitFromAnnotationTagBit, genericMethod, genericSignature, getAccessFlags, getAccessMethod, getAllTypeVariables, getAnnotations, getAnnotationTagBits, getDefaultValue, getParameterAnnotations, getParameterNullness, getTypeAnnotations, getTypeVariable, getVisibleBinding, getVisibleBinding, hasNonNullDefaultForReturnType, hasPolymorphicSignature, hasSubstitutedParameters, hasSubstitutedReturnType, isAbstract, isBridge, isCandindateMain, isCanonicalConstructor, isClosingMethod, isCompactConstructor, isConstructor, isDefault, isDefaultAbstract, isDefaultMethod, isDeprecated, isFinal, 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, sourceMethod, sourceStart, tiebreakMethod, toString, 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
-
Field Details
-
targetReadField
-
targetWriteField
-
targetMethod
-
targetEnumType
-
lambda
-
recordComponentBinding
-
switchStatement
Switch (one from many) linked to the switch table -
serializableMethodRef
Method reference expression whose target FI is Serializable. Should be set when purpose isSerializableMethodReference -
purpose
public int purpose -
startIndex
public int startIndex -
endIndex
public int endIndex -
FieldReadAccess
public static final int FieldReadAccess- See Also:
-
FieldWriteAccess
public static final int FieldWriteAccess- See Also:
-
SuperFieldReadAccess
public static final int SuperFieldReadAccess- See Also:
-
SuperFieldWriteAccess
public static final int SuperFieldWriteAccess- See Also:
-
MethodAccess
public static final int MethodAccess- See Also:
-
ConstructorAccess
public static final int ConstructorAccess- See Also:
-
SuperMethodAccess
public static final int SuperMethodAccess- See Also:
-
BridgeMethod
public static final int BridgeMethod- See Also:
-
EnumValues
public static final int EnumValues- See Also:
-
EnumValueOf
public static final int EnumValueOf- See Also:
-
SwitchTable
public static final int SwitchTable- See Also:
-
TooManyEnumsConstants
public static final int TooManyEnumsConstants- See Also:
-
LambdaMethod
public static final int LambdaMethod- See Also:
-
ArrayConstructor
public static final int ArrayConstructor- See Also:
-
ArrayClone
public static final int ArrayClone- See Also:
-
FactoryMethod
public static final int FactoryMethod- See Also:
-
DeserializeLambda
public static final int DeserializeLambda- See Also:
-
SerializableMethodReference
public static final int SerializableMethodReferenceServes as a placeholder for a method reference whose target FI is Serializable. Is never directly materialized in bytecode- See Also:
-
RecordOverrideToString
public static final int RecordOverrideToString- See Also:
-
RecordOverrideHashCode
public static final int RecordOverrideHashCode- See Also:
-
RecordOverrideEquals
public static final int RecordOverrideEquals- See Also:
-
RecordCanonicalConstructor
public static final int RecordCanonicalConstructor- See Also:
-
sourceStart
public int sourceStart -
index
public int index -
fakePaddedParameters
public int fakePaddedParameters
-
-
Constructor Details
-
SyntheticMethodBinding
public SyntheticMethodBinding(FieldBinding targetField, boolean isReadAccess, boolean isSuperAccess, ReferenceBinding declaringClass) -
SyntheticMethodBinding
public SyntheticMethodBinding(FieldBinding targetField, ReferenceBinding declaringClass, TypeBinding enumBinding, char[] selector, SwitchStatement switchStatement) -
SyntheticMethodBinding
public SyntheticMethodBinding(MethodBinding targetMethod, boolean isSuperAccess, ReferenceBinding declaringClass) -
SyntheticMethodBinding
public SyntheticMethodBinding(MethodBinding overridenMethodToBridge, MethodBinding targetMethod, SourceTypeBinding declaringClass) Construct a bridge method -
SyntheticMethodBinding
Construct enum special methods: values or valueOf methods -
SyntheticMethodBinding
Construct $deserializeLambda$ method -
SyntheticMethodBinding
Construct enum special methods: values or valueOf methods -
SyntheticMethodBinding
public SyntheticMethodBinding(MethodBinding overridenMethodToBridge, SourceTypeBinding declaringClass) -
SyntheticMethodBinding
public SyntheticMethodBinding(int purpose, ArrayBinding arrayType, char[] selector, SourceTypeBinding declaringClass) -
SyntheticMethodBinding
public SyntheticMethodBinding(LambdaExpression lambda, char[] lambdaName, SourceTypeBinding declaringClass) -
SyntheticMethodBinding
-
SyntheticMethodBinding
public SyntheticMethodBinding(MethodBinding privateConstructor, MethodBinding publicConstructor, char[] selector, TypeBinding[] enclosingInstances, SourceTypeBinding declaringClass) -
SyntheticMethodBinding
-
SyntheticMethodBinding
public SyntheticMethodBinding(ReferenceBinding declaringClass, RecordComponentBinding rcb, int index) -
SyntheticMethodBinding
-
SyntheticMethodBinding
-
-
Method Details
-
initializeConstructorAccessor
An constructor accessor is a constructor with an extra argument (declaringClass), in case of collision with an existing constructor, then add again an extra argument (declaringClass again). -
initializeMethodAccessor
public void initializeMethodAccessor(MethodBinding accessedMethod, boolean isSuperAccess, ReferenceBinding receiverType) An method accessor is a method with an access$N selector, where N is incremented in case of collisions. -
isConstructorRelated
protected boolean isConstructorRelated() -
sourceLambda
- Overrides:
sourceLambdain classMethodBinding
-
sourceRecordComponent
- Overrides:
sourceRecordComponentin classMethodBinding
-
hasNonNullDefaultForParameter
public org.aspectj.org.eclipse.jdt.internal.compiler.lookup.ParameterNonNullDefaultProvider hasNonNullDefaultForParameter(AbstractMethodDeclaration srcMethod) - Overrides:
hasNonNullDefaultForParameterin classMethodBinding
-
markNonNull
-
setAnnotations
- Overrides:
setAnnotationsin classBinding
-