@Nullable
  @Deprecated
  @SuppressWarnings("deprecation")
  public static <T extends Annotation> T getAnnotation(Symbol sym, Class<T> annotationClass) {
    return sym == null ? null : sym.getAnnotation(annotationClass);
  }
@ Nullable @ Deprecated @ SuppressWarnings ( "deprecation" ) public static < T extends Annotation > T getAnnotation ( Symbol sym , Class < T > annotationClass ) { return sym == null ? null : sym . getAnnotation ( annotationClass ) ; }
Retrieves an annotation, considering annotation inheritance.

@deprecated If {@code annotationClass} contains a member that is a {@code Class} or an array of
them, attempting to access that member from the Error Prone checker code will result in a
runtime exception. Instead, operate on {@code sym.getAnnotationMirrors()} to
meta-syntactically inspect the annotation.