langtools/src/share/classes/javax/lang/model/type/TypeVisitor.java
changeset 15386 92bc08d96f0c
parent 15385 ee1eebe7e210
child 16556 f4adc5bb4652
equal deleted inserted replaced
15385:ee1eebe7e210 15386:92bc08d96f0c
    50  * abstract visitor class that implements this interface.  However, an
    50  * abstract visitor class that implements this interface.  However, an
    51  * API should generally use this visitor interface as the type for
    51  * API should generally use this visitor interface as the type for
    52  * parameters, return type, etc. rather than one of the abstract
    52  * parameters, return type, etc. rather than one of the abstract
    53  * classes.
    53  * classes.
    54  *
    54  *
       
    55  * <p>Note that methods to accommodate new language constructs could
       
    56  * be added in a source <em>compatible</em> way if they were added as
       
    57  * <em>default methods</em>.  However, default methods are only
       
    58  * available on Java SE 8 and higher releases and the {@code
       
    59  * javax.lang.model.*} packages bundled in Java SE 8 are required to
       
    60  * also be runnable on Java SE 7.  Therefore, default methods
       
    61  * <em>cannot</em> be used when extending {@code javax.lang.model.*}
       
    62  * to cover Java SE 8 language features.  However, default methods may
       
    63  * be used in subsequent revisions of the {@code javax.lang.model.*}
       
    64  * packages that are only required to run on Java SE 8 and higher
       
    65  * platform versions.
       
    66  *
    55  * @param <R> the return type of this visitor's methods.  Use {@link
    67  * @param <R> the return type of this visitor's methods.  Use {@link
    56  *            Void} for visitors that do not need to return results.
    68  *            Void} for visitors that do not need to return results.
    57  * @param <P> the type of the additional parameter to this visitor's
    69  * @param <P> the type of the additional parameter to this visitor's
    58  *            methods.  Use {@code Void} for visitors that do not need an
    70  *            methods.  Use {@code Void} for visitors that do not need an
    59  *            additional parameter.
    71  *            additional parameter.