@Target(value={PARAMETER,FIELD}) @Retention(value=RUNTIME) @Documented @UseWith(value={COMPONENT,MIXIN,PAGE,SERVICE}) public @interface Symbol
Value
annotation, except that symbols are not expanded ... the entire value is
a symbol name. This allows the annotation to reference a public constant variable.
The injected value may be coerced from string to an alternate type (defined by the field or parameter to which
the @Symbol annotation is attached). For better control, use the IntermediateType
annotation as well, which
allows the string to be coerced to an alternate type before being coerced a second time to the field or parameter type.5.6.3 - Copyright © 2003-2021 The Apache Software Foundation.