8006264: Add explanation of why default methods cannot be used in JDK 8 javax.lang.model

Wed, 23 Jan 2013 20:11:07 -0800

author
darcy
date
Wed, 23 Jan 2013 20:11:07 -0800
changeset 1522
09f65aad4759
parent 1521
71f35e4b93a5
child 1523
c2e11e2ec4a3
child 1528
cbcd9b484759

8006264: Add explanation of why default methods cannot be used in JDK 8 javax.lang.model
Reviewed-by: jjg

src/share/classes/javax/lang/model/element/AnnotationValueVisitor.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/element/ElementVisitor.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/type/TypeVisitor.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor7.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor8.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractElementVisitor6.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractElementVisitor7.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractElementVisitor8.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractTypeVisitor7.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/AbstractTypeVisitor8.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/ElementKindVisitor6.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/ElementKindVisitor7.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/ElementKindVisitor8.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor6.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor7.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor8.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleElementVisitor6.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleElementVisitor7.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleElementVisitor8.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleTypeVisitor6.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleTypeVisitor7.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/SimpleTypeVisitor8.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/TypeKindVisitor6.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/TypeKindVisitor7.java file | annotate | diff | comparison | revisions
src/share/classes/javax/lang/model/util/TypeKindVisitor8.java file | annotate | diff | comparison | revisions
     1.1 --- a/src/share/classes/javax/lang/model/element/AnnotationValueVisitor.java	Wed Jan 23 13:27:24 2013 -0800
     1.2 +++ b/src/share/classes/javax/lang/model/element/AnnotationValueVisitor.java	Wed Jan 23 20:11:07 2013 -0800
     1.3 @@ -1,5 +1,5 @@
     1.4  /*
     1.5 - * Copyright (c) 2005, 2006, Oracle and/or its affiliates. All rights reserved.
     1.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
     1.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     1.8   *
     1.9   * This code is free software; you can redistribute it and/or modify it
    1.10 @@ -61,6 +61,18 @@
    1.11   * parameters, return type, etc. rather than one of the abstract
    1.12   * classes.
    1.13   *
    1.14 + * <p>Note that methods to accommodate new language constructs could
    1.15 + * be added in a source <em>compatible</em> way if they were added as
    1.16 + * <em>default methods</em>.  However, default methods are only
    1.17 + * available on Java SE 8 and higher releases and the {@code
    1.18 + * javax.lang.model.*} packages bundled in Java SE 8 are required to
    1.19 + * also be runnable on Java SE 7.  Therefore, default methods
    1.20 + * <em>cannot</em> be used when extending {@code javax.lang.model.*}
    1.21 + * to cover Java SE 8 language features.  However, default methods may
    1.22 + * be used in subsequent revisions of the {@code javax.lang.model.*}
    1.23 + * packages that are only required to run on Java SE 8 and higher
    1.24 + * platform versions.
    1.25 + *
    1.26   * @param <R> the return type of this visitor's methods
    1.27   * @param <P> the type of the additional parameter to this visitor's methods.
    1.28   * @author Joseph D. Darcy
     2.1 --- a/src/share/classes/javax/lang/model/element/ElementVisitor.java	Wed Jan 23 13:27:24 2013 -0800
     2.2 +++ b/src/share/classes/javax/lang/model/element/ElementVisitor.java	Wed Jan 23 20:11:07 2013 -0800
     2.3 @@ -1,5 +1,5 @@
     2.4  /*
     2.5 - * Copyright (c) 2005, 2010, Oracle and/or its affiliates. All rights reserved.
     2.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
     2.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     2.8   *
     2.9   * This code is free software; you can redistribute it and/or modify it
    2.10 @@ -52,6 +52,18 @@
    2.11   * parameters, return type, etc. rather than one of the abstract
    2.12   * classes.
    2.13   *
    2.14 + * <p>Note that methods to accommodate new language constructs could
    2.15 + * be added in a source <em>compatible</em> way if they were added as
    2.16 + * <em>default methods</em>.  However, default methods are only
    2.17 + * available on Java SE 8 and higher releases and the {@code
    2.18 + * javax.lang.model.*} packages bundled in Java SE 8 are required to
    2.19 + * also be runnable on Java SE 7.  Therefore, default methods
    2.20 + * <em>cannot</em> be used when extending {@code javax.lang.model.*}
    2.21 + * to cover Java SE 8 language features.  However, default methods may
    2.22 + * be used in subsequent revisions of the {@code javax.lang.model.*}
    2.23 + * packages that are only required to run on Java SE 8 and higher
    2.24 + * platform versions.
    2.25 + *
    2.26   * @param <R> the return type of this visitor's methods.  Use {@link
    2.27   *            Void} for visitors that do not need to return results.
    2.28   * @param <P> the type of the additional parameter to this visitor's
     3.1 --- a/src/share/classes/javax/lang/model/type/TypeVisitor.java	Wed Jan 23 13:27:24 2013 -0800
     3.2 +++ b/src/share/classes/javax/lang/model/type/TypeVisitor.java	Wed Jan 23 20:11:07 2013 -0800
     3.3 @@ -52,6 +52,18 @@
     3.4   * parameters, return type, etc. rather than one of the abstract
     3.5   * classes.
     3.6   *
     3.7 + * <p>Note that methods to accommodate new language constructs could
     3.8 + * be added in a source <em>compatible</em> way if they were added as
     3.9 + * <em>default methods</em>.  However, default methods are only
    3.10 + * available on Java SE 8 and higher releases and the {@code
    3.11 + * javax.lang.model.*} packages bundled in Java SE 8 are required to
    3.12 + * also be runnable on Java SE 7.  Therefore, default methods
    3.13 + * <em>cannot</em> be used when extending {@code javax.lang.model.*}
    3.14 + * to cover Java SE 8 language features.  However, default methods may
    3.15 + * be used in subsequent revisions of the {@code javax.lang.model.*}
    3.16 + * packages that are only required to run on Java SE 8 and higher
    3.17 + * platform versions.
    3.18 + *
    3.19   * @param <R> the return type of this visitor's methods.  Use {@link
    3.20   *            Void} for visitors that do not need to return results.
    3.21   * @param <P> the type of the additional parameter to this visitor's
     4.1 --- a/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java	Wed Jan 23 13:27:24 2013 -0800
     4.2 +++ b/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java	Wed Jan 23 20:11:07 2013 -0800
     4.3 @@ -54,6 +54,15 @@
     4.4   * behavior for the visit method in question.  When the new visitor is
     4.5   * introduced, all or portions of this visitor may be deprecated.
     4.6   *
     4.7 + * <p>Note that adding a default implementation of a new visit method
     4.8 + * in a visitor class will occur instead of adding a <em>default
     4.9 + * method</em> directly in the visitor interface since a Java SE 8
    4.10 + * language feature cannot be used to this version of the API since
    4.11 + * this version is required to be runnable on Java SE 7
    4.12 + * implementations.  Future versions of the API that are only required
    4.13 + * to run on Java SE 8 and later may take advantage of default methods
    4.14 + * in this situation.
    4.15 + *
    4.16   * @param <R> the return type of this visitor's methods
    4.17   * @param <P> the type of the additional parameter to this visitor's methods.
    4.18   *
     5.1 --- a/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor7.java	Wed Jan 23 13:27:24 2013 -0800
     5.2 +++ b/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor7.java	Wed Jan 23 20:11:07 2013 -0800
     5.3 @@ -1,5 +1,5 @@
     5.4  /*
     5.5 - * Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
     5.6 + * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
     5.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     5.8   *
     5.9   * This code is free software; you can redistribute it and/or modify it
    5.10 @@ -51,6 +51,15 @@
    5.11   * behavior for the visit method in question.  When the new visitor is
    5.12   * introduced, all or portions of this visitor may be deprecated.
    5.13   *
    5.14 + * <p>Note that adding a default implementation of a new visit method
    5.15 + * in a visitor class will occur instead of adding a <em>default
    5.16 + * method</em> directly in the visitor interface since a Java SE 8
    5.17 + * language feature cannot be used to this version of the API since
    5.18 + * this version is required to be runnable on Java SE 7
    5.19 + * implementations.  Future versions of the API that are only required
    5.20 + * to run on Java SE 8 and later may take advantage of default methods
    5.21 + * in this situation.
    5.22 + *
    5.23   * @param <R> the return type of this visitor's methods
    5.24   * @param <P> the type of the additional parameter to this visitor's methods.
    5.25   *
     6.1 --- a/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor8.java	Wed Jan 23 13:27:24 2013 -0800
     6.2 +++ b/src/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor8.java	Wed Jan 23 20:11:07 2013 -0800
     6.3 @@ -1,5 +1,5 @@
     6.4  /*
     6.5 - * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
     6.6 + * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
     6.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     6.8   *
     6.9   * This code is free software; you can redistribute it and/or modify it
    6.10 @@ -51,6 +51,15 @@
    6.11   * behavior for the visit method in question.  When the new visitor is
    6.12   * introduced, all or portions of this visitor may be deprecated.
    6.13   *
    6.14 + * <p>Note that adding a default implementation of a new visit method
    6.15 + * in a visitor class will occur instead of adding a <em>default
    6.16 + * method</em> directly in the visitor interface since a Java SE 8
    6.17 + * language feature cannot be used to this version of the API since
    6.18 + * this version is required to be runnable on Java SE 7
    6.19 + * implementations.  Future versions of the API that are only required
    6.20 + * to run on Java SE 8 and later may take advantage of default methods
    6.21 + * in this situation.
    6.22 + *
    6.23   * @param <R> the return type of this visitor's methods
    6.24   * @param <P> the type of the additional parameter to this visitor's methods.
    6.25   *
     7.1 --- a/src/share/classes/javax/lang/model/util/AbstractElementVisitor6.java	Wed Jan 23 13:27:24 2013 -0800
     7.2 +++ b/src/share/classes/javax/lang/model/util/AbstractElementVisitor6.java	Wed Jan 23 20:11:07 2013 -0800
     7.3 @@ -1,5 +1,5 @@
     7.4  /*
     7.5 - * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
     7.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
     7.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     7.8   *
     7.9   * This code is free software; you can redistribute it and/or modify it
    7.10 @@ -53,6 +53,15 @@
    7.11   * visit method in question.  When the new visitor is introduced, all
    7.12   * or portions of this visitor may be deprecated.
    7.13   *
    7.14 + * <p>Note that adding a default implementation of a new visit method
    7.15 + * in a visitor class will occur instead of adding a <em>default
    7.16 + * method</em> directly in the visitor interface since a Java SE 8
    7.17 + * language feature cannot be used to this version of the API since
    7.18 + * this version is required to be runnable on Java SE 7
    7.19 + * implementations.  Future versions of the API that are only required
    7.20 + * to run on Java SE 8 and later may take advantage of default methods
    7.21 + * in this situation.
    7.22 + *
    7.23   * @param <R> the return type of this visitor's methods.  Use {@link
    7.24   *            Void} for visitors that do not need to return results.
    7.25   * @param <P> the type of the additional parameter to this visitor's
     8.1 --- a/src/share/classes/javax/lang/model/util/AbstractElementVisitor7.java	Wed Jan 23 13:27:24 2013 -0800
     8.2 +++ b/src/share/classes/javax/lang/model/util/AbstractElementVisitor7.java	Wed Jan 23 20:11:07 2013 -0800
     8.3 @@ -1,5 +1,5 @@
     8.4  /*
     8.5 - * Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
     8.6 + * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
     8.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     8.8   *
     8.9   * This code is free software; you can redistribute it and/or modify it
    8.10 @@ -52,6 +52,15 @@
    8.11   * visit method in question.  When the new visitor is introduced, all
    8.12   * or portions of this visitor may be deprecated.
    8.13   *
    8.14 + * <p>Note that adding a default implementation of a new visit method
    8.15 + * in a visitor class will occur instead of adding a <em>default
    8.16 + * method</em> directly in the visitor interface since a Java SE 8
    8.17 + * language feature cannot be used to this version of the API since
    8.18 + * this version is required to be runnable on Java SE 7
    8.19 + * implementations.  Future versions of the API that are only required
    8.20 + * to run on Java SE 8 and later may take advantage of default methods
    8.21 + * in this situation.
    8.22 + *
    8.23   * @param <R> the return type of this visitor's methods.  Use {@link
    8.24   *            Void} for visitors that do not need to return results.
    8.25   * @param <P> the type of the additional parameter to this visitor's
     9.1 --- a/src/share/classes/javax/lang/model/util/AbstractElementVisitor8.java	Wed Jan 23 13:27:24 2013 -0800
     9.2 +++ b/src/share/classes/javax/lang/model/util/AbstractElementVisitor8.java	Wed Jan 23 20:11:07 2013 -0800
     9.3 @@ -1,5 +1,5 @@
     9.4  /*
     9.5 - * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
     9.6 + * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
     9.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     9.8   *
     9.9   * This code is free software; you can redistribute it and/or modify it
    9.10 @@ -52,6 +52,15 @@
    9.11   * visit method in question.  When the new visitor is introduced, all
    9.12   * or portions of this visitor may be deprecated.
    9.13   *
    9.14 + * <p>Note that adding a default implementation of a new visit method
    9.15 + * in a visitor class will occur instead of adding a <em>default
    9.16 + * method</em> directly in the visitor interface since a Java SE 8
    9.17 + * language feature cannot be used to this version of the API since
    9.18 + * this version is required to be runnable on Java SE 7
    9.19 + * implementations.  Future versions of the API that are only required
    9.20 + * to run on Java SE 8 and later may take advantage of default methods
    9.21 + * in this situation.
    9.22 + *
    9.23   * @param <R> the return type of this visitor's methods.  Use {@link
    9.24   *            Void} for visitors that do not need to return results.
    9.25   * @param <P> the type of the additional parameter to this visitor's
    10.1 --- a/src/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java	Wed Jan 23 13:27:24 2013 -0800
    10.2 +++ b/src/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java	Wed Jan 23 20:11:07 2013 -0800
    10.3 @@ -49,6 +49,15 @@
    10.4   * visit method in question.  When the new visitor is introduced, all
    10.5   * or portions of this visitor may be deprecated.
    10.6   *
    10.7 + * <p>Note that adding a default implementation of a new visit method
    10.8 + * in a visitor class will occur instead of adding a <em>default
    10.9 + * method</em> directly in the visitor interface since a Java SE 8
   10.10 + * language feature cannot be used to this version of the API since
   10.11 + * this version is required to be runnable on Java SE 7
   10.12 + * implementations.  Future versions of the API that are only required
   10.13 + * to run on Java SE 8 and later may take advantage of default methods
   10.14 + * in this situation.
   10.15 + *
   10.16   * @param <R> the return type of this visitor's methods.  Use {@link
   10.17   *            Void} for visitors that do not need to return results.
   10.18   * @param <P> the type of the additional parameter to this visitor's
    11.1 --- a/src/share/classes/javax/lang/model/util/AbstractTypeVisitor7.java	Wed Jan 23 13:27:24 2013 -0800
    11.2 +++ b/src/share/classes/javax/lang/model/util/AbstractTypeVisitor7.java	Wed Jan 23 20:11:07 2013 -0800
    11.3 @@ -1,5 +1,5 @@
    11.4  /*
    11.5 - * Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
    11.6 + * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
    11.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    11.8   *
    11.9   * This code is free software; you can redistribute it and/or modify it
   11.10 @@ -49,6 +49,15 @@
   11.11   * visit method in question.  When the new visitor is introduced, all
   11.12   * or portions of this visitor may be deprecated.
   11.13   *
   11.14 + * <p>Note that adding a default implementation of a new visit method
   11.15 + * in a visitor class will occur instead of adding a <em>default
   11.16 + * method</em> directly in the visitor interface since a Java SE 8
   11.17 + * language feature cannot be used to this version of the API since
   11.18 + * this version is required to be runnable on Java SE 7
   11.19 + * implementations.  Future versions of the API that are only required
   11.20 + * to run on Java SE 8 and later may take advantage of default methods
   11.21 + * in this situation.
   11.22 + *
   11.23   * @param <R> the return type of this visitor's methods.  Use {@link
   11.24   *            Void} for visitors that do not need to return results.
   11.25   * @param <P> the type of the additional parameter to this visitor's
    12.1 --- a/src/share/classes/javax/lang/model/util/AbstractTypeVisitor8.java	Wed Jan 23 13:27:24 2013 -0800
    12.2 +++ b/src/share/classes/javax/lang/model/util/AbstractTypeVisitor8.java	Wed Jan 23 20:11:07 2013 -0800
    12.3 @@ -1,5 +1,5 @@
    12.4  /*
    12.5 - * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
    12.6 + * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
    12.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    12.8   *
    12.9   * This code is free software; you can redistribute it and/or modify it
   12.10 @@ -49,6 +49,15 @@
   12.11   * visit method in question.  When the new visitor is introduced, all
   12.12   * or portions of this visitor may be deprecated.
   12.13   *
   12.14 + * <p>Note that adding a default implementation of a new visit method
   12.15 + * in a visitor class will occur instead of adding a <em>default
   12.16 + * method</em> directly in the visitor interface since a Java SE 8
   12.17 + * language feature cannot be used to this version of the API since
   12.18 + * this version is required to be runnable on Java SE 7
   12.19 + * implementations.  Future versions of the API that are only required
   12.20 + * to run on Java SE 8 and later may take advantage of default methods
   12.21 + * in this situation.
   12.22 + *
   12.23   * @param <R> the return type of this visitor's methods.  Use {@link
   12.24   *            Void} for visitors that do not need to return results.
   12.25   * @param <P> the type of the additional parameter to this visitor's
    13.1 --- a/src/share/classes/javax/lang/model/util/ElementKindVisitor6.java	Wed Jan 23 13:27:24 2013 -0800
    13.2 +++ b/src/share/classes/javax/lang/model/util/ElementKindVisitor6.java	Wed Jan 23 20:11:07 2013 -0800
    13.3 @@ -1,5 +1,5 @@
    13.4  /*
    13.5 - * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
    13.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
    13.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    13.8   *
    13.9   * This code is free software; you can redistribute it and/or modify it
   13.10 @@ -67,6 +67,15 @@
   13.11   * for the visit method in question.  When the new visitor is
   13.12   * introduced, all or portions of this visitor may be deprecated.
   13.13   *
   13.14 + * <p>Note that adding a default implementation of a new visit method
   13.15 + * in a visitor class will occur instead of adding a <em>default
   13.16 + * method</em> directly in the visitor interface since a Java SE 8
   13.17 + * language feature cannot be used to this version of the API since
   13.18 + * this version is required to be runnable on Java SE 7
   13.19 + * implementations.  Future versions of the API that are only required
   13.20 + * to run on Java SE 8 and later may take advantage of default methods
   13.21 + * in this situation.
   13.22 + *
   13.23   * @param <R> the return type of this visitor's methods.  Use {@link
   13.24   *            Void} for visitors that do not need to return results.
   13.25   * @param <P> the type of the additional parameter to this visitor's
    14.1 --- a/src/share/classes/javax/lang/model/util/ElementKindVisitor7.java	Wed Jan 23 13:27:24 2013 -0800
    14.2 +++ b/src/share/classes/javax/lang/model/util/ElementKindVisitor7.java	Wed Jan 23 20:11:07 2013 -0800
    14.3 @@ -1,5 +1,5 @@
    14.4  /*
    14.5 - * Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
    14.6 + * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
    14.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    14.8   *
    14.9   * This code is free software; you can redistribute it and/or modify it
   14.10 @@ -65,6 +65,15 @@
   14.11   * for the visit method in question.  When the new visitor is
   14.12   * introduced, all or portions of this visitor may be deprecated.
   14.13   *
   14.14 + * <p>Note that adding a default implementation of a new visit method
   14.15 + * in a visitor class will occur instead of adding a <em>default
   14.16 + * method</em> directly in the visitor interface since a Java SE 8
   14.17 + * language feature cannot be used to this version of the API since
   14.18 + * this version is required to be runnable on Java SE 7
   14.19 + * implementations.  Future versions of the API that are only required
   14.20 + * to run on Java SE 8 and later may take advantage of default methods
   14.21 + * in this situation.
   14.22 + *
   14.23   * @param <R> the return type of this visitor's methods.  Use {@link
   14.24   *            Void} for visitors that do not need to return results.
   14.25   * @param <P> the type of the additional parameter to this visitor's
    15.1 --- a/src/share/classes/javax/lang/model/util/ElementKindVisitor8.java	Wed Jan 23 13:27:24 2013 -0800
    15.2 +++ b/src/share/classes/javax/lang/model/util/ElementKindVisitor8.java	Wed Jan 23 20:11:07 2013 -0800
    15.3 @@ -1,5 +1,5 @@
    15.4  /*
    15.5 - * Copyright (c) 2011, Oracle and/or its affiliates. All rights reserved.
    15.6 + * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
    15.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    15.8   *
    15.9   * This code is free software; you can redistribute it and/or modify it
   15.10 @@ -65,6 +65,15 @@
   15.11   * for the visit method in question.  When the new visitor is
   15.12   * introduced, all or portions of this visitor may be deprecated.
   15.13   *
   15.14 + * <p>Note that adding a default implementation of a new visit method
   15.15 + * in a visitor class will occur instead of adding a <em>default
   15.16 + * method</em> directly in the visitor interface since a Java SE 8
   15.17 + * language feature cannot be used to this version of the API since
   15.18 + * this version is required to be runnable on Java SE 7
   15.19 + * implementations.  Future versions of the API that are only required
   15.20 + * to run on Java SE 8 and later may take advantage of default methods
   15.21 + * in this situation.
   15.22 + *
   15.23   * @param <R> the return type of this visitor's methods.  Use {@link
   15.24   *            Void} for visitors that do not need to return results.
   15.25   * @param <P> the type of the additional parameter to this visitor's
    16.1 --- a/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor6.java	Wed Jan 23 13:27:24 2013 -0800
    16.2 +++ b/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor6.java	Wed Jan 23 20:11:07 2013 -0800
    16.3 @@ -1,5 +1,5 @@
    16.4  /*
    16.5 - * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
    16.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
    16.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    16.8   *
    16.9   * This code is free software; you can redistribute it and/or modify it
   16.10 @@ -63,6 +63,15 @@
   16.11   * behavior for the visit method in question.  When the new visitor is
   16.12   * introduced, all or portions of this visitor may be deprecated.
   16.13   *
   16.14 + * <p>Note that adding a default implementation of a new visit method
   16.15 + * in a visitor class will occur instead of adding a <em>default
   16.16 + * method</em> directly in the visitor interface since a Java SE 8
   16.17 + * language feature cannot be used to this version of the API since
   16.18 + * this version is required to be runnable on Java SE 7
   16.19 + * implementations.  Future versions of the API that are only required
   16.20 + * to run on Java SE 8 and later may take advantage of default methods
   16.21 + * in this situation.
   16.22 + *
   16.23   * @param <R> the return type of this visitor's methods
   16.24   * @param <P> the type of the additional parameter to this visitor's methods.
   16.25   *
    17.1 --- a/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor7.java	Wed Jan 23 13:27:24 2013 -0800
    17.2 +++ b/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor7.java	Wed Jan 23 20:11:07 2013 -0800
    17.3 @@ -1,5 +1,5 @@
    17.4  /*
    17.5 - * Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
    17.6 + * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
    17.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    17.8   *
    17.9   * This code is free software; you can redistribute it and/or modify it
   17.10 @@ -58,6 +58,15 @@
   17.11   * behavior for the visit method in question.  When the new visitor is
   17.12   * introduced, all or portions of this visitor may be deprecated.
   17.13   *
   17.14 + * <p>Note that adding a default implementation of a new visit method
   17.15 + * in a visitor class will occur instead of adding a <em>default
   17.16 + * method</em> directly in the visitor interface since a Java SE 8
   17.17 + * language feature cannot be used to this version of the API since
   17.18 + * this version is required to be runnable on Java SE 7
   17.19 + * implementations.  Future versions of the API that are only required
   17.20 + * to run on Java SE 8 and later may take advantage of default methods
   17.21 + * in this situation.
   17.22 + *
   17.23   * @param <R> the return type of this visitor's methods
   17.24   * @param <P> the type of the additional parameter to this visitor's methods.
   17.25   *
    18.1 --- a/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor8.java	Wed Jan 23 13:27:24 2013 -0800
    18.2 +++ b/src/share/classes/javax/lang/model/util/SimpleAnnotationValueVisitor8.java	Wed Jan 23 20:11:07 2013 -0800
    18.3 @@ -1,5 +1,5 @@
    18.4  /*
    18.5 - * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
    18.6 + * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
    18.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    18.8   *
    18.9   * This code is free software; you can redistribute it and/or modify it
   18.10 @@ -58,6 +58,15 @@
   18.11   * behavior for the visit method in question.  When the new visitor is
   18.12   * introduced, all or portions of this visitor may be deprecated.
   18.13   *
   18.14 + * <p>Note that adding a default implementation of a new visit method
   18.15 + * in a visitor class will occur instead of adding a <em>default
   18.16 + * method</em> directly in the visitor interface since a Java SE 8
   18.17 + * language feature cannot be used to this version of the API since
   18.18 + * this version is required to be runnable on Java SE 7
   18.19 + * implementations.  Future versions of the API that are only required
   18.20 + * to run on Java SE 8 and later may take advantage of default methods
   18.21 + * in this situation.
   18.22 + *
   18.23   * @param <R> the return type of this visitor's methods
   18.24   * @param <P> the type of the additional parameter to this visitor's methods.
   18.25   *
    19.1 --- a/src/share/classes/javax/lang/model/util/SimpleElementVisitor6.java	Wed Jan 23 13:27:24 2013 -0800
    19.2 +++ b/src/share/classes/javax/lang/model/util/SimpleElementVisitor6.java	Wed Jan 23 20:11:07 2013 -0800
    19.3 @@ -1,5 +1,5 @@
    19.4  /*
    19.5 - * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
    19.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
    19.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    19.8   *
    19.9   * This code is free software; you can redistribute it and/or modify it
   19.10 @@ -65,6 +65,15 @@
   19.11   * visit method in question.  When the new visitor is introduced, all
   19.12   * or portions of this visitor may be deprecated.
   19.13   *
   19.14 + * <p>Note that adding a default implementation of a new visit method
   19.15 + * in a visitor class will occur instead of adding a <em>default
   19.16 + * method</em> directly in the visitor interface since a Java SE 8
   19.17 + * language feature cannot be used to this version of the API since
   19.18 + * this version is required to be runnable on Java SE 7
   19.19 + * implementations.  Future versions of the API that are only required
   19.20 + * to run on Java SE 8 and later may take advantage of default methods
   19.21 + * in this situation.
   19.22 + *
   19.23   * @param <R> the return type of this visitor's methods.  Use {@code Void}
   19.24   *             for visitors that do not need to return results.
   19.25   * @param <P> the type of the additional parameter to this visitor's methods.  Use {@code Void}
    20.1 --- a/src/share/classes/javax/lang/model/util/SimpleElementVisitor7.java	Wed Jan 23 13:27:24 2013 -0800
    20.2 +++ b/src/share/classes/javax/lang/model/util/SimpleElementVisitor7.java	Wed Jan 23 20:11:07 2013 -0800
    20.3 @@ -1,5 +1,5 @@
    20.4  /*
    20.5 - * Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
    20.6 + * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
    20.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    20.8   *
    20.9   * This code is free software; you can redistribute it and/or modify it
   20.10 @@ -62,6 +62,15 @@
   20.11   * visit method in question.  When the new visitor is introduced, all
   20.12   * or portions of this visitor may be deprecated.
   20.13   *
   20.14 + * <p>Note that adding a default implementation of a new visit method
   20.15 + * in a visitor class will occur instead of adding a <em>default
   20.16 + * method</em> directly in the visitor interface since a Java SE 8
   20.17 + * language feature cannot be used to this version of the API since
   20.18 + * this version is required to be runnable on Java SE 7
   20.19 + * implementations.  Future versions of the API that are only required
   20.20 + * to run on Java SE 8 and later may take advantage of default methods
   20.21 + * in this situation.
   20.22 + *
   20.23   * @param <R> the return type of this visitor's methods.  Use {@code Void}
   20.24   *             for visitors that do not need to return results.
   20.25   * @param <P> the type of the additional parameter to this visitor's methods.  Use {@code Void}
    21.1 --- a/src/share/classes/javax/lang/model/util/SimpleElementVisitor8.java	Wed Jan 23 13:27:24 2013 -0800
    21.2 +++ b/src/share/classes/javax/lang/model/util/SimpleElementVisitor8.java	Wed Jan 23 20:11:07 2013 -0800
    21.3 @@ -1,5 +1,5 @@
    21.4  /*
    21.5 - * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
    21.6 + * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
    21.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    21.8   *
    21.9   * This code is free software; you can redistribute it and/or modify it
   21.10 @@ -61,6 +61,15 @@
   21.11   * visit method in question.  When the new visitor is introduced, all
   21.12   * or portions of this visitor may be deprecated.
   21.13   *
   21.14 + * <p>Note that adding a default implementation of a new visit method
   21.15 + * in a visitor class will occur instead of adding a <em>default
   21.16 + * method</em> directly in the visitor interface since a Java SE 8
   21.17 + * language feature cannot be used to this version of the API since
   21.18 + * this version is required to be runnable on Java SE 7
   21.19 + * implementations.  Future versions of the API that are only required
   21.20 + * to run on Java SE 8 and later may take advantage of default methods
   21.21 + * in this situation.
   21.22 + *
   21.23   * @param <R> the return type of this visitor's methods.  Use {@code Void}
   21.24   *             for visitors that do not need to return results.
   21.25   * @param <P> the type of the additional parameter to this visitor's methods.  Use {@code Void}
    22.1 --- a/src/share/classes/javax/lang/model/util/SimpleTypeVisitor6.java	Wed Jan 23 13:27:24 2013 -0800
    22.2 +++ b/src/share/classes/javax/lang/model/util/SimpleTypeVisitor6.java	Wed Jan 23 20:11:07 2013 -0800
    22.3 @@ -1,5 +1,5 @@
    22.4  /*
    22.5 - * Copyright (c) 2005, 2011, Oracle and/or its affiliates. All rights reserved.
    22.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
    22.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    22.8   *
    22.9   * This code is free software; you can redistribute it and/or modify it
   22.10 @@ -64,6 +64,15 @@
   22.11   * visit method in question.  When the new visitor is introduced, all
   22.12   * or portions of this visitor may be deprecated.
   22.13   *
   22.14 + * <p>Note that adding a default implementation of a new visit method
   22.15 + * in a visitor class will occur instead of adding a <em>default
   22.16 + * method</em> directly in the visitor interface since a Java SE 8
   22.17 + * language feature cannot be used to this version of the API since
   22.18 + * this version is required to be runnable on Java SE 7
   22.19 + * implementations.  Future versions of the API that are only required
   22.20 + * to run on Java SE 8 and later may take advantage of default methods
   22.21 + * in this situation.
   22.22 + *
   22.23   * @param <R> the return type of this visitor's methods.  Use {@link
   22.24   *            Void} for visitors that do not need to return results.
   22.25   * @param <P> the type of the additional parameter to this visitor's
    23.1 --- a/src/share/classes/javax/lang/model/util/SimpleTypeVisitor7.java	Wed Jan 23 13:27:24 2013 -0800
    23.2 +++ b/src/share/classes/javax/lang/model/util/SimpleTypeVisitor7.java	Wed Jan 23 20:11:07 2013 -0800
    23.3 @@ -1,5 +1,5 @@
    23.4  /*
    23.5 - * Copyright (c) 2010, 2011, Oracle and/or its affiliates. All rights reserved.
    23.6 + * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
    23.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    23.8   *
    23.9   * This code is free software; you can redistribute it and/or modify it
   23.10 @@ -61,6 +61,15 @@
   23.11   * visit method in question.  When the new visitor is introduced, all
   23.12   * or portions of this visitor may be deprecated.
   23.13   *
   23.14 + * <p>Note that adding a default implementation of a new visit method
   23.15 + * in a visitor class will occur instead of adding a <em>default
   23.16 + * method</em> directly in the visitor interface since a Java SE 8
   23.17 + * language feature cannot be used to this version of the API since
   23.18 + * this version is required to be runnable on Java SE 7
   23.19 + * implementations.  Future versions of the API that are only required
   23.20 + * to run on Java SE 8 and later may take advantage of default methods
   23.21 + * in this situation.
   23.22 + *
   23.23   * @param <R> the return type of this visitor's methods.  Use {@link
   23.24   *            Void} for visitors that do not need to return results.
   23.25   * @param <P> the type of the additional parameter to this visitor's
    24.1 --- a/src/share/classes/javax/lang/model/util/SimpleTypeVisitor8.java	Wed Jan 23 13:27:24 2013 -0800
    24.2 +++ b/src/share/classes/javax/lang/model/util/SimpleTypeVisitor8.java	Wed Jan 23 20:11:07 2013 -0800
    24.3 @@ -1,5 +1,5 @@
    24.4  /*
    24.5 - * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
    24.6 + * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
    24.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    24.8   *
    24.9   * This code is free software; you can redistribute it and/or modify it
   24.10 @@ -60,6 +60,15 @@
   24.11   * visit method in question.  When the new visitor is introduced, all
   24.12   * or portions of this visitor may be deprecated.
   24.13   *
   24.14 + * <p>Note that adding a default implementation of a new visit method
   24.15 + * in a visitor class will occur instead of adding a <em>default
   24.16 + * method</em> directly in the visitor interface since a Java SE 8
   24.17 + * language feature cannot be used to this version of the API since
   24.18 + * this version is required to be runnable on Java SE 7
   24.19 + * implementations.  Future versions of the API that are only required
   24.20 + * to run on Java SE 8 and later may take advantage of default methods
   24.21 + * in this situation.
   24.22 + *
   24.23   * @param <R> the return type of this visitor's methods.  Use {@link
   24.24   *            Void} for visitors that do not need to return results.
   24.25   * @param <P> the type of the additional parameter to this visitor's
    25.1 --- a/src/share/classes/javax/lang/model/util/TypeKindVisitor6.java	Wed Jan 23 13:27:24 2013 -0800
    25.2 +++ b/src/share/classes/javax/lang/model/util/TypeKindVisitor6.java	Wed Jan 23 20:11:07 2013 -0800
    25.3 @@ -1,5 +1,5 @@
    25.4  /*
    25.5 - * Copyright (c) 2005, 2012, Oracle and/or its affiliates. All rights reserved.
    25.6 + * Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
    25.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    25.8   *
    25.9   * This code is free software; you can redistribute it and/or modify it
   25.10 @@ -63,6 +63,15 @@
   25.11   * method in question.  When the new visitor is introduced, all or
   25.12   * portions of this visitor may be deprecated.
   25.13   *
   25.14 + * <p>Note that adding a default implementation of a new visit method
   25.15 + * in a visitor class will occur instead of adding a <em>default
   25.16 + * method</em> directly in the visitor interface since a Java SE 8
   25.17 + * language feature cannot be used to this version of the API since
   25.18 + * this version is required to be runnable on Java SE 7
   25.19 + * implementations.  Future versions of the API that are only required
   25.20 + * to run on Java SE 8 and later may take advantage of default methods
   25.21 + * in this situation.
   25.22 + *
   25.23   * @param <R> the return type of this visitor's methods.  Use {@link
   25.24   *            Void} for visitors that do not need to return results.
   25.25   * @param <P> the type of the additional parameter to this visitor's
    26.1 --- a/src/share/classes/javax/lang/model/util/TypeKindVisitor7.java	Wed Jan 23 13:27:24 2013 -0800
    26.2 +++ b/src/share/classes/javax/lang/model/util/TypeKindVisitor7.java	Wed Jan 23 20:11:07 2013 -0800
    26.3 @@ -1,5 +1,5 @@
    26.4  /*
    26.5 - * Copyright (c) 2010, 2012, Oracle and/or its affiliates. All rights reserved.
    26.6 + * Copyright (c) 2010, 2013, Oracle and/or its affiliates. All rights reserved.
    26.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    26.8   *
    26.9   * This code is free software; you can redistribute it and/or modify it
   26.10 @@ -63,6 +63,15 @@
   26.11   * method in question.  When the new visitor is introduced, all or
   26.12   * portions of this visitor may be deprecated.
   26.13   *
   26.14 + * <p>Note that adding a default implementation of a new visit method
   26.15 + * in a visitor class will occur instead of adding a <em>default
   26.16 + * method</em> directly in the visitor interface since a Java SE 8
   26.17 + * language feature cannot be used to this version of the API since
   26.18 + * this version is required to be runnable on Java SE 7
   26.19 + * implementations.  Future versions of the API that are only required
   26.20 + * to run on Java SE 8 and later may take advantage of default methods
   26.21 + * in this situation.
   26.22 + *
   26.23   * @param <R> the return type of this visitor's methods.  Use {@link
   26.24   *            Void} for visitors that do not need to return results.
   26.25   * @param <P> the type of the additional parameter to this visitor's
    27.1 --- a/src/share/classes/javax/lang/model/util/TypeKindVisitor8.java	Wed Jan 23 13:27:24 2013 -0800
    27.2 +++ b/src/share/classes/javax/lang/model/util/TypeKindVisitor8.java	Wed Jan 23 20:11:07 2013 -0800
    27.3 @@ -1,5 +1,5 @@
    27.4  /*
    27.5 - * Copyright (c) 2011, 2012, Oracle and/or its affiliates. All rights reserved.
    27.6 + * Copyright (c) 2011, 2013, Oracle and/or its affiliates. All rights reserved.
    27.7   * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
    27.8   *
    27.9   * This code is free software; you can redistribute it and/or modify it
   27.10 @@ -63,6 +63,15 @@
   27.11   * method in question.  When the new visitor is introduced, all or
   27.12   * portions of this visitor may be deprecated.
   27.13   *
   27.14 + * <p>Note that adding a default implementation of a new visit method
   27.15 + * in a visitor class will occur instead of adding a <em>default
   27.16 + * method</em> directly in the visitor interface since a Java SE 8
   27.17 + * language feature cannot be used to this version of the API since
   27.18 + * this version is required to be runnable on Java SE 7
   27.19 + * implementations.  Future versions of the API that are only required
   27.20 + * to run on Java SE 8 and later may take advantage of default methods
   27.21 + * in this situation.
   27.22 + *
   27.23   * @param <R> the return type of this visitor's methods.  Use {@link
   27.24   *            Void} for visitors that do not need to return results.
   27.25   * @param <P> the type of the additional parameter to this visitor's

mercurial