CoercionPlanner

Decides, at build time, how each @QFunction parameter is filled at call time.

This mirrors what the deleted runtime DynamicValueConverter used to do reflectively on every call, with two deliberate differences: enum entries are baked into the emitted source instead of being looked up through values(), and an unmappable type fails the build instead of the render.

Functions

Link copied to clipboard
fun plan(type: TypeShape, isInjected: Boolean, candidates: List<FactoryCandidate>): CoercionPlan