CombinedTypeSolver

A 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

Constructors

Link copied to clipboard
constructor(elements: Array<TypeSolver>)
constructor(exceptionHandler: Predicate<Exception>, elements: Array<TypeSolver>)
constructor(elements: Iterable<TypeSolver>)
constructor(exceptionHandler: Predicate<Exception>, elements: Iterable<TypeSolver>)
constructor(exceptionHandler: Predicate<Exception>, elements: Iterable<TypeSolver>, typeCache: Cache<String, SymbolReference<ResolvedReferenceTypeDeclaration>>)
Create a new instance of CombinedTypeSolver with a custom symbol cache.

Types

Link copied to clipboard
Provides some convenience exception handler implementations

Properties

Link copied to clipboard
Link copied to clipboard
val JAVA_LANG_RECORD: String = "java.lang.Record"
Link copied to clipboard
open var parent: TypeSolver

Functions

Link copied to clipboard
open fun add(typeSolver: TypeSolver)
open fun add(typeSolver: TypeSolver, resetCache: Boolean)
Append a type solver to the current solver.
Link copied to clipboard
open fun createModuleTypeName(moduleQualifiedName: String, simpleTypeName: String): String
Create the key that should be used for module cache lookups.
Link copied to clipboard
abstract fun getParent(): TypeSolver
Link copied to clipboard
open fun getRoot(): TypeSolver
Link copied to clipboard
open fun hasType(name: String): Boolean
Link copied to clipboard
open fun setExceptionHandler(exceptionHandler: Predicate<Exception>)
Link copied to clipboard
abstract fun setParent(parent: TypeSolver)
Link copied to clipboard
Link copied to clipboard
open fun solveTypeInModule(moduleQualifiedName: String, simpleTypeName: String): ResolvedReferenceTypeDeclaration
Link copied to clipboard
open fun tryToSolveTypeInModule(moduleQualifiedName: String, simpleTypeName: String): SymbolReference<ResolvedReferenceTypeDeclaration>