ConstraintDSLModule
PackageReified.Constraint
Constraint constructors usable without the Constraint. prefix inside a module that declares value rules.
Operations
kind:member
Alias for present.
Returns
Constraint<^value>
kind:member
Alias for blank.
Returns
Constraint<^value>
kind:member
Alias for optional.
Parameters
| Name | Type | Description |
|---|
| inner | Constraint<'a> | |
kind:member
Alias for minLength.
Parameters
| Name | Type | Description |
|---|
| minimum | int | |
Returns
Constraint<^value>
kind:member
Alias for maxLength.
Parameters
| Name | Type | Description |
|---|
| maximum | int | |
Returns
Constraint<^value>
kind:member
lengthBetween minimum maximum
MemberAlias for lengthBetween.
Parameters
| Name | Type | Description |
|---|
| minimum | int | |
| maximum | int | |
Returns
Constraint<^value>
kind:member
Alias for email.
Returns
Constraint<string>
kind:member
Alias for trimmed.
Returns
Constraint<string>
kind:member
Alias for numeric.
Returns
Constraint<string>
kind:member
Alias for alphanumeric.
Returns
Constraint<string>
kind:member
Alias for pattern.
Returns
string -> Constraint<string>
kind:member
Alias for oneOf.
Returns
'a seq -> Constraint<'a>
kind:member
Alias for noneOf.
Returns
'a seq -> Constraint<'a>
kind:member
Alias for equalTo.
Returns
'a -> Constraint<'a>
kind:member
Alias for notEqualTo.
Returns
'a -> Constraint<'a>
kind:member
Alias for greaterThan.
Returns
'a -> Constraint<'a>
kind:member
Alias for lessThan.
Returns
'a -> Constraint<'a>
kind:member
Alias for atLeast.
Returns
'a -> Constraint<'a>
kind:member
Alias for atMost.
Returns
'a -> Constraint<'a>
kind:member
Alias for positive.
Returns
Constraint<^value>
kind:member
Alias for nonNegative.
Returns
Constraint<^value>
kind:member
Alias for negative.
Returns
Constraint<^value>
kind:member
Alias for nonPositive.
Returns
Constraint<^value>
kind:member
Alias for single.
Returns
Constraint<^value>
kind:member
Alias for atLeastOne.
Returns
Constraint<^value>
kind:member
Alias for atMostOne.
Returns
Constraint<^value>
kind:member
Alias for moreThanOne.
Returns
Constraint<^value>
kind:member
notContains expected
MemberAlias for notContains.
Parameters
| Name | Type | Description |
|---|
| expected | 'value | |
Returns
Constraint<^container>
kind:member
Alias for multipleOf.
Parameters
| Name | Type | Description |
|---|
| divisor | ^a | |
kind:member
Alias for finite32.
Returns
Constraint<float32>
kind:member
Alias for notWith.
Returns
string -> Constraint<'a> -> Constraint<'a>
kind:member
Alias for custom.
Returns
string -> ('a -> bool) -> Constraint<'a>
kind:member
Alias for customLocalized.
Returns
string -> string -> ('a -> bool) -> Constraint<'a>
kind:member
Alias for customWith.
Returns
string -> ('a -> Result<unit, Violation>) -> Constraint<'a>
kind:member
Alias for contramap.
Returns
('a -> 'b) -> Constraint<'b> -> Constraint<'a>
kind:member
Alias for describe.
Returns
string -> Constraint<'a> -> Constraint<'a>
kind:member
orError failure result
MemberReplaces a failed constraint's violation with the supplied error.
Parameters
| Name | Type | Description |
|---|
| failure | 'a | |
| result | Result<'b, 'c> | |
Verification Examples
value |> Constraint.guard present |> orError NameRequired
kind:member
mapError mapper result
MemberMaps a failed constraint's violation with the supplied function.
Parameters
| Name | Type | Description |
|---|
| mapper | 'a -> 'b | |
| result | Result<'c, 'a> | |
Verification Examples
value |> Constraint.guard (greaterThan 0) |> mapError InvalidQuantity
Examples
module SignupRules =
open Reified.ConstraintDSL
let age : Constraint<int> = atLeast 13
let contact : Constraint<string> = Constraint.all [ present; email ]
let requireContact value = value |> Constraint.guard contact |> orError EmailRequired