Class CombinedTypeSolver
- java.lang.Object
-
- com.github.javaparser.symbolsolver.resolution.typesolvers.CombinedTypeSolver
-
- All Implemented Interfaces:
com.github.javaparser.resolution.TypeSolver
public class CombinedTypeSolver extends java.lang.Object implements com.github.javaparser.resolution.TypeSolverA container for type solvers. All solving is done by the contained type solvers. This helps you when an API asks for a single type solver, but you need several.- Author:
- Federico Tomassetti
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classCombinedTypeSolver.ExceptionHandlersProvides some convenience exception handler implementations
-
Constructor Summary
Constructors Constructor Description CombinedTypeSolver(com.github.javaparser.resolution.TypeSolver... elements)CombinedTypeSolver(java.lang.Iterable<com.github.javaparser.resolution.TypeSolver> elements)CombinedTypeSolver(java.util.function.Predicate<java.lang.Exception> exceptionHandler, com.github.javaparser.resolution.TypeSolver... elements)CombinedTypeSolver(java.util.function.Predicate<java.lang.Exception> exceptionHandler, java.lang.Iterable<com.github.javaparser.resolution.TypeSolver> elements)CombinedTypeSolver(java.util.function.Predicate<java.lang.Exception> exceptionHandler, java.lang.Iterable<com.github.javaparser.resolution.TypeSolver> elements, com.github.javaparser.resolution.cache.Cache<java.lang.String,com.github.javaparser.resolution.model.SymbolReference<com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration>> typeCache)Create a new instance ofCombinedTypeSolverwith a custom symbol cache.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidadd(com.github.javaparser.resolution.TypeSolver typeSolver)Append a type solver to the current solver.voidadd(com.github.javaparser.resolution.TypeSolver typeSolver, boolean resetCache)Append a type solver to the current solver.static java.lang.StringcreateModuleTypeName(java.lang.String moduleQualifiedName, java.lang.String simpleTypeName)Create the key that should be used for module cache lookups.com.github.javaparser.resolution.TypeSolvergetParent()voidsetExceptionHandler(java.util.function.Predicate<java.lang.Exception> exceptionHandler)voidsetParent(com.github.javaparser.resolution.TypeSolver parent)com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclarationsolveType(java.lang.String name)com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclarationsolveTypeInModule(java.lang.String moduleQualifiedName, java.lang.String simpleTypeName)com.github.javaparser.resolution.model.SymbolReference<com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration>tryToSolveType(java.lang.String name)com.github.javaparser.resolution.model.SymbolReference<com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration>tryToSolveTypeInModule(java.lang.String moduleQualifiedName, java.lang.String simpleTypeName)
-
-
-
Constructor Detail
-
CombinedTypeSolver
public CombinedTypeSolver(com.github.javaparser.resolution.TypeSolver... elements)
-
CombinedTypeSolver
public CombinedTypeSolver(java.util.function.Predicate<java.lang.Exception> exceptionHandler, com.github.javaparser.resolution.TypeSolver... elements)
-
CombinedTypeSolver
public CombinedTypeSolver(java.lang.Iterable<com.github.javaparser.resolution.TypeSolver> elements)
-
CombinedTypeSolver
public CombinedTypeSolver(java.util.function.Predicate<java.lang.Exception> exceptionHandler, java.lang.Iterable<com.github.javaparser.resolution.TypeSolver> elements)- See Also:
exceptionHandler
-
CombinedTypeSolver
public CombinedTypeSolver(java.util.function.Predicate<java.lang.Exception> exceptionHandler, java.lang.Iterable<com.github.javaparser.resolution.TypeSolver> elements, com.github.javaparser.resolution.cache.Cache<java.lang.String,com.github.javaparser.resolution.model.SymbolReference<com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration>> typeCache)Create a new instance ofCombinedTypeSolverwith a custom symbol cache.- Parameters:
exceptionHandler- How exception should be handled.elements- The list of elements to include by default.typeCache- The cache to be used to store symbols.- See Also:
exceptionHandler
-
-
Method Detail
-
setExceptionHandler
public void setExceptionHandler(java.util.function.Predicate<java.lang.Exception> exceptionHandler)
- See Also:
exceptionHandler
-
getParent
public com.github.javaparser.resolution.TypeSolver getParent()
- Specified by:
getParentin interfacecom.github.javaparser.resolution.TypeSolver
-
setParent
public void setParent(com.github.javaparser.resolution.TypeSolver parent)
- Specified by:
setParentin interfacecom.github.javaparser.resolution.TypeSolver
-
add
public void add(com.github.javaparser.resolution.TypeSolver typeSolver, boolean resetCache)Append a type solver to the current solver.- Parameters:
typeSolver- The type solver to be appended.resetCache- If should reset the cache when the solver is inserted.
-
add
public void add(com.github.javaparser.resolution.TypeSolver typeSolver)
Append a type solver to the current solver.
By default the cached values will be removed.- Parameters:
typeSolver- The type solver to be appended.
-
tryToSolveType
public com.github.javaparser.resolution.model.SymbolReference<com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration> tryToSolveType(java.lang.String name)
- Specified by:
tryToSolveTypein interfacecom.github.javaparser.resolution.TypeSolver
-
createModuleTypeName
public static java.lang.String createModuleTypeName(java.lang.String moduleQualifiedName, java.lang.String simpleTypeName)Create the key that should be used for module cache lookups.
-
tryToSolveTypeInModule
public com.github.javaparser.resolution.model.SymbolReference<com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration> tryToSolveTypeInModule(java.lang.String moduleQualifiedName, java.lang.String simpleTypeName)- Specified by:
tryToSolveTypeInModulein interfacecom.github.javaparser.resolution.TypeSolver
-
solveType
public com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration solveType(java.lang.String name) throws com.github.javaparser.resolution.UnsolvedSymbolException- Specified by:
solveTypein interfacecom.github.javaparser.resolution.TypeSolver- Throws:
com.github.javaparser.resolution.UnsolvedSymbolException
-
solveTypeInModule
public com.github.javaparser.resolution.declarations.ResolvedReferenceTypeDeclaration solveTypeInModule(java.lang.String moduleQualifiedName, java.lang.String simpleTypeName) throws com.github.javaparser.resolution.UnsolvedSymbolException- Specified by:
solveTypeInModulein interfacecom.github.javaparser.resolution.TypeSolver- Throws:
com.github.javaparser.resolution.UnsolvedSymbolException
-
-