Package org.ek9lang.compiler.phase3
Class IdentifierReferenceOrError
java.lang.Object
org.ek9lang.compiler.common.RuleSupport
org.ek9lang.compiler.common.TypedSymbolAccess
org.ek9lang.compiler.phase3.IdentifierReferenceOrError
- All Implemented Interfaces:
Function<EK9Parser.IdentifierReferenceContext,
Optional<ISymbol>>
final class IdentifierReferenceOrError
extends TypedSymbolAccess
implements Function<EK9Parser.IdentifierReferenceContext,Optional<ISymbol>>
Ensures that 'identifierReference' is now resolved and hangs together and is 'typed' or emit "not resolved" error.
Note that while the identifierReference may get resolved also see ResolveIdentifierReferenceCallOrError.
This is because the context of the identifierReference may mean that it is important to 're-resolve' it.
Indeed, for overloaded methods it probably will end up resolving to a different method.
CallOrError
ResolveIdentifierReferenceCallOrError
-
Field Summary
Fields inherited from class org.ek9lang.compiler.common.RuleSupport
errorListener, symbolsAndScopes
-
Constructor Summary
ConstructorDescriptionIdentifierReferenceOrError
(SymbolsAndScopes symbolsAndScopes, ErrorListener errorListener) Checks identifier reference now resolves. -
Method Summary
Modifier and TypeMethodDescriptionMethods inherited from class org.ek9lang.compiler.common.TypedSymbolAccess
getRecordedAndTypedSymbol, isProcessingScopePure, recordATypedSymbol
-
Constructor Details
-
IdentifierReferenceOrError
IdentifierReferenceOrError(SymbolsAndScopes symbolsAndScopes, ErrorListener errorListener) Checks identifier reference now resolves.
-
-
Method Details
-
apply
- Specified by:
apply
in interfaceFunction<EK9Parser.IdentifierReferenceContext,
Optional<ISymbol>>
-