8014249: Add Modifer.parameterModifiers()
Reviewed-by: mduigou, mchung
This commit is contained in:
parent
6622dd4edf
commit
fdf90eaba2
@ -350,8 +350,19 @@ public class Modifier {
|
||||
return (mod & MANDATED) != 0;
|
||||
}
|
||||
|
||||
// Note on the FOO_MODIFIERS fields and fooModifiers() methods:
|
||||
// the sets of modifiers are not guaranteed to be constants
|
||||
// across time and Java SE releases. Therefore, it would not be
|
||||
// appropriate to expose an external interface to this information
|
||||
// that would allow the values to be treated as Java-level
|
||||
// constants since the values could be constant folded and updates
|
||||
// to the sets of modifiers missed. Thus, the fooModifiers()
|
||||
// methods return an unchanging values for a given release, but a
|
||||
// value that can potentially change over time.
|
||||
|
||||
/**
|
||||
* See JLSv3 section 8.1.1.
|
||||
* The Java source modifiers that can be applied to a class.
|
||||
* @jls 8.1.1 Class Modifiers
|
||||
*/
|
||||
private static final int CLASS_MODIFIERS =
|
||||
Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE |
|
||||
@ -359,7 +370,8 @@ public class Modifier {
|
||||
Modifier.STRICT;
|
||||
|
||||
/**
|
||||
* See JLSv3 section 9.1.1.
|
||||
* The Java source modifiers that can be applied to an interface.
|
||||
* @jls 9.1.1 Interface Modifiers
|
||||
*/
|
||||
private static final int INTERFACE_MODIFIERS =
|
||||
Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE |
|
||||
@ -367,13 +379,15 @@ public class Modifier {
|
||||
|
||||
|
||||
/**
|
||||
* See JLSv3 section 8.8.3.
|
||||
* The Java source modifiers that can be applied to a constructor.
|
||||
* @jls 8.8.3 Constructor Modifiers
|
||||
*/
|
||||
private static final int CONSTRUCTOR_MODIFIERS =
|
||||
Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE;
|
||||
|
||||
/**
|
||||
* See JLSv3 section 8.4.3.
|
||||
* The Java source modifiers that can be applied to a method.
|
||||
* @jls8.4.3 Method Modifiers
|
||||
*/
|
||||
private static final int METHOD_MODIFIERS =
|
||||
Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE |
|
||||
@ -381,13 +395,21 @@ public class Modifier {
|
||||
Modifier.SYNCHRONIZED | Modifier.NATIVE | Modifier.STRICT;
|
||||
|
||||
/**
|
||||
* See JLSv3 section 8.3.1.
|
||||
* The Java source modifiers that can be applied to a field.
|
||||
* @jls 8.3.1 Field Modifiers
|
||||
*/
|
||||
private static final int FIELD_MODIFIERS =
|
||||
Modifier.PUBLIC | Modifier.PROTECTED | Modifier.PRIVATE |
|
||||
Modifier.STATIC | Modifier.FINAL | Modifier.TRANSIENT |
|
||||
Modifier.VOLATILE;
|
||||
|
||||
/**
|
||||
* The Java source modifiers that can be applied to a method or constructor parameter.
|
||||
* @jls 8.4.1 Formal Parameters
|
||||
*/
|
||||
private static final int PARAMETER_MODIFIERS =
|
||||
Modifier.FINAL;
|
||||
|
||||
/**
|
||||
*
|
||||
*/
|
||||
@ -411,7 +433,7 @@ public class Modifier {
|
||||
* Return an {@code int} value OR-ing together the source language
|
||||
* modifiers that can be applied to an interface.
|
||||
* @return an {@code int} value OR-ing together the source language
|
||||
* modifiers that can be applied to an inteface.
|
||||
* modifiers that can be applied to an interface.
|
||||
*
|
||||
* @jls 9.1.1 Interface Modifiers
|
||||
* @since 1.7
|
||||
@ -446,7 +468,6 @@ public class Modifier {
|
||||
return METHOD_MODIFIERS;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Return an {@code int} value OR-ing together the source language
|
||||
* modifiers that can be applied to a field.
|
||||
@ -459,4 +480,17 @@ public class Modifier {
|
||||
public static int fieldModifiers() {
|
||||
return FIELD_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;
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user