Uses of Interface
org.aspectj.org.eclipse.jdt.internal.compiler.lookup.Substitution
Packages that use Substitution
Package
Description
-
Uses of Substitution in org.aspectj.org.eclipse.jdt.internal.compiler.ast
Methods in org.aspectj.org.eclipse.jdt.internal.compiler.ast with parameters of type SubstitutionModifier and TypeMethodDescriptionstatic NullAnnotationMatchingNullAnnotationMatching.analyse(TypeBinding requiredType, TypeBinding providedType, TypeBinding providedSubstitute, Substitution substitution, int nullStatus, Expression providedExpression, NullAnnotationMatching.CheckMode mode) Find any mismatches between the two given types, which are caused by null type annotations.protected voidTypeReference.checkNullConstraints(Scope scope, Substitution substitution, TypeBinding[] variables, int rank) Check whether this type reference conforms to the null constraints defined for the corresponding type variable.static voidLambdaExpression.updateLocalTypesInMethod(MethodBinding method, Scope.Substitutor substor, Substitution subst) -
Uses of Substitution in org.aspectj.org.eclipse.jdt.internal.compiler.lookup
Classes in org.aspectj.org.eclipse.jdt.internal.compiler.lookup that implement SubstitutionModifier and TypeClassDescriptionclassA type variable substitution strategy based on inference variables (JLS8 18.1.1)classBinding denoting a generic method after type parameter substitutions got performed.classA parameterized type encapsulates a type with type arguments,classclassDenote a raw type, i.e.static classDon't substitute any type variables.Methods in org.aspectj.org.eclipse.jdt.internal.compiler.lookup with parameters of type SubstitutionModifier and TypeMethodDescriptionTypeVariableBinding.boundCheck(Substitution substitution, TypeBinding argumentType, Scope scope, ASTNode location) Returns true if the argument type satisfies all bounds of the type parameterbooleanTypeVariableBinding.isInterchangeableWith(TypeVariableBinding otherVariable, Substitution substitute) Returns true if the 2 variables are playing exact same role: they have the same bounds, providing one is substituted with the other:<T1 extends List<T1>>is interchangeable with<T2 extends List<T2>>.InferenceSubstitution.substitute(Substitution substitution, TypeBinding originalType) Override methodScope.Substitutor.substitute(Substitution, TypeBinding), to add substitution of types other than type variables.static ReferenceBinding[]Scope.substitute(Substitution substitution, ReferenceBinding[] originalTypes) Returns an array of types, where original types got substituted given a substitution.static TypeBindingScope.substitute(Substitution substitution, TypeBinding originalType) Returns a type, where original type was substituted using the receiver parameterized type.static TypeBinding[]Scope.substitute(Substitution substitution, TypeBinding[] originalTypes) Returns an array of types, where original types got substituted given a substitution.Scope.Substitutor.substitute(Substitution substitution, ReferenceBinding[] originalTypes) Returns an array of types, where original types got substituted given a substitution.Scope.Substitutor.substitute(Substitution substitution, TypeBinding originalType) Returns a type, where original type was substituted using the receiver parameterized type.Scope.Substitutor.substitute(Substitution substitution, TypeBinding[] originalTypes) Returns an array of types, where original types got substituted given a substitution.