25
26 package javax.lang.model.util;
27
28
29 import javax.lang.model.element.*;
30
31 import static javax.lang.model.SourceVersion.*;
32 import javax.lang.model.SourceVersion;
33 import javax.annotation.processing.SupportedSourceVersion;
34
35 /**
36 * A skeletal visitor for annotation values with default behavior
37 * appropriate for the {@link SourceVersion#RELEASE_6 RELEASE_6}
38 * source version.
39 *
40 * @apiNote
41 * <p id=note_for_subclasses><strong>WARNING:</strong> The {@code
42 * AnnotationValueVisitor} interface implemented by this class may
43 * have methods added to it in the future to accommodate new,
44 * currently unknown, language structures added to future versions of
45 * the Java™ programming language. Therefore, methods whose
46 * names begin with {@code "visit"} may be added to this class in the
47 * future; to avoid incompatibilities, classes and subclasses which
48 * extend this class should not declare any instance methods with
49 * names beginning with {@code "visit"}.</p>
50 *
51 * <p>When such a new visit method is added, the default
52 * implementation in this class will be to directly or indirectly call
53 * the {@link #visitUnknown visitUnknown} method. A new abstract
54 * annotation value visitor class will also be introduced to
55 * correspond to the new language level; this visitor will have
56 * different default behavior for the visit method in question. When
57 * a new visitor is introduced, portions of this visitor class may be
58 * deprecated, including its constructors.
59 *
60 * @param <R> the return type of this visitor's methods
61 * @param <P> the type of the additional parameter to this visitor's methods.
62 *
63 * @author Joseph D. Darcy
64 * @author Scott Seligman
65 * @author Peter von der Ahé
|
25
26 package javax.lang.model.util;
27
28
29 import javax.lang.model.element.*;
30
31 import static javax.lang.model.SourceVersion.*;
32 import javax.lang.model.SourceVersion;
33 import javax.annotation.processing.SupportedSourceVersion;
34
35 /**
36 * A skeletal visitor for annotation values with default behavior
37 * appropriate for the {@link SourceVersion#RELEASE_6 RELEASE_6}
38 * source version.
39 *
40 * @apiNote
41 * <p id=note_for_subclasses><strong>WARNING:</strong> The {@code
42 * AnnotationValueVisitor} interface implemented by this class may
43 * have methods added to it in the future to accommodate new,
44 * currently unknown, language structures added to future versions of
45 * the Java programming language. Therefore, methods whose
46 * names begin with {@code "visit"} may be added to this class in the
47 * future; to avoid incompatibilities, classes and subclasses which
48 * extend this class should not declare any instance methods with
49 * names beginning with {@code "visit"}.</p>
50 *
51 * <p>When such a new visit method is added, the default
52 * implementation in this class will be to directly or indirectly call
53 * the {@link #visitUnknown visitUnknown} method. A new abstract
54 * annotation value visitor class will also be introduced to
55 * correspond to the new language level; this visitor will have
56 * different default behavior for the visit method in question. When
57 * a new visitor is introduced, portions of this visitor class may be
58 * deprecated, including its constructors.
59 *
60 * @param <R> the return type of this visitor's methods
61 * @param <P> the type of the additional parameter to this visitor's methods.
62 *
63 * @author Joseph D. Darcy
64 * @author Scott Seligman
65 * @author Peter von der Ahé
|