# Package org.aspectj.lang.reflect

Interface Summary
Interface | Description
--- | ---
Advice | Runtime representation of an advice declaration inside an aspect
AjType<T> | The runtime representation of a type (Aspect, Class, Interface, Annotation, Enum, or Array) in an AspectJ program.
DeclareAnnotation | The AspectJ runtime representation of a declare annotation member in an aspect.
DeclareErrorOrWarning | AspectJ runtime representation of a declare error or declare warning member in an aspect.
DeclareParents | A declare parents member defined inside an aspect
DeclarePrecedence | AspectJ runtime representation of a declare precedence statement as declared in an aspect.
DeclareSoft | AspectJ runtime representation of a declare soft member within an aspect.
InterTypeConstructorDeclaration | Runtime representation of an inter-type constructor member declared within an aspect.
InterTypeDeclaration | Represents an inter-type method, field, or constructor declared in an aspect.
InterTypeFieldDeclaration | Represents an inter-type field declaration declared in an aspect.
InterTypeMethodDeclaration | Represents an inter-type method declaration member within an aspect.
PerClause | AspectJ runtime representation of the per-clause associated with an aspect.
Pointcut | AspectJ runtime representation of a pointcut member inside a class or aspect.
PointcutBasedPerClause | Representation of a pointcut based per-clause associated with an aspect (perthis/target/cflow/cflowbelow)
PointcutExpression | Represents an anonymous pointcut expression as used in pointcuts, advice declarations, declares, and per-clauses
SignaturePattern | AspectJ runtime representation of a signature pattern as used in various aspect members (for example, declare @method, declare @field).
TypePattern | AspectJ runtime representation of a type pattern as used in member declarations such as declare parents.
TypePatternBasedPerClause | AspectJ runtime representation of a type pattern based per-clause associated with an aspect (pertypewithin).

Class Summary
Class | Description
--- | ---
AjTypeSystem | This is the anchor for the AspectJ runtime type system.

Enum Summary
Enum | Description
--- | ---
AdviceKind | The different kinds of advice in AspectJ
DeclareAnnotation.Kind |
PerClauseKind | The different per-clauses (aspect instantiation models) supported by AspectJ

Exception Summary
Exception | Description
--- | ---
NoSuchAdviceException | Thrown when AjType.getDeclaredAdvice is called with an advice name and no matching advice declaration can be found.
NoSuchPointcutException | Thrown when AjType.getDeclaredPointcut is called with a pointcut name, and no matching pointcut declaration can be found.