Table of Contents

Namespace NRules.Extensibility

Contains types that enable extensibility of the rules engine.

Interfaces

IActionInterceptor

Extension point for rule actions interception. An instance of IActionInterceptor can be assigned to ActionInterceptor or ActionInterceptor, so that invocation of all rule actions is delegated to the interceptor. The interceptor is free to add pre- or post-processing to action invocations, error handling, or decide not to invoke the actions.

IActionInvocation

Represents invocation of the proxied rule action.

IDependencyResolver

Defines a mechanism to resolve rule dependencies at runtime. An instance of IDependencyResolver can be assigned to DependencyResolver or DependencyResolver, so that all requests for rule dependencies resolution are fulfilled by that resolver.

IExpressionCompiler

Compiles expressions used in rules conditions and actions in a form of expression trees into executable delegates. The default implementation uses built-in .NET expression compiler.

IResolutionContext

Context for dependency resolution.