Package org.eclipse.jdt.core.dom
Class Modifier
- java.lang.Object
-
- org.eclipse.jdt.core.dom.ASTNode
-
- org.eclipse.jdt.core.dom.Modifier
-
- All Implemented Interfaces:
IExtendedModifier
public final class Modifier extends ASTNode implements IExtendedModifier
Modifier node.Modifier: public protected private static abstract final native synchronized transient volatile strictfp default
The numeric values of these flags match the ones for class files as described in the Java Virtual Machine Specification (except for
DEFAULT
). Note that the Java model classFlags
also provides the same constants as this class.- Since:
- 2.0
- Restriction:
- This class is not intended to be instantiated by clients.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Modifier.ModifierKeyword
Modifier keywords (typesafe enumeration).
-
Field Summary
Fields Modifier and Type Field Description static int
ABSTRACT
"abstract" modifier constant (bit mask).static int
DEFAULT
"default" modifier constant (bit mask) (added in JLS8 API).static int
FINAL
"final" modifier constant (bit mask).static SimplePropertyDescriptor
KEYWORD_PROPERTY
The "keyword" structural property of this node type (type:Modifier.ModifierKeyword
).static int
NATIVE
"native" modifier constant (bit mask).static int
NONE
Modifier constant (bit mask, value 0) indicating no modifiers.static int
PRIVATE
"private" modifier constant (bit mask).static int
PROTECTED
"protected" modifier constant (bit mask).static int
PUBLIC
"public" modifier constant (bit mask).static int
STATIC
"static" modifier constant (bit mask).static int
STRICTFP
"strictfp" modifier constant (bit mask).static int
SYNCHRONIZED
"synchronized" modifier constant (bit mask).static int
TRANSIENT
"transient" modifier constant (bit mask).static int
VOLATILE
"volatile" modifier constant (bit mask).-
Fields inherited from class org.eclipse.jdt.core.dom.ASTNode
ANNOTATION_TYPE_DECLARATION, ANNOTATION_TYPE_MEMBER_DECLARATION, ANONYMOUS_CLASS_DECLARATION, ARRAY_ACCESS, ARRAY_CREATION, ARRAY_INITIALIZER, ARRAY_TYPE, ASSERT_STATEMENT, ASSIGNMENT, BLOCK, BLOCK_COMMENT, BOOLEAN_LITERAL, BREAK_STATEMENT, CAST_EXPRESSION, CATCH_CLAUSE, CHARACTER_LITERAL, CLASS_INSTANCE_CREATION, COMPILATION_UNIT, CONDITIONAL_EXPRESSION, CONSTRUCTOR_INVOCATION, CONTINUE_STATEMENT, CREATION_REFERENCE, DIMENSION, DO_STATEMENT, EMPTY_STATEMENT, ENHANCED_FOR_STATEMENT, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPORTS_DIRECTIVE, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, LABELED_STATEMENT, LAMBDA_EXPRESSION, LINE_COMMENT, MALFORMED, MARKER_ANNOTATION, MEMBER_REF, MEMBER_VALUE_PAIR, METHOD_DECLARATION, METHOD_INVOCATION, METHOD_REF, METHOD_REF_PARAMETER, MODIFIER, MODULE_DECLARATION, MODULE_MODIFIER, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NUMBER_LITERAL, OPENS_DIRECTIVE, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, PROVIDES_DIRECTIVE, QUALIFIED_NAME, QUALIFIED_TYPE, RECORD_DECLARATION, RECOVERED, REQUIRES_DIRECTIVE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_LITERAL, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SUPER_METHOD_REFERENCE, SWITCH_CASE, SWITCH_EXPRESSION, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TEXT_BLOCK, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, UNION_TYPE, USES_DIRECTIVE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, YIELD_STATEMENT
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Modifier.ModifierKeyword
getKeyword()
Returns the modifier keyword of this modifier node.boolean
isAbstract()
Answer true if the receiver is the abstract modifier, false otherwise.static boolean
isAbstract(int flags)
Returns whether the given flags includes the "abstract" modifier.boolean
isAnnotation()
Returns whether this extended modifier is an annotation.boolean
isDefault()
Answer true if the receiver is the default modifier, false otherwise.static boolean
isDefault(int flags)
Returns whether the given flags includes the "default" modifier.boolean
isFinal()
Answer true if the receiver is the final modifier, false otherwise.static boolean
isFinal(int flags)
Returns whether the given flags includes the "final" modifier.boolean
isModifier()
Returns whether this extended modifier is a standard modifier.boolean
isNative()
Answer true if the receiver is the native modifier, false otherwise.static boolean
isNative(int flags)
Returns whether the given flags includes the "native" modifier.boolean
isPrivate()
Answer true if the receiver is the private modifier, false otherwise.static boolean
isPrivate(int flags)
Returns whether the given flags includes the "private" modifier.boolean
isProtected()
Answer true if the receiver is the protected modifier, false otherwise.static boolean
isProtected(int flags)
Returns whether the given flags includes the "protected" modifier.boolean
isPublic()
Answer true if the receiver is the public modifier, false otherwise.static boolean
isPublic(int flags)
Returns whether the given flags includes the "public" modifier.boolean
isStatic()
Answer true if the receiver is the static modifier, false otherwise.static boolean
isStatic(int flags)
Returns whether the given flags includes the "static" modifier.boolean
isStrictfp()
Answer true if the receiver is the strictfp modifier, false otherwise.static boolean
isStrictfp(int flags)
Returns whether the given flags includes the "strictfp" modifier.boolean
isSynchronized()
Answer true if the receiver is the synchronized modifier, false otherwise.static boolean
isSynchronized(int flags)
Returns whether the given flags includes the "synchronized" modifier.boolean
isTransient()
Answer true if the receiver is the transient modifier, false otherwise.static boolean
isTransient(int flags)
Returns whether the given flags includes the "transient" modifier.boolean
isVolatile()
Answer true if the receiver is the volatile modifier, false otherwise.static boolean
isVolatile(int flags)
Returns whether the given flags includes the "volatile" modifier.static List
propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type.void
setKeyword(Modifier.ModifierKeyword modifierKeyord)
Sets the modifier keyword of this modifier node.-
Methods inherited from class org.eclipse.jdt.core.dom.ASTNode
accept, copySubtree, copySubtrees, delete, equals, getAST, getFlags, getLength, getLocationInParent, getNodeType, getParent, getProperty, getRoot, getStartPosition, getStructuralProperty, hashCode, nodeClassForType, properties, setFlags, setProperty, setSourceRange, setStructuralProperty, structuralPropertiesForType, subtreeBytes, subtreeMatch, toString
-
-
-
-
Field Detail
-
ABSTRACT
public static final int ABSTRACT
"abstract" modifier constant (bit mask). Applicable to types and methods.- Since:
- 2.0
- See Also:
- Constant Field Values
-
FINAL
public static final int FINAL
"final" modifier constant (bit mask). Applicable to types, methods, fields, and variables.- Since:
- 2.0
- See Also:
- Constant Field Values
-
KEYWORD_PROPERTY
public static final SimplePropertyDescriptor KEYWORD_PROPERTY
The "keyword" structural property of this node type (type:Modifier.ModifierKeyword
).- Since:
- 3.0
-
NATIVE
public static final int NATIVE
"native" modifier constant (bit mask). Applicable only to methods.- Since:
- 2.0
- See Also:
- Constant Field Values
-
NONE
public static final int NONE
Modifier constant (bit mask, value 0) indicating no modifiers.- Since:
- 2.0
- See Also:
- Constant Field Values
-
PRIVATE
public static final int PRIVATE
"private" modifier constant (bit mask). Applicable to types, methods, constructors, and fields.- Since:
- 2.0
- See Also:
- Constant Field Values
-
PROTECTED
public static final int PROTECTED
"protected" modifier constant (bit mask). Applicable to types, methods, constructors, and fields.- Since:
- 2.0
- See Also:
- Constant Field Values
-
PUBLIC
public static final int PUBLIC
"public" modifier constant (bit mask). Applicable to types, methods, constructors, and fields.- Since:
- 2.0
- See Also:
- Constant Field Values
-
STATIC
public static final int STATIC
"static" modifier constant (bit mask). Applicable to types, methods, fields, and initializers.- Since:
- 2.0
- See Also:
- Constant Field Values
-
STRICTFP
public static final int STRICTFP
"strictfp" modifier constant (bit mask). Applicable to types and methods.- Since:
- 2.0
- See Also:
- Constant Field Values
-
SYNCHRONIZED
public static final int SYNCHRONIZED
"synchronized" modifier constant (bit mask). Applicable only to methods.- Since:
- 2.0
- See Also:
- Constant Field Values
-
TRANSIENT
public static final int TRANSIENT
"transient" modifier constant (bit mask). Applicable only to fields.- Since:
- 2.0
- See Also:
- Constant Field Values
-
VOLATILE
public static final int VOLATILE
"volatile" modifier constant (bit mask). Applicable only to fields.- Since:
- 2.0
- See Also:
- Constant Field Values
-
DEFAULT
public static final int DEFAULT
"default" modifier constant (bit mask) (added in JLS8 API). Applicable only to methods in interfaces (but not for annotation methods with a default value).Note that the value of this flag is internal and is not specified in the Java Virtual Machine Specification.
- Since:
- 3.10
- See Also:
- Constant Field Values
-
-
Method Detail
-
isAbstract
public static boolean isAbstract(int flags)
Returns whether the given flags includes the "abstract" modifier. Applicable to types and methods.- Parameters:
flags
- the modifier flags- Returns:
true
if theABSTRACT
bit is set, andfalse
otherwise- Since:
- 2.0
-
isFinal
public static boolean isFinal(int flags)
Returns whether the given flags includes the "final" modifier. Applicable to types, methods, fields, and variables.- Parameters:
flags
- the modifier flags- Returns:
true
if theFINAL
bit is set, andfalse
otherwise- Since:
- 2.0
-
isNative
public static boolean isNative(int flags)
Returns whether the given flags includes the "native" modifier. Applicable only to methods.- Parameters:
flags
- the modifier flags- Returns:
true
if theNATIVE
bit is set, andfalse
otherwise- Since:
- 2.0
-
isPrivate
public static boolean isPrivate(int flags)
Returns whether the given flags includes the "private" modifier. Applicable to types, methods, constructors, and fields.- Parameters:
flags
- the modifier flags- Returns:
true
if thePRIVATE
bit is set, andfalse
otherwise- Since:
- 2.0
-
isProtected
public static boolean isProtected(int flags)
Returns whether the given flags includes the "protected" modifier. Applicable to types, methods, constructors, and fields.- Parameters:
flags
- the modifier flags- Returns:
true
if thePROTECTED
bit is set, andfalse
otherwise- Since:
- 2.0
-
isPublic
public static boolean isPublic(int flags)
Returns whether the given flags includes the "public" modifier. Applicable to types, methods, constructors, and fields.- Parameters:
flags
- the modifier flags- Returns:
true
if thePUBLIC
bit is set, andfalse
otherwise- Since:
- 2.0
-
isStatic
public static boolean isStatic(int flags)
Returns whether the given flags includes the "static" modifier. Applicable to types, methods, fields, and initializers.- Parameters:
flags
- the modifier flags- Returns:
true
if theSTATIC
bit is set, andfalse
otherwise- Since:
- 2.0
-
isStrictfp
public static boolean isStrictfp(int flags)
Returns whether the given flags includes the "strictfp" modifier. Applicable to types and methods.- Parameters:
flags
- the modifier flags- Returns:
true
if theSTRICTFP
bit is set, andfalse
otherwise- Since:
- 2.0
-
isSynchronized
public static boolean isSynchronized(int flags)
Returns whether the given flags includes the "synchronized" modifier. Applicable only to methods.- Parameters:
flags
- the modifier flags- Returns:
true
if theSYNCHRONIZED
bit is set, andfalse
otherwise- Since:
- 2.0
-
isTransient
public static boolean isTransient(int flags)
Returns whether the given flags includes the "transient" modifier. Applicable only to fields.- Parameters:
flags
- the modifier flags- Returns:
true
if theTRANSIENT
bit is set, andfalse
otherwise- Since:
- 2.0
-
isVolatile
public static boolean isVolatile(int flags)
Returns whether the given flags includes the "volatile" modifier. Applicable only to fields.- Parameters:
flags
- the modifier flags- Returns:
true
if theVOLATILE
bit is set, andfalse
otherwise- Since:
- 2.0
-
isDefault
public static boolean isDefault(int flags)
Returns whether the given flags includes the "default" modifier. Applicable only to methods in interfaces.- Parameters:
flags
- the modifier flags- Returns:
true
if theDEFAULT
bit is set andfalse
otherwise- Since:
- 3.10
-
propertyDescriptors
public static List propertyDescriptors(int apiLevel)
Returns a list of structural property descriptors for this node type. Clients must not modify the result.- Parameters:
apiLevel
- the API level; one of theAST.JLS*
constants- Returns:
- a list of property descriptors (element type:
StructuralPropertyDescriptor
) - Since:
- 3.0
-
getKeyword
public Modifier.ModifierKeyword getKeyword()
Returns the modifier keyword of this modifier node.- Returns:
- the modifier keyword
- Since:
- 3.0
-
isAbstract
public boolean isAbstract()
Answer true if the receiver is the abstract modifier, false otherwise.- Returns:
- true if the receiver is the abstract modifier, false otherwise
- Since:
- 3.2
-
isAnnotation
public boolean isAnnotation()
Description copied from interface:IExtendedModifier
Returns whether this extended modifier is an annotation.- Specified by:
isAnnotation
in interfaceIExtendedModifier
- Returns:
true
if this is an annotation (instance of a subclass ofAnnotation
), andfalse
otherwise- See Also:
IExtendedModifier.isAnnotation()
-
isFinal
public boolean isFinal()
Answer true if the receiver is the final modifier, false otherwise.- Returns:
- true if the receiver is the final modifier, false otherwise
- Since:
- 3.2
-
isModifier
public boolean isModifier()
Description copied from interface:IExtendedModifier
Returns whether this extended modifier is a standard modifier.- Specified by:
isModifier
in interfaceIExtendedModifier
- Returns:
true
if this is a standard modifier (instance ofModifier
), andfalse
otherwise- See Also:
IExtendedModifier.isModifier()
-
isNative
public boolean isNative()
Answer true if the receiver is the native modifier, false otherwise.- Returns:
- true if the receiver is the native modifier, false otherwise
- Since:
- 3.2
-
isPrivate
public boolean isPrivate()
Answer true if the receiver is the private modifier, false otherwise.- Returns:
- true if the receiver is the private modifier, false otherwise
- Since:
- 3.2
-
isProtected
public boolean isProtected()
Answer true if the receiver is the protected modifier, false otherwise.- Returns:
- true if the receiver is the protected modifier, false otherwise
- Since:
- 3.2
-
isPublic
public boolean isPublic()
Answer true if the receiver is the public modifier, false otherwise.- Returns:
- true if the receiver is the public modifier, false otherwise
- Since:
- 3.2
-
isStatic
public boolean isStatic()
Answer true if the receiver is the static modifier, false otherwise.- Returns:
- true if the receiver is the static modifier, false otherwise
- Since:
- 3.2
-
isStrictfp
public boolean isStrictfp()
Answer true if the receiver is the strictfp modifier, false otherwise.- Returns:
- true if the receiver is the strictfp modifier, false otherwise
- Since:
- 3.2
-
isSynchronized
public boolean isSynchronized()
Answer true if the receiver is the synchronized modifier, false otherwise.- Returns:
- true if the receiver is the synchronized modifier, false otherwise
- Since:
- 3.2
-
isTransient
public boolean isTransient()
Answer true if the receiver is the transient modifier, false otherwise.- Returns:
- true if the receiver is the transient modifier, false otherwise
- Since:
- 3.2
-
isVolatile
public boolean isVolatile()
Answer true if the receiver is the volatile modifier, false otherwise.- Returns:
- true if the receiver is the volatile modifier, false otherwise
- Since:
- 3.2
-
isDefault
public boolean isDefault()
Answer true if the receiver is the default modifier, false otherwise.- Returns:
- true if the receiver is the default modifier, false otherwise
- Since:
- 3.10
-
setKeyword
public void setKeyword(Modifier.ModifierKeyword modifierKeyord)
Sets the modifier keyword of this modifier node.- Parameters:
modifierKeyord
- the modifier keyword- Throws:
IllegalArgumentException
- if the argument isnull
- Since:
- 3.0
-
-