1 package com.puppycrawl.tools.checkstyle.grammar;
2
3 import java.lang.annotation.ElementType;
4 import java.lang.annotation.Target;
5 import java.lang.reflect.InvocationTargetException;
6 import java.util.List;
7
8 import javax.annotation.Nullable;
9
10 import org.junit.Assert;
11
12 import com.google.common.reflect.Invokable;
13
14 public class InputAstRegressionAnnotatedMethodVariableArityParam {
15 void varargLong(@I String @L [] @K [] @J ... vararg2) { }
16 @SuppressWarnings("unused")
17 void withUpperBound(List<? extends int[][]> list) {}
18 private static <T> @Nullable T invoke(Invokable<?, ? extends T> factory, List<?> args)
19 throws InvocationTargetException, IllegalAccessException {
20 return null;
21 }
22 }
23 @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER})
24 @interface I {}
25
26 @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER})
27 @interface J {}
28
29 @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER})
30 @interface K {}
31
32 @Target({ElementType.TYPE_USE, ElementType.TYPE_PARAMETER})
33 @interface L {}