Class ParameterPromotionProcessor
java.lang.Object
org.ek9lang.compiler.phase7.calls.ParameterPromotionProcessor
- All Implemented Interfaces:
BiFunction<CallContext,
MethodResolutionResult, PromotionResult>
public final class ParameterPromotionProcessor
extends Object
implements BiFunction<CallContext,MethodResolutionResult,PromotionResult>
Processes method call parameters to determine if promotion is required.
Implements parameter-by-parameter checking following EK9's cost-based method resolution.
Only allows single promotion per parameter as per EK9 design rules.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionapply
(CallContext context, MethodResolutionResult methodResolution) apply
(CallContext context, IScopedSymbol scopedSymbol) Apply parameter promotion for any scoped symbol (method or function).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.BiFunction
andThen
-
Constructor Details
-
ParameterPromotionProcessor
-
-
Method Details
-
apply
- Specified by:
apply
in interfaceBiFunction<CallContext,
MethodResolutionResult, PromotionResult>
-
apply
Apply parameter promotion for any scoped symbol (method or function). This allows reuse of the same promotion logic for both methods and functions.
-