35 * A simple visitor of program elements with default behavior
36 * appropriate for the {@link SourceVersion#RELEASE_6 RELEASE_6}
37 * source version.
38 *
39 * Visit methods corresponding to {@code RELEASE_6} language
40 * constructs call {@link #defaultAction defaultAction}, passing their
41 * arguments to {@code defaultAction}'s corresponding parameters.
42 *
43 * For constructs introduced in {@code RELEASE_7} and later, {@code
44 * visitUnknown} is called instead.
45 *
46 *
47 * @apiNote
48 * Methods in this class may be overridden subject to their general
49 * contract.
50 *
51 * <p id=note_for_subclasses><strong>WARNING:</strong> The {@code
52 * ElementVisitor} interface implemented by this class may have
53 * methods added to it in the future to accommodate new, currently
54 * unknown, language structures added to future versions of the
55 * Java™ programming language. Therefore, methods whose names
56 * begin with {@code "visit"} may be added to this class in the
57 * future; to avoid incompatibilities, classes and subclasses which
58 * extend this class should not declare any instance methods with
59 * names beginning with {@code "visit"}.</p>
60 *
61 * <p>When such a new visit method is added, the default
62 * implementation in this class will be to directly or indirectly call
63 * the {@link #visitUnknown visitUnknown} method. A new simple
64 * element visitor class will also be introduced to correspond to the
65 * new language level; this visitor will have different default
66 * behavior for the visit method in question. When a new visitor is
67 * introduced, portions of this visitor class may be deprecated,
68 * including its constructors.
69 *
70 * @param <R> the return type of this visitor's methods. Use {@code Void}
71 * for visitors that do not need to return results.
72 * @param <P> the type of the additional parameter to this visitor's methods. Use {@code Void}
73 * for visitors that do not need an additional parameter.
74 *
75 * @author Joseph D. Darcy
|
35 * A simple visitor of program elements with default behavior
36 * appropriate for the {@link SourceVersion#RELEASE_6 RELEASE_6}
37 * source version.
38 *
39 * Visit methods corresponding to {@code RELEASE_6} language
40 * constructs call {@link #defaultAction defaultAction}, passing their
41 * arguments to {@code defaultAction}'s corresponding parameters.
42 *
43 * For constructs introduced in {@code RELEASE_7} and later, {@code
44 * visitUnknown} is called instead.
45 *
46 *
47 * @apiNote
48 * Methods in this class may be overridden subject to their general
49 * contract.
50 *
51 * <p id=note_for_subclasses><strong>WARNING:</strong> The {@code
52 * ElementVisitor} interface implemented by this class may have
53 * methods added to it in the future to accommodate new, currently
54 * unknown, language structures added to future versions of the
55 * Java programming language. Therefore, methods whose names
56 * begin with {@code "visit"} may be added to this class in the
57 * future; to avoid incompatibilities, classes and subclasses which
58 * extend this class should not declare any instance methods with
59 * names beginning with {@code "visit"}.</p>
60 *
61 * <p>When such a new visit method is added, the default
62 * implementation in this class will be to directly or indirectly call
63 * the {@link #visitUnknown visitUnknown} method. A new simple
64 * element visitor class will also be introduced to correspond to the
65 * new language level; this visitor will have different default
66 * behavior for the visit method in question. When a new visitor is
67 * introduced, portions of this visitor class may be deprecated,
68 * including its constructors.
69 *
70 * @param <R> the return type of this visitor's methods. Use {@code Void}
71 * for visitors that do not need to return results.
72 * @param <P> the type of the additional parameter to this visitor's methods. Use {@code Void}
73 * for visitors that do not need an additional parameter.
74 *
75 * @author Joseph D. Darcy
|