A 'Validation' is either a value of the type 'error or 't, similar to 'Result'. However, the 'Applicative' instance for 'Validation' accumulates errors using a 'Semigroup' on 'error. In contrast, the Applicative for 'Result' returns only the first error. A consequence of this is that 'Validation' is not a monad. There is no F#+ 'Bind' method since that would violate monad rules.
Static member | Description |
Full Usage:
f <!> x
Parameters:
'T -> 'U
x : Validation<'Error, 'T>
Returns: Validation<'Error, 'U>
|
Static member | Description |
Full Usage:
x *> y
Parameters:
Validation<^Error, 'T>
y : Validation<^Error, 'U>
Returns: Validation<^Error, 'U>
Modifiers: inline Type parameters: 'U |
|
Full Usage:
x <* y
Parameters:
Validation<^Error, 'U>
y : Validation<^Error, 'T>
Returns: Validation<^Error, 'U>
Modifiers: inline Type parameters: 'T |
Union case | Description |
Full Usage:
Failure 'error
Parameters:
'error
|
|
Full Usage:
Success 't
Parameters:
't
|
|
Static member | Description |
Full Usage:
f <*> x
Parameters:
Validation<^Error, ('T -> 'U)>
x : Validation<^Error, 'T>
Returns: Validation<^Error, 'U>
Modifiers: inline Type parameters: 'U |
|
Full Usage:
f <.> x
Parameters:
Validation<^Error, ('T -> 'U)>
x : Validation<^Error, 'T>
Returns: Validation<^Error, 'U>
Modifiers: inline Type parameters: 'U |
|
Full Usage:
x <|> y
Parameters:
Validation<^Error, 'T>
y : Validation<^Error, 'T>
Returns: Validation<^Error, 'T>
Modifiers: inline |
|
Full Usage:
Validation.Bifold(t, f, g, z)
Parameters:
Validation<'err, 'a>
f : 'b -> 'err -> 'b
g : 'b -> 'a -> 'b
z : 'b
Returns: 'b
Modifiers: inline Type parameters: 'b |
|
Full Usage:
Validation.BifoldBack(t, f, g, z)
Parameters:
Validation<'err, 'a>
f : 'err -> 'b -> 'b
g : 'a -> 'b -> 'b
z : 'b
Returns: 'b
Modifiers: inline Type parameters: 'b |
|
Full Usage:
Validation.BifoldMap(t, f, g)
Parameters:
Validation<'err, 'a>
f : 'err -> 'b
g : 'a -> 'b
Returns: 'b
Modifiers: inline Type parameters: 'b |
|
Full Usage:
Validation.Bimap(x, f, g)
Parameters:
Validation<'T, 'V>
f : 'T -> 'U
g : 'V -> 'W
Returns: Validation<'U, 'W>
|
|
Full Usage:
Validation.Bisequence(t)
Parameters:
Validation<^err, ^a>
Returns: ^b
Modifiers: inline |
|
Full Usage:
Validation.Bitraverse(t, f, g)
Parameters:
Validation<'err, 'a>
f : 'err -> ^b
g : 'a -> ^d
Returns: ^c
Modifiers: inline |
|
Full Usage:
Validation.Lift2(f, x, y)
Parameters:
'T -> 'U -> 'V
x : Validation<^Error, 'T>
y : Validation<^Error, 'U>
Returns: Validation<^Error, 'V>
Modifiers: inline Type parameters: 'V, ^Error |
|
Full Usage:
Validation.Lift3(f, x, y, z)
Parameters:
'T -> 'U -> 'V -> 'W
x : Validation<^Error, 'T>
y : Validation<^Error, 'U>
z : Validation<^Error, 'V>
Returns: Validation<^Error, 'W>
Modifiers: inline Type parameters: 'V, 'W, ^Error |
|
Full Usage:
Validation.Map(x, f)
Parameters:
Validation<'Error, 'T>
f : 'T -> 'U
Returns: Validation<'Error, 'U>
|
|
Full Usage:
Validation.Map2(f, x, y)
Parameters:
'T -> 'U -> 'V
x : Validation<^Error, 'T>
y : Validation<^Error, 'U>
Returns: Validation<^Error, 'V>
Modifiers: inline Type parameters: 'V, ^Error |
|
Full Usage:
Validation.Map3(f, x, y, z)
Parameters:
'T -> 'U -> 'V -> 'W
x : Validation<^Error, 'T>
y : Validation<^Error, 'U>
z : Validation<^Error, 'V>
Returns: Validation<^Error, 'W>
Modifiers: inline Type parameters: 'V, 'W, ^Error |
|
|
|
|
|
Full Usage:
Validation.Sequence(t)
Parameters:
Validation<'Error, ^Functor<'T>>
Returns: ^Functor
Modifiers: inline |
|
Full Usage:
Validation.SequenceBiApply(t)
Parameters:
Validation<'Error, 'T>[]
Returns: Validation<'Error[], 'T[]>
|
|
Full Usage:
Validation.SequenceBiApply(t)
Parameters:
Validation<'Error, 'T> list
Returns: Validation<'Error list, 'T list>
|
|
Full Usage:
Validation.Traverse(t, f)
Parameters:
Validation<'Error, 'T>
f : 'T -> ^Functor<'U>
Returns: ^Functor
Modifiers: inline |
|
Full Usage:
Validation.Zip(x, y)
Parameters:
Validation<^Error, 'T>
y : Validation<^Error, 'U>
Returns: Validation<^Error, ('T * 'U)>
Modifiers: inline Type parameters: 'U |
|
|
|