Open sandboxFocus

Class LocationInterceptionArgs

Arguments of the advices of the aspect type LocationInterceptionAspect.

Inheritance
LocationLevelAdviceArgs
LocationInterceptionArgs
Namespace: PostSharp.Aspects
Assembly: PostSharp.dll
Syntax
public abstract class LocationInterceptionArgs : LocationLevelAdviceArgs, ILocationInterceptionArgs
Remarks

note

As a result of weaving optimizations, instances of classes derived from AdviceArgs may be shared among different aspects. Therefore, aspect code should not attempt to access this object once control has been passed to the next node in the chain of invocation. Consider working with aspect bindings if you need such deferred execution.

note

Aspect weaving optimizations may also cause an advice parameter of this type to appear as null when inspecting it in a debugger. If you need to inspect the instance at runtime, consider disabling aspect optimizations in the debug build configuration.

Developing Simple Aspects

Properties

Name Description
Binding

Gets an interface that allows invoking the next node in the chain of invocation of the intercepted method.

Index

Gets the current index arguments, for a property with parameters.

Methods

Name Description
Execute<TPayload>(ILocationInterceptionArgsAction<TPayload>, ref TPayload)

Executes a delegate for the current LocationInterceptionArgs. This method allows executing strongly typed operations and avoids the boxing required by the weakly typed ILocationInterceptionArgs interface.

GetCurrentValue()

Retrieves the current value of the location without overwriting the PostSharp.Aspects.Internals.LocationLevelAdviceArgs.Value property.

ProceedGetValue()

Invokes the Get Location Value semantic on the next node in the chain of invocation and stores the location value in the PostSharp.Aspects.Internals.LocationLevelAdviceArgs.Value property.

ProceedSetValue()

Invokes the Set Location Value semantic on the next node in the chain of invocation and stores the value of the PostSharp.Aspects.Internals.LocationLevelAdviceArgs.Value property into the location.

SetNewValue(object)

Sets the value of the location without overwriting the PostSharp.Aspects.Internals.LocationLevelAdviceArgs.Value property.

See Also