Module Values.RuleSource

A rule contains conditions, "unless conditions" and actions. For each envelope recipient of an email, if all conditions match and none of the "unless conditions" match, then all of the actions are executed sequentially. If no conditions are provided, the rule always applies and the actions are implicitly executed. If only "unless conditions" are provided, the rule applies if the email does not match the evaluation of the "unless conditions".

Sourcetype nonrec t = {
  1. name : RuleName.t option;
    (*

    The user-friendly name of the rule.

    *)
  2. conditions : RuleConditions.t option;
    (*

    The conditions of this rule. All conditions must match the email for the actions to be executed. An empty list of conditions means that all emails match, but are still subject to any "unless conditions"

    *)
  3. unless : RuleConditions.t option;
    (*

    The "unless conditions" of this rule. None of the conditions can match the email for the actions to be executed. If any of these conditions do match the email, then the actions are not executed.

    *)
  4. actions : RuleActions.t;
    (*

    The list of actions to execute when the conditions match the incoming email, and none of the "unless conditions" match.

    *)
}
Sourceval context_ : string
Sourceval make : ?name:??? -> ?conditions:??? -> ?unless:??? -> actions:RuleActions.t -> unit -> t
Sourceval to_value : t -> [> `Structure of (string * [> `List of [> `Structure of (string * [> `Structure of (string * [> `Double of Double.t | `Enum of string | `Integer of LambdaRetryTimeMinutes.t | `List of [> `Enum of string | `String of RuleStringValue.t ] list | `String of IdOrArn.t | `Structure of (string * [> `Enum of string | `String of MimeHeaderAttribute.t | `Structure of (string * [> `Enum of string | `List of [> `String of AddressListArn.t ] list | `String of AnalyzerArn.t ]) list ]) list ]) list ]) list ] list | `String of RuleName.t ]) list ]
Sourceval to_query : t -> Awso.Client.Query.t
Sourceval of_xml : Awso.Xml.t -> t
Sourceval of_string : string -> t
Sourceval of_json : Yojson.Safe.t -> t
Sourceval to_json : t -> Yojson.Safe.t