Annotation Type Properties


  • @Documented
    @Retention(RUNTIME)
    @Target(TYPE)
    public @interface Properties
    Makes it possible to define more than one set of properties for each platform. The effective set of properties are taken from all Platform values in this annotation, but priority is given to values found later in the list, making it possible to define a default set of properties as the first value of the array, and specializing a smaller set of properties for each platform, subsequently.

    A class with this annotation gets recognized as top-level enclosing class by Loader.getEnclosingClass(Class), with the same implications as with the Platform annotation.

    Additionally, it is possible to inherit properties from another class also annotated with this annotation, and specialize further for the current class.

    See Also:
    Builder, Generator, Loader, Parser
    • Optional Element Summary

      Optional Elements 
      Modifier and Type Optional Element Description
      java.lang.String global
      The name of a class where to output any global declarations that are not in classes.
      java.lang.String helper
      An optional helper class the Parser should use as base for the global class.
      java.lang.Class[] inherit
      A list of classes from which to inherit properties.
      java.lang.String[] names
      A list of platform names to be used as default for value().
      java.lang.String target
      The target Java source code file of the Parser, unless global() is set, in which case this specifies the target Java package.
      Platform[] value
      A list of properties for different platforms.
    • Element Detail

      • inherit

        java.lang.Class[] inherit
        A list of classes from which to inherit properties.
        Default:
        {}
      • names

        java.lang.String[] names
        A list of platform names to be used as default for value().
        Default:
        {}
      • value

        Platform[] value
        A list of properties for different platforms.
        Default:
        {}
      • target

        java.lang.String target
        The target Java source code file of the Parser, unless global() is set, in which case this specifies the target Java package.
        Default:
        ""
      • global

        java.lang.String global
        The name of a class where to output any global declarations that are not in classes. If left empty, considers the target() as a class where to put everything.
        Default:
        ""
      • helper

        java.lang.String helper
        An optional helper class the Parser should use as base for the global class. Defaults to the class where this annotation was found.
        Default:
        ""