Annotation Type Concrete


@Retention(CLASS) @Target(TYPE) public @interface Concrete

Indicates that a class has a known concrete implementation that ParparVM can target directly in native (C/Objective-C) pipelines.

When present, the translator may bypass virtual lookup when invoking methods on this type by preferring the concrete class provided in name(), and falling back to the annotated type implementation if the concrete class doesn't implement the method.

  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    The fully-qualified class name of the concrete implementation to prefer during ParparVM native translation (the iOS pipeline, historically the only native target).
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    The fully-qualified class name of the concrete implementation to prefer when translating for the native Linux (GTK/Cairo) port.
    The fully-qualified class name of the concrete implementation to prefer when translating for the native macOS (AppKit) port.
    The fully-qualified class name of the concrete implementation to prefer when translating for the native Windows port.
  • Element Details

    • name

      String name
      The fully-qualified class name of the concrete implementation to prefer during ParparVM native translation (the iOS pipeline, historically the only native target).
    • win

      String win
      The fully-qualified class name of the concrete implementation to prefer when translating for the native Windows port. When empty (the default), the native Windows build falls back to the annotated (portable) base class rather than the iOS name() target -- so a type that has no Windows specialization (e.g. a SIMD helper) translates to its software base instead of pulling in the absent iOS class.
      Default:
      ""
    • linux

      String linux
      The fully-qualified class name of the concrete implementation to prefer when translating for the native Linux (GTK/Cairo) port. When empty (the default), the native Linux build falls back to the annotated (portable) base class rather than the iOS name() target -- mirroring win() so a type with no Linux specialization translates to its software base instead of pulling in the absent iOS class.
      Default:
      ""
    • mac

      String mac

      The fully-qualified class name of the concrete implementation to prefer when translating for the native macOS (AppKit) port. When empty (the default), the native macOS build falls back to the annotated (portable) base class -- mirroring win() and linux().

      Unlike those two, the macOS port shares the Apple native binding classes with the iOS port, so a type whose iOS specialization also compiles against the macOS SDK should name that same iOS class here rather than leave this empty. Leaving it empty silently degrades to the portable base, which is a green build with the specialization missing.

      Default:
      ""