JDK 9 RFR of JDK-8176266: Mae visitUnknown specification more explicit
Jan Lahoda
jan.lahoda at oracle.com
Tue Mar 7 09:49:28 UTC 2017
Seems OK to me.
Jan
On 7.3.2017 10:27, joe darcy wrote:
> Hello,
>
> The various visitUnknown methods in the javax.lang.model API do not
> explicitly state they pass down their arguments to the new exception.
>
> This detail should be made explicit.
>
> Please review the patch below.
>
> Thanks,
>
> -Joe
>
>
> diff -r 099bb085017a
> src/java.compiler/share/classes/javax/lang/model/element/ModuleElement.java
> ---
> a/src/java.compiler/share/classes/javax/lang/model/element/ModuleElement.java
> Mon Mar 06 08:57:41 2017 -0800
> +++
> b/src/java.compiler/share/classes/javax/lang/model/element/ModuleElement.java
> Tue Mar 07 01:27:26 2017 -0800
> @@ -251,7 +251,7 @@
> * @param p a visitor-specified parameter
> * @return a visitor-specified result
> * @throws UnknownDirectiveException a visitor implementation
> may optionally throw this exception
> - * @implSpec This implementation throws {@code
> UnknownDirectiveException}.
> + * @implSpec This implementation throws {@code new
> UnknownDirectiveException(d, p)}.
> */
> default R visitUnknown(Directive d, P p) {
> throw new UnknownDirectiveException(d, p);
> diff -r 099bb085017a
> src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java
> ---
> a/src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java
> Mon Mar 06 08:57:41 2017 -0800
> +++
> b/src/java.compiler/share/classes/javax/lang/model/util/AbstractAnnotationValueVisitor6.java
> Tue Mar 07 01:27:26 2017 -0800
> @@ -106,7 +106,7 @@
> *
> * @implSpec The default implementation of this method in {@code
> * AbstractAnnotationValueVisitor6} will always throw {@code
> - * UnknownAnnotationValueException}. This behavior is not
> + * new UnknownAnnotationValueException(av, p)}. This behavior is not
> * required of a subclass.
> *
> * @param av {@inheritDoc}
> diff -r 099bb085017a
> src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor6.java
> ---
> a/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor6.java
> Mon Mar 06 08:57:41 2017 -0800
> +++
> b/src/java.compiler/share/classes/javax/lang/model/util/AbstractElementVisitor6.java
> Tue Mar 07 01:27:26 2017 -0800
> @@ -111,7 +111,7 @@
> *
> * @implSpec The default implementation of this method in
> * {@code AbstractElementVisitor6} will always throw
> - * {@code UnknownElementException}.
> + * {@code new UnknownElementException(e, p)}.
> * This behavior is not required of a subclass.
> *
> * @param e {@inheritDoc}
> diff -r 099bb085017a
> src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java
> ---
> a/src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java
> Mon Mar 06 08:57:41 2017 -0800
> +++
> b/src/java.compiler/share/classes/javax/lang/model/util/AbstractTypeVisitor6.java
> Tue Mar 07 01:27:26 2017 -0800
> @@ -142,7 +142,7 @@
> *
> * @implSpec The default implementation of this method in {@code
> * AbstractTypeVisitor6} will always throw {@code
> - * UnknownTypeException}. This behavior is not required of a
> + * new UnknownTypeException(t, p)}. This behavior is not required of a
> * subclass.
> *
> * @param t {@inheritDoc}
>
More information about the compiler-dev
mailing list