Yaaf.FSharp.Helper


Choice

Defined in Yaaf.FSharp.Helper.dll.

Nested types and modules

TypeDescription
EitherBuilder

Functions and values

Function or valueDescription
( *> ) a b
Signature: a:Choice<'?21741,'?21742> -> b:Choice<'?21743,'?21742> -> Choice<'?21743,'?21742>
Type parameters: '?21741, '?21742, '?21743

Sequence actions, discarding the value of the first argument.

( <!> ) f x
Signature: f:('?21732 -> '?21733) -> x:Choice<'?21732,'?21734> -> Choice<'?21733,'?21734>
Type parameters: '?21732, '?21733, '?21734

Infix map

( <* ) a b
Signature: a:Choice<'?21745,'?21746> -> b:Choice<'?21747,'?21746> -> Choice<'?21745,'?21746>
Type parameters: '?21745, '?21746, '?21747

Sequence actions, discarding the value of the second argument.

( <*> ) f x
Signature: f:Choice<('?21724 -> '?21725),'?21726> -> x:Choice<'?21724,'?21726> -> Choice<'?21725,'?21726>
Type parameters: '?21724, '?21725, '?21726

Sequential application

( <=< ) x
Signature: x:('?21770 -> Choice<'?21771,'?21772>) -> ('?21773 -> Choice<'?21770,'?21772>) -> '?21773 -> Choice<'?21771,'?21772>
Type parameters: '?21770, '?21771, '?21772, '?21773

Right-to-left Kleisli composition

( =<< ) f m
Signature: f:('?21757 -> Choice<'?21758,'?21759>) -> m:Choice<'?21757,'?21759> -> Choice<'?21758,'?21759>
Type parameters: '?21757, '?21758, '?21759

Flipped >>=

( >=> ) f g x
Signature: f:('?21765 -> Choice<'?21766,'?21767>) -> g:('?21766 -> Choice<'?21768,'?21767>) -> x:'?21765 -> Choice<'?21768,'?21767>
Type parameters: '?21765, '?21766, '?21767, '?21768

Left-to-right Kleisli composition

( >>. ) m1 m2
Signature: m1:Choice<'?21761,'?21762> -> m2:Choice<'?21763,'?21762> -> Choice<'?21763,'?21762>
Type parameters: '?21761, '?21762, '?21763

Sequentially compose two either actions, discarding any value produced by the first

( >>= ) m f
Signature: m:Choice<'?21753,'?21754> -> f:('?21753 -> Choice<'?21755,'?21754>) -> Choice<'?21755,'?21754>
Type parameters: '?21753, '?21754, '?21755

Sequentially compose two actions, passing any value produced by the first as an argument to the second.

ap x f
Signature: x:Choice<'?21720,'?21721> -> f:Choice<('?21720 -> '?21722),'?21721> -> Choice<'?21722,'?21721>
Type parameters: '?21720, '?21721, '?21722

Sequential application

bimap f1 f2 _arg1
Signature: f1:('?21775 -> '?21776) -> f2:('?21777 -> '?21778) -> _arg1:Choice<'?21775,'?21777> -> Choice<'?21776,'?21778>
Type parameters: '?21775, '?21776, '?21777, '?21778

Maps both parts of a Choice. Applies the first function if Choice is 1Of2. Otherwise applies the second function

bind f _arg1
Signature: f:('?21749 -> Choice<'?21750,'?21751>) -> _arg1:Choice<'?21749,'?21751> -> Choice<'?21750,'?21751>
Type parameters: '?21749, '?21750, '?21751

Monadic bind

cast o
Signature: o:obj -> Choice<'?21718,exn>
Type parameters: '?21718

Attempts to cast an object. Stores the cast value in 1Of2 if successful, otherwise stores the exception in 2Of2

choice f1 f2 _arg1
Signature: f1:('?21780 -> '?21781) -> f2:('?21782 -> '?21781) -> _arg1:Choice<'?21780,'?21782> -> '?21781
Type parameters: '?21780, '?21781, '?21782

Maps both parts of a Choice. Applies the first function if Choice is 1Of2. Otherwise applies the second function

choose
Signature: EitherBuilder
foldM f s
Signature: f:('?21805 -> '?21806 -> Choice<'?21805,'?21807>) -> s:'?21805 -> seq<'?21806> -> Choice<'?21805,'?21807>
Type parameters: '?21805, '?21806, '?21807
get _arg1
Signature: _arg1:Choice<'?21712,'?21713> -> '?21712
Type parameters: '?21712, '?21713

If Choice is 1Of2, return its value. Otherwise throw ArgumentException.

lift2 f a b
Signature: f:('?21736 -> '?21737 -> '?21738) -> a:Choice<'?21736,'?21739> -> b:Choice<'?21737,'?21739> -> Choice<'?21738,'?21739>
Type parameters: '?21736, '?21737, '?21738, '?21739

Promote a function to a monad/applicative, scanning the monadic/applicative arguments from left to right.

map f _arg1
Signature: f:('?21728 -> '?21729) -> _arg1:Choice<'?21728,'?21730> -> Choice<'?21729,'?21730>
Type parameters: '?21728, '?21729, '?21730

Transforms a Choice's first value by using a specified mapping function.

mapM f x
Signature: f:('?21812 -> Choice<'?21813,'?21814>) -> x:'?21812 list -> Choice<'?21813 list,'?21814>
Type parameters: '?21812, '?21813, '?21814
mapSecond f
Signature: f:('?21784 -> '?21785) -> Choice<'?21786,'?21784> -> Choice<'?21786,'?21785>
Type parameters: '?21784, '?21785, '?21786

Transforms a Choice's second value by using a specified mapping function.

ofOption o _arg1
Signature: o:'?21802 -> _arg1:'?21803 option -> Choice<'?21803,'?21802>
Type parameters: '?21802, '?21803

If Some value, returns Choice1Of2 value. Otherwise, returns the supplied default value.

protect f x
Signature: f:('?21715 -> '?21716) -> x:'?21715 -> Choice<'?21716,exn>
Type parameters: '?21715, '?21716

Wraps a function, encapsulates any exception thrown within to a Choice

returnM arg0
Signature: arg0:'?21709 -> Choice<'?21709,'?21710>
Type parameters: '?21709, '?21710

Inject a value into the Choice type

sequence s
Signature: s:Choice<'?21809,'?21810> list -> Choice<'?21809 list,'?21810>
Type parameters: '?21809, '?21810
toOption
Signature: Choice<'?21799,'?21800> -> '?21799 option
Type parameters: '?21799, '?21800

If Choice is 1Of2, returns Some value. Otherwise, returns None.

Fork me on GitHub