Annotation Interface AOTModule


@Retention(RUNTIME) @Target(TYPE) public @interface AOTModule
Annotation which must be present on AOT optimizers.
  • Required Element Summary

    Required Elements
    Modifier and Type
    Required Element
    Description
    A unique identifier for this source generator.
  • Optional Element Summary

    Optional Elements
    Modifier and Type
    Optional Element
    Description
    Returns the identifiers of source generators which must be executed before this generator is called.
    Returns a description for this source generator.
    Returns the runtimes this module is valid for.
    Returns the set of configuration keys which affect the configuration of this source generator.
    Class<? extends AOTCodeGenerator>[]
    Returns a list of generators which are directly managed (or instantiated_ by this source generator.
  • Element Details

    • id

      String id
      A unique identifier for this source generator.
      Returns:
      the id
    • description

      String description
      Returns a description for this source generator. Description is optional because some code generators are purely internal and not exposed to users.
      Returns:
      a description or an empty options
      Default:
      ""
    • dependencies

      String[] dependencies
      Returns the identifiers of source generators which must be executed before this generator is called.
      Returns:
      the list of ids
      Default:
      {}
    • subgenerators

      Class<? extends AOTCodeGenerator>[] subgenerators
      Returns a list of generators which are directly managed (or instantiated_ by this source generator. Such optimizers are typically not registered as services because they make no sense in isolation. This method should be used for introspection only.
      Returns:
      the list of sub features
      Default:
      {}
    • options

      Option[] options
      Returns the set of configuration keys which affect the configuration of this source generator.
      Returns:
      a set of configuration keys
      Default:
      {}
    • enabledOn

      Runtime[] enabledOn
      Returns the runtimes this module is valid for.
      Returns:
      the list of runtimes this module applies to.
      Default:
      {JIT, NATIVE}