code: public void visitAnnotations(AnnotatedNode node) {
          super.visitAnnotations(node);
  
          List<AnnotationNode> collected = new ArrayList<AnnotationNode>();
          for (Iterator<AnnotationNode> it = node.getAnnotations().iterator(); it.hasNext();) {
              AnnotationNode annotation = it.next();
              if (addCollectedAnnotations(collected, annotation, node)) it.remove();
          }
          node.getAnnotations().addAll(collected);
          
          for (AnnotationNode annotation : node.getAnnotations()) {
              Annotation transformClassAnnotation = getTransformClassAnnotation(annotation.getClassNode());
              if (transformClassAnnotation == null) {
                  // skip if there is no such annotation
                  continue;
              }
              addTransformsToClassNode(annotation, transformClassAnnotation);
          }
      }
docs: If the annotation is annotated with {@link GroovyASTTransformation}
  the annotation is added to <code>stageVisitors</code> at the appropriate processor visitor.
  
  @param node the node to process