Class MethodCallExprContext
java.lang.Object
com.github.javaparser.symbolsolver.javaparsermodel.contexts.AbstractJavaParserContext<MethodCallExpr>
com.github.javaparser.symbolsolver.javaparsermodel.contexts.ExpressionContext<MethodCallExpr>
com.github.javaparser.symbolsolver.javaparsermodel.contexts.MethodCallExprContext
- All Implemented Interfaces:
Context
-
Field Summary
Fields inherited from class AbstractJavaParserContext
typeSolver, wrappedNode -
Constructor Summary
ConstructorsConstructorDescriptionMethodCallExprContext(MethodCallExpr wrappedNode, TypeSolver typeSolver) Constructors -
Method Summary
Modifier and TypeMethodDescriptionprivate ResolvedTypeapplyInferredTypes(ResolvedType type, Map<ResolvedTypeParameterDeclaration, ResolvedType> inferredTypes) private voidconvertTypesParameters(Map<ResolvedTypeParameterDeclaration, ResolvedType> matchedTypeParameters, Map<String, ResolvedType> reducedResolvedTypesByTypeVariable) private Set<ResolvedType> findResolvedTypesByTypeVariable(String typeVariableName, Map<ResolvedTypeParameterDeclaration, ResolvedType> typeParameters) private Map<String, Set<ResolvedType>> groupResolvedTypeByTypeVariable(Map<ResolvedTypeParameterDeclaration, ResolvedType> typeParameters) private voidmatchTypeParameters(ResolvedType expectedType, ResolvedType actualType, Map<ResolvedTypeParameterDeclaration, ResolvedType> matchedTypeParameters) private Map<String, ResolvedType> reduceResolvedTypesByTypeVariable(Map<String, Set<ResolvedType>> typeParameters) private ResolvedTypereduceResolvedTypesWithLub(Set<ResolvedType> resolvedTypes) private MethodUsagereplaceTypeParameter(MethodUsage methodUsage, Map<ResolvedTypeParameterDeclaration, ResolvedType> matchedTypeParameters) private MethodUsageresolveMethodTypeParameters(MethodUsage methodUsage, List<ResolvedType> actualParamTypes) private MethodUsageresolveMethodTypeParametersFromExplicitList(TypeSolver typeSolver, MethodUsage methodUsage) solveGenericType(String name) Public methodssolveMethod(String name, List<ResolvedType> argumentsTypes, boolean staticOnly) We find the method declaration which is the best match for the given name and list of typeParametersValues.private Optional<MethodUsage> solveMethodAsUsage(ResolvedReferenceType refType, String name, List<ResolvedType> argumentsTypes, Context invokationContext) Private methodsprivate Optional<MethodUsage> solveMethodAsUsage(ResolvedType type, String name, List<ResolvedType> argumentsTypes, Context invokationContext) private Optional<MethodUsage> solveMethodAsUsage(ResolvedTypeVariable tp, String name, List<ResolvedType> argumentsTypes, Context invokationContext) solveMethodAsUsage(String name, List<ResolvedType> argumentsTypes) Similar to solveMethod but we return a MethodUsage.toString()private ResolvedTypeusingParameterTypesFromScope(ResolvedType scope, ResolvedType type, Map<ResolvedTypeParameterDeclaration, ResolvedType> inferredTypes) Methods inherited from class ExpressionContext
solveSymbol, solveSymbolAsValueMethods inherited from class AbstractJavaParserContext
equals, findExposedPatternInParentContext, findTypeDeclarations, getParent, getScope, getWrappedNode, hashCode, negatedTypePatternExprsExposedFromChildren, solveSymbolInParentContext, solveWith, solveWithAsValue, typePatternExprsDiscoveredInPattern, typePatternExprsExposedFromChildrenMethods inherited from interface Context
fieldDeclarationInScope, fieldsExposedToChild, localVariableDeclarationInScope, localVariablesExposedToChild, parameterDeclarationInScope, parametersExposedToChild, solveConstructor, solveGenericTypeInParentContext, solveMethodInParentContext, solveSymbolAsValueInParentContext, solveType, solveType, solveTypeInParentContext, solveTypeInParentContext, typePatternExprInScope, typePatternExprsExposedToChild
-
Constructor Details
-
MethodCallExprContext
Constructors
-
-
Method Details
-
solveGenericType
Public methods- Parameters:
name- For example, solvingTwithinclass Foo<T> {}or- Returns:
- The resolved generic type, if found.
-
toString
-
solveMethodAsUsage
Description copied from class:AbstractJavaParserContextSimilar to solveMethod but we return a MethodUsage. A MethodUsage corresponds to a MethodDeclaration plus the resolved type variables.- Specified by:
solveMethodAsUsagein interfaceContext- Overrides:
solveMethodAsUsagein classAbstractJavaParserContext<MethodCallExpr>
-
resolveMethodTypeParametersFromExplicitList
private MethodUsage resolveMethodTypeParametersFromExplicitList(TypeSolver typeSolver, MethodUsage methodUsage) -
solveMethod
public SymbolReference<ResolvedMethodDeclaration> solveMethod(String name, List<ResolvedType> argumentsTypes, boolean staticOnly) Description copied from interface:ContextWe find the method declaration which is the best match for the given name and list of typeParametersValues. -
solveMethodAsUsage
private Optional<MethodUsage> solveMethodAsUsage(ResolvedReferenceType refType, String name, List<ResolvedType> argumentsTypes, Context invokationContext) Private methods -
resolveMethodTypeParameters
private MethodUsage resolveMethodTypeParameters(MethodUsage methodUsage, List<ResolvedType> actualParamTypes) -
replaceTypeParameter
private MethodUsage replaceTypeParameter(MethodUsage methodUsage, Map<ResolvedTypeParameterDeclaration, ResolvedType> matchedTypeParameters) -
convertTypesParameters
private void convertTypesParameters(Map<ResolvedTypeParameterDeclaration, ResolvedType> matchedTypeParameters, Map<String, ResolvedType> reducedResolvedTypesByTypeVariable) -
groupResolvedTypeByTypeVariable
private Map<String, Set<ResolvedType>> groupResolvedTypeByTypeVariable(Map<ResolvedTypeParameterDeclaration, ResolvedType> typeParameters) -
findResolvedTypesByTypeVariable
private Set<ResolvedType> findResolvedTypesByTypeVariable(String typeVariableName, Map<ResolvedTypeParameterDeclaration, ResolvedType> typeParameters) -
reduceResolvedTypesByTypeVariable
private Map<String, ResolvedType> reduceResolvedTypesByTypeVariable(Map<String, Set<ResolvedType>> typeParameters) -
reduceResolvedTypesWithLub
-
matchTypeParameters
private void matchTypeParameters(ResolvedType expectedType, ResolvedType actualType, Map<ResolvedTypeParameterDeclaration, ResolvedType> matchedTypeParameters) -
solveMethodAsUsage
private Optional<MethodUsage> solveMethodAsUsage(ResolvedTypeVariable tp, String name, List<ResolvedType> argumentsTypes, Context invokationContext) -
solveMethodAsUsage
private Optional<MethodUsage> solveMethodAsUsage(ResolvedType type, String name, List<ResolvedType> argumentsTypes, Context invokationContext) -
usingParameterTypesFromScope
private ResolvedType usingParameterTypesFromScope(ResolvedType scope, ResolvedType type, Map<ResolvedTypeParameterDeclaration, ResolvedType> inferredTypes) -
applyInferredTypes
private ResolvedType applyInferredTypes(ResolvedType type, Map<ResolvedTypeParameterDeclaration, ResolvedType> inferredTypes)
-