Class ConstructDisplayName
EK9_BACKEND_IR_CONTRACTS.md). Use this, never a demangler.
A construct's IDENTITY is its fully qualified name, and for a monomorphised generic that name is a DIGEST
(module::_Holder_68EF...): it can never be turned back into Holder of String at run time. So the
display name is fixed HERE, at compile time, from the SYMBOL - the generic it parameterises and its type arguments,
rendered exactly as the compiler's own friendly name renders them (ToCommaSeparated) - and handed to the
back ends as IR data (IRConstruct.getDisplayName()), which store it on the type.
Present ONLY where it differs from the identity: a parameterised type or function. Every other construct has
none (its identity already reads correctly), so ordinary classes' IR and bytecode are unchanged. A dynamic class or
function (_Class_<hash>) has none either: it has no source name to show.
🔑 Display only - never an identity, never a join key: two parameterisations in different modules can share a display name.
-
Method Summary
-
Method Details
-
of
-