Package org.ek9lang.compiler.phase3
Class ResolveByTraitVariables
java.lang.Object
org.ek9lang.compiler.common.RuleSupport
org.ek9lang.compiler.common.TypedSymbolAccess
org.ek9lang.compiler.phase3.ResolveByTraitVariables
- All Implemented Interfaces:
BiConsumer<EK9Parser.TraitsListContext,
AggregateWithTraitsSymbol>
final class ResolveByTraitVariables
extends TypedSymbolAccess
implements BiConsumer<EK9Parser.TraitsListContext,AggregateWithTraitsSymbol>
Used where traits are implemented 'by' a variable.
This resolves those identifiers on the aggregate and checks the type compatibility.
-
Field Summary
Fields inherited from class org.ek9lang.compiler.common.RuleSupport
errorListener, symbolsAndScopes
-
Constructor Summary
ConstructorDescriptionResolveByTraitVariables
(SymbolsAndScopes symbolsAndScopes, ErrorListener errorListener) -
Method Summary
Modifier and TypeMethodDescriptionvoid
accept
(EK9Parser.TraitsListContext traitsListContext, AggregateWithTraitsSymbol aggregate) Methods inherited from class org.ek9lang.compiler.common.TypedSymbolAccess
getRecordedAndTypedSymbol, isProcessingScopePure, recordATypedSymbol
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface java.util.function.BiConsumer
andThen
-
Constructor Details
-
ResolveByTraitVariables
ResolveByTraitVariables(SymbolsAndScopes symbolsAndScopes, ErrorListener errorListener)
-
-
Method Details
-
accept
public void accept(EK9Parser.TraitsListContext traitsListContext, AggregateWithTraitsSymbol aggregate) - Specified by:
accept
in interfaceBiConsumer<EK9Parser.TraitsListContext,
AggregateWithTraitsSymbol>
-