Class AdviceDeclaration
java.lang.Object
org.aspectj.org.eclipse.jdt.core.dom.ASTNode
org.aspectj.org.eclipse.jdt.core.dom.BodyDeclaration
org.aspectj.org.eclipse.jdt.core.dom.AdviceDeclaration
- Direct Known Subclasses:
AfterAdviceDeclaration
,AroundAdviceDeclaration
,BeforeAdviceDeclaration
AdviceDeclaration DOM AST node.
Source code forked from MethodDeclaration.
An abstract AdviceDeclaration is just like a MethodDeclaration,
but without a name or return type.
- Author:
- ajh02
-
Field Summary
Modifier and TypeFieldDescriptionstatic final ChildPropertyDescriptor
The "body" structural property of this node type.static final ChildPropertyDescriptor
The "javadoc" structural property of this node type.protected org.aspectj.org.eclipse.jdt.core.dom.ASTNode.NodeList
The parameter declarations (element type:SingleVariableDeclaration
).static final ChildListPropertyDescriptor
The "parameters" structural property of this node type).static final ChildPropertyDescriptor
protected static List
A list of property descriptors (element type:StructuralPropertyDescriptor
), or null if uninitialized.protected static List
A list of property descriptors (element type:StructuralPropertyDescriptor
), or null if uninitialized.static final ChildListPropertyDescriptor
The "thrownExceptions" structural property of this node type).protected org.aspectj.org.eclipse.jdt.core.dom.ASTNode.NodeList
The list of thrown exception names (element type:Name
).Fields inherited from class org.aspectj.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, CASE_DEFAULT_EXPRESSION, 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, ENHANCED_FOR_WITH_RECORD_PATTERN, ENUM_CONSTANT_DECLARATION, ENUM_DECLARATION, EXPORTS_DIRECTIVE, EXPRESSION_METHOD_REFERENCE, EXPRESSION_STATEMENT, FIELD_ACCESS, FIELD_DECLARATION, FOR_STATEMENT, GUARDED_PATTERN, IF_STATEMENT, IMPORT_DECLARATION, INFIX_EXPRESSION, INITIALIZER, INSTANCEOF_EXPRESSION, INTERSECTION_TYPE, JAVADOC, JAVADOC_REGION, JAVADOC_TEXT_ELEMENT, 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, MODULE_QUALIFIED_NAME, NAME_QUALIFIED_TYPE, NORMAL_ANNOTATION, NULL_LITERAL, NULL_PATTERN, NUMBER_LITERAL, OPENS_DIRECTIVE, ORIGINAL, PACKAGE_DECLARATION, PARAMETERIZED_TYPE, PARENTHESIZED_EXPRESSION, PATTERN_INSTANCEOF_EXPRESSION, POSTFIX_EXPRESSION, PREFIX_EXPRESSION, PRIMITIVE_TYPE, PROTECT, PROVIDES_DIRECTIVE, QUALIFIED_NAME, QUALIFIED_TYPE, RECORD_DECLARATION, RECORD_PATTERN, RECOVERED, REQUIRES_DIRECTIVE, RETURN_STATEMENT, SIMPLE_NAME, SIMPLE_TYPE, SINGLE_MEMBER_ANNOTATION, SINGLE_VARIABLE_DECLARATION, STRING_FRAGMENT, STRING_LITERAL, STRING_TEMPLATE_COMPONENT, STRING_TEMPLATE_EXPRESSION, SUPER_CONSTRUCTOR_INVOCATION, SUPER_FIELD_ACCESS, SUPER_METHOD_INVOCATION, SUPER_METHOD_REFERENCE, SWITCH_CASE, SWITCH_EXPRESSION, SWITCH_STATEMENT, SYNCHRONIZED_STATEMENT, TAG_ELEMENT, TAG_PROPERTY, TEXT_BLOCK, TEXT_ELEMENT, THIS_EXPRESSION, THROW_STATEMENT, TRY_STATEMENT, TYPE_DECLARATION, TYPE_DECLARATION_STATEMENT, TYPE_LITERAL, TYPE_METHOD_REFERENCE, TYPE_PARAMETER, TYPE_PATTERN, UNION_TYPE, USES_DIRECTIVE, VARIABLE_DECLARATION_EXPRESSION, VARIABLE_DECLARATION_FRAGMENT, VARIABLE_DECLARATION_STATEMENT, WHILE_STATEMENT, WILDCARD_TYPE, YIELD_STATEMENT
-
Method Summary
Modifier and TypeMethodDescriptiongetBody()
Returns the body of this method declaration, ornull
if this method has no body.Returns the live ordered list of method parameter declarations for this method declaration.static List
propertyDescriptors
(int apiLevel) Returns a list of structural property descriptors for this node type.void
Sets or clears the body of this method declaration.void
setPointcut
(PointcutDesignator pointcut) Returns the live ordered list of thrown exception names in this method declaration.Methods inherited from class org.aspectj.org.eclipse.jdt.core.dom.BodyDeclaration
getJavadoc, getJavadocProperty, getModifiers, getModifiersProperty, modifiers, setJavadoc, setModifiers
Methods inherited from class org.aspectj.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 Details
-
JAVADOC_PROPERTY
The "javadoc" structural property of this node type.- Since:
- 3.0
-
PARAMETERS_PROPERTY
The "parameters" structural property of this node type).- Since:
- 3.0
-
POINTCUT_PROPERTY
-
THROWN_EXCEPTIONS_PROPERTY
The "thrownExceptions" structural property of this node type).- Since:
- 3.0
-
BODY_PROPERTY
The "body" structural property of this node type.- Since:
- 3.0
-
PROPERTY_DESCRIPTORS_2_0
A list of property descriptors (element type:StructuralPropertyDescriptor
), or null if uninitialized.- Since:
- 3.0
-
PROPERTY_DESCRIPTORS_3_0
A list of property descriptors (element type:StructuralPropertyDescriptor
), or null if uninitialized.- Since:
- 3.1
-
parameters
protected org.aspectj.org.eclipse.jdt.core.dom.ASTNode.NodeList parametersThe parameter declarations (element type:SingleVariableDeclaration
). Defaults to an empty list. -
thrownExceptions
protected org.aspectj.org.eclipse.jdt.core.dom.ASTNode.NodeList thrownExceptionsThe list of thrown exception names (element type:Name
). Defaults to an empty list.
-
-
Method Details
-
propertyDescriptors
Returns a list of structural property descriptors for this node type. Clients must not modify the result.- Parameters:
apiLevel
- the API level; one of the AST.JLS* constants- Returns:
- a list of property descriptors (element type:
StructuralPropertyDescriptor
) - Since:
- 3.0
-
getPointcut
-
setPointcut
-
parameters
Returns the live ordered list of method parameter declarations for this method declaration.- Returns:
- the live list of method parameter declarations
(element type:
SingleVariableDeclaration
)
-
thrownExceptions
Returns the live ordered list of thrown exception names in this method declaration.- Returns:
- the live list of exception names
(element type:
Name
)
-
getBody
Returns the body of this method declaration, ornull
if this method has no body.Note that there is a subtle difference between having no body and having an empty body ("{}").
- Returns:
- the method body, or
null
if this method has no body
-
setBody
Sets or clears the body of this method declaration.Note that there is a subtle difference between having no body (as in
"void foo();"
) and having an empty body (as in "void foo() {}"). Abstract methods, and methods declared in interfaces, have no body. Non-abstract methods, and all constructors, have a body.- Parameters:
body
- the block node, ornull
if there is none- Throws:
IllegalArgumentException
- if:- the node belongs to a different AST
- the node already has a parent
- a cycle in would be created
-