Lookup Tree
LookupTree is used to look up method definitions by argument types, although it's more general than that.
Author
Mark van Gulik
Parameters
Element
The kind of elements in the lookup tree, such as method definitions.
Result
What we expect to produce from a lookup activity, such as the tuple of most-specific matching method definitions for some arguments.
Inheritors
Properties
Link copied to clipboard
Answer the lookup solution (List of definitions at this leaf node, or null if this is not a leaf node.
Functions
Link copied to clipboard
Strengthen the type to a lookup tree suitable for method lookups.
Link copied to clipboard
abstract fun <AdaptorMemento> expandIfNecessary(signatureExtrasExtractor: (Element) -> Pair<A_Type?, List<A_Type>>, adaptor: LookupTreeAdaptor<Element, Result, AdaptorMemento>, numNaturalArgs: Int, memento: AdaptorMemento): DecisionStep<Element, Result>
If it has not already been computed, compute and cache the DecisionStep to use for making progress at this InternalLookupTree. Fail if this is not an InternalLookupTree.