docs: public static boolean isTypeOrArrayOfType(ClassNode targetType, ClassNode type, boolean recurse) {
          if (targetType == null) return false;
          return type.equals(targetType) ||
                  (targetType.isArray() && recurse
                  ? isTypeOrArrayOfType(targetType.getComponentType(), type, recurse)
                  : type.equals(targetType.getComponentType()));
      }