Used to inject a symbol value, via a symbol name. This is used much like
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.