29 import javax.lang.model.element.Name;
30
31 /**
32 * A tree node for a type parameter.
33 *
34 * For example:
35 * <pre>
36 * <em>name</em>
37 *
38 * <em>name</em> extends <em>bounds</em>
39 *
40 * <em>annotations</em> <em>name</em>
41 * </pre>
42 *
43 * @jls section 4.4
44 *
45 * @author Peter von der Ahé
46 * @author Jonathan Gibbons
47 * @since 1.6
48 */
49 @jdk.Supported
50 public interface TypeParameterTree extends Tree {
51 Name getName();
52 List<? extends Tree> getBounds();
53
54 /**
55 * Return annotations on the type parameter declaration.
56 *
57 * Annotations need Target meta-annotations of
58 * {@link java.lang.annotation.ElementType#TYPE_PARAMETER} or
59 * {@link java.lang.annotation.ElementType#TYPE_USE}
60 * to appear in this position.
61 *
62 * @return annotations on the type parameter declaration
63 * @since 1.8
64 */
65 List<? extends AnnotationTree> getAnnotations();
66 }
|
29 import javax.lang.model.element.Name;
30
31 /**
32 * A tree node for a type parameter.
33 *
34 * For example:
35 * <pre>
36 * <em>name</em>
37 *
38 * <em>name</em> extends <em>bounds</em>
39 *
40 * <em>annotations</em> <em>name</em>
41 * </pre>
42 *
43 * @jls section 4.4
44 *
45 * @author Peter von der Ahé
46 * @author Jonathan Gibbons
47 * @since 1.6
48 */
49 @jdk.Exported
50 public interface TypeParameterTree extends Tree {
51 Name getName();
52 List<? extends Tree> getBounds();
53
54 /**
55 * Return annotations on the type parameter declaration.
56 *
57 * Annotations need Target meta-annotations of
58 * {@link java.lang.annotation.ElementType#TYPE_PARAMETER} or
59 * {@link java.lang.annotation.ElementType#TYPE_USE}
60 * to appear in this position.
61 *
62 * @return annotations on the type parameter declaration
63 * @since 1.8
64 */
65 List<? extends AnnotationTree> getAnnotations();
66 }
|