< prev index next >

src/java.compiler/share/classes/javax/lang/model/element/ElementVisitor.java

Print this page

        

*** 57,68 **** * <em>default methods</em>. However, default methods are only * available on Java SE 8 and higher releases and the {@code * javax.lang.model.*} packages bundled in Java SE 8 were required to * also be runnable on Java SE 7. Therefore, default methods * were <em>not</em> used when extending {@code javax.lang.model.*} ! * to cover Java SE 8 language features. However, default methods may ! * be used in subsequent revisions of the {@code javax.lang.model.*} * packages that are only required to run on Java SE 8 and higher * platform versions. * * @param <R> the return type of this visitor's methods. Use {@link * Void} for visitors that do not need to return results. --- 57,68 ---- * <em>default methods</em>. However, default methods are only * available on Java SE 8 and higher releases and the {@code * javax.lang.model.*} packages bundled in Java SE 8 were required to * also be runnable on Java SE 7. Therefore, default methods * were <em>not</em> used when extending {@code javax.lang.model.*} ! * to cover Java SE 8 language features. However, default methods ! * are used in subsequent revisions of the {@code javax.lang.model.*} * packages that are only required to run on Java SE 8 and higher * platform versions. * * @param <R> the return type of this visitor's methods. Use {@link * Void} for visitors that do not need to return results.
*** 83,97 **** * @return a visitor-specified result */ R visit(Element e, P p); /** ! * A convenience method equivalent to {@code v.visit(e, null)}. * @param e the element to visit * @return a visitor-specified result */ ! R visit(Element e); /** * Visits a package element. * @param e the element to visit * @param p a visitor-specified parameter --- 83,102 ---- * @return a visitor-specified result */ R visit(Element e, P p); /** ! * A convenience method equivalent to {@code visit(e, null)}. ! * ! * @implSpec The default implementation is {@code visit(e, null)}. ! * * @param e the element to visit * @return a visitor-specified result */ ! default R visit(Element e) { ! return visit(e, null); ! } /** * Visits a package element. * @param e the element to visit * @param p a visitor-specified parameter
*** 144,155 **** */ R visitUnknown(Element e, P p); /** * Visits a module element. * @param e the element to visit * @param p a visitor-specified parameter * @return a visitor-specified result * @since 9 */ ! R visitModule(ModuleElement e, P p); } --- 149,166 ---- */ R visitUnknown(Element e, P p); /** * Visits a module element. + * + * @implSpec Visits a {@code ModuleElement} by calling {@code + * visitUnknown(e, p)}. + * * @param e the element to visit * @param p a visitor-specified parameter * @return a visitor-specified result * @since 9 */ ! default R visitModule(ModuleElement e, P p) { ! return visitUnknown(e, p); ! } }
< prev index next >