Skip to main content

Module concrete_type

Module concrete_type 

Source
Expand description

Concrete monomorphized type for v2 runtime.

ConcreteType replaces SlotKind with richer type information that flows from type inference through the bytecode compiler, VM, and JIT. Every local, parameter, field, return value, and collection element has a ConcreteType at compile time — no unresolved type variables survive past compilation.

This is the foundation for monomorphization: generic functions like map<T, U> are specialized per ConcreteType instantiation.

Structs§

ClosureTypeId
Opaque ID into a registry of closure capture layouts.
EnumLayoutId
Opaque ID into a registry of enum layouts (resolved at compile time).
FunctionTypeId
Opaque ID into a registry of function signatures.
NamedTypeId
v0.3 WS-6 — the source-level type name carried alongside a ConcreteType::Struct / ConcreteType::Enum.
StructLayoutId
Opaque ID into a registry of struct layouts (resolved at compile time).

Enums§

ConcreteType
Fully resolved, monomorphized type. No type variables, no generics.