Type variable with a fixed representation determined by the lowering context. The representation is chosen based on the concrete type when known, or defaults to Data when the type is abstract.
Type variable with a fixed representation determined by the lowering context. The representation is chosen based on the concrete type when known, or defaults to Data when the type is abstract.
Unknown representation. The inliner substitutes the caller's concrete repr at the inlining site. Used by public-facing intrinsic dispatcher signatures (IntrinsicsUplcConstrList, IntrinsicsNativeList, etc.) and by builtin UPLC functions (e.g., headList, chooseList).
Unknown representation. The inliner substitutes the caller's concrete repr at the inlining site. Used by public-facing intrinsic dispatcher signatures (IntrinsicsUplcConstrList, IntrinsicsNativeList, etc.) and by builtin UPLC functions (e.g., headList, chooseList).
Value travels in the concrete type's default representation; no wrapping is ever applied. The repr is looked up via lctx.typeUnifyEnv.filledTypes at every representation-picking site. Used by internal implementation modules (UplcConstrListOperations, NativeListOperations, etc.) whose bodies are polymorphic but never Data-wrap their type-param values.
Value travels in the concrete type's default representation; no wrapping is ever applied. The repr is looked up via lctx.typeUnifyEnv.filledTypes at every representation-picking site. Used by internal implementation modules (UplcConstrListOperations, NativeListOperations, etc.) whose bodies are polymorphic but never Data-wrap their type-param values.