The substance of the change looks good to me. Why are "JLS section 8.1.1" comments used in some places and @jls tags (which I prefer since they are links) in other places?
Mike On May 8 2013, at 13:20 , Joe Darcy wrote: > Hello, > > Please review my changes to address > > JDK-8014249 Add Modifer.parameterModifiers() > > Diff below. > > The motivation is that since we now have a reflective model of parameters > (JDK-8004729), the java.lang.reflect.Modifier class should provide a > parameterModifiers method similar to other "fooModifers" methods already in > the class (JDK-6261502). > > Thanks, > > -Joe > > diff -r 2fba6ae13ed8 src/share/classes/java/lang/reflect/Modifier.java > --- a/src/share/classes/java/lang/reflect/Modifier.java Tue Apr 30 > 12:32:49 2013 -0700 > +++ b/src/share/classes/java/lang/reflect/Modifier.java Wed May 08 > 13:16:22 2013 -0700 > @@ -351,7 +351,7 @@ > } > > /** > - * See JLSv3 section 8.1.1. > + * See JLS section 8.1.1. > */ > private static final int CLASS_MODIFIERS = > Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE | > @@ -359,7 +359,7 @@ > Modifier.STRICT; > > /** > - * See JLSv3 section 9.1.1. > + * See JLS section 9.1.1. > */ > private static final int INTERFACE_MODIFIERS = > Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE | > @@ -367,13 +367,13 @@ > > > /** > - * See JLSv3 section 8.8.3. > + * See JLS section 8.8.3. > */ > private static final int CONSTRUCTOR_MODIFIERS = > Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE; > > /** > - * See JLSv3 section 8.4.3. > + * See JLS section 8.4.3. > */ > private static final int METHOD_MODIFIERS = > Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE | > @@ -381,7 +381,7 @@ > Modifier.SYNCHRONIZED | Modifier.NATIVE | Modifier.STRICT; > > /** > - * See JLSv3 section 8.3.1. > + * See JLS section 8.3.1. > */ > private static final int FIELD_MODIFIERS = > Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE | > @@ -389,6 +389,12 @@ > Modifier.VOLATILE; > > /** > + * See JLS section 8.4.1. > + */ > + private static final int PARAMETER_MODIFIERS = > + Modifier.FINAL; > + > + /** > * > */ > static final int ACCESS_MODIFIERS = > @@ -446,6 +452,18 @@ > return METHOD_MODIFIERS; > } > > + /** > + * Return an {@code int} value OR-ing together the source language > + * modifiers that can be applied to a parameter. > + * @return an {@code int} value OR-ing together the source language > + * modifiers that can be applied to a parameter. > + * > + * @jls 8.4.1 Formal Parameters > + * @since 1.8 > + */ > + public static int parameterModifiers() { > + return PARAMETER_MODIFIERS; > + } > > /** > * Return an {@code int} value OR-ing together the source language >