Kinds of join points.

Namespace:  PostSharp.CodeWeaver
Assembly:  PostSharp.Core (in PostSharp.Core.dll)

Syntax

Visual Basic (Declaration)
<FlagsAttribute> _
Public Enumeration JoinPointKinds
C#
[FlagsAttribute]
public enum JoinPointKinds
Visual C++
[FlagsAttribute]
public enum class JoinPointKinds

Members

Member nameDescription
None
None.
BeforeMethodBody
Before the method body. This is a method-level advice.
AfterMethodBodyAlways
After the method body, in every case (exception or normal termination). This is a method-level advice.
AfterMethodBodySuccess
After the method body, in case of success. This is a method-level advice.
AfterMethodBodyException
After the method body, only in case of exception. This is a method-level advice.
BeforeGetField
Before getting a field. This is a method-level advice.
AfterGetField
After getting a field. This is a method-level advice.
InsteadOfGetField
Instead of getting a field. This is both a field-level and method-level advice.
BeforeSetField
Before setting a field. This is a method-level advice.
AfterSetField
After setting a field. This is a method-level advice.
InsteadOfSetField
Instead of setting a field. This is a method-level advice.
BeforeCall
Before calling a method. This is a method-level advice.
AfterCall
After calling a method. This is a method-level advice.
InsteadOfCall
Instead of calling a method. This is a method-level advice.
BeforeGetArray
Before getting an array element. This is a method-level advice.
AfterGetArray
After getting an array element. This is a method-level advice.
InsteadOfGetArray
Instead of getting an array element. This is a method-level advice.
BeforeSetArray
Before setting an array element. This is a method-level advice.
AfterSetArray
After setting an array element. This is a method-level advice.
InsteadOfSetArray
Instead of setting an array element. This is a method-level advice.
BeforeThrow
Before the throw or rethrow instruction. This is a method-level advice.
BeforeInstanceConstructor
In the real beginning of instance constructors, even before the this pointer is initialized. This is a method-level advice.
BeforeStaticConstructor
Before the class/static constructors (creates the class constructor if not yet present). This is a type-level advice.
AfterInstanceInitialization
Just after the this pointer has been initialized (in each constructor that calls the constructor of the base type). This is a type-level advice.
BeforeNewObject
Just before the newobj instruction.
InsteadOfNewObject
Instead of the newobj instruction.
AfterNewObject
Just before the newobj instruction.
BeforeGetFieldAddress
Just before the ldflda or ldsflda instruction.
AfterGetFieldAddress
Just after the ldflda or ldsflda instruction.
InsteadOfGetFieldAddress
Instead of the ldflda or ldsflda instruction.

See Also