## Package org.aspectj.lang.reflect

Interface Summary
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
AjTypeSystem: This is the anchor for the AspectJ runtime type system.

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

Exception Summary
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.