Class CoverageSourceName

java.lang.Object
org.ek9lang.compiler.phase7.generator.CoverageSourceName
All Implemented Interfaces:
Function<ISymbol,String>

final class CoverageSourceName extends Object implements Function<ISymbol,String>
The source-level names a coverage name is made from (see CoverageDisplayName): a callable's own name, and an aggregate's name. A constructor of a parameterised type, and a parameterised type itself, are named for the GENERIC they parameterise (GenericTemplateOf, read from the SYMBOL, never un-mangled from the string) rather than for the mangled monomorphisation - type-argument-free by design (CoverageSourceQualifiedName says why).
  • Constructor Details

    • CoverageSourceName

      CoverageSourceName()
  • Method Details

    • apply

      public String apply(ISymbol operationSymbol)
      The callable's own source-level name: its declared name, except that a constructor of a parameterised type is named for the generic it parameterises.
      Specified by:
      apply in interface Function<ISymbol,String>
    • ofAggregate

      String ofAggregate(IAggregateSymbol aggregate)
      The aggregate's source-level name - the generic it parameterises when it is a monomorphisation, otherwise its own name.