Context

interface Context(source)

Context is very similar to scope. In the context we look for solving symbols.

Author

Federico Tomassetti

Functions

Link copied to clipboard
The fields that are declared and in this immediate context made visible to a given child.
Link copied to clipboard
abstract fun getParent(): Optional<Context>
Link copied to clipboard
abstract fun <N : Node?> getWrappedNode(): N
Returns the node wrapped in the context
Link copied to clipboard
Aim to resolve the given name by looking for a variable matching it.
Link copied to clipboard
The local variables that are declared in this immediate context and made visible to a given child.
Link copied to clipboard
The parameters that are declared in this immediate context and made visible to a given child.
Link copied to clipboard
We find the method declaration which is the best match for the given name and list of typeParametersValues.
Link copied to clipboard
Default to no generics available in this context, delegating solving to the parent context.
Link copied to clipboard
open fun solveMethod(name: String, argumentsTypes: List<ResolvedType>, staticOnly: Boolean, invocationContext: ResolvedReferenceTypeDeclaration): SymbolReference<ResolvedMethodDeclaration>
We find the method declaration which is the best match for the given name and list of typeParametersValues.
Link copied to clipboard
abstract fun solveMethodAsUsage(name: String, argumentsTypes: List<ResolvedType>, invocationContext: ResolvedReferenceTypeDeclaration): Optional<MethodUsage>
Similar to solveMethod but we return a MethodUsage.
Link copied to clipboard
Link copied to clipboard
Used where a symbol is being used (e.g.
Link copied to clipboard
Used where a symbol is being used (e.g.
Link copied to clipboard
Default to being unable to solve any reference in this context, delegating solving to the parent context.
Method used to solve a name with an expected list of type arguments.
Link copied to clipboard
Solve a name in the parent context.
Solve a name with type arguments in the parent context.
Link copied to clipboard
With respect to solving, the AST "parent" of a block statement is not necessarily the same as the scope parent.
Link copied to clipboard
The pattern expressions that are declared in this immediate context and made visible to a given child.