@Retention(RUNTIME)
@Target(TYPE)
public @interface UseAPIType
Annotation to specify the type to use for this class in generated APIs.
Used for classes that merely customize behaviour, such as providing a non-standard StringCodec.
The type to use is typically a superclass of this class.
(The argument allows more generality than just using the immediate superclass.)
The generated decode method builds values of this class,
while the generated encode method takes values of the type named in the annotation.