FSharpx.Extras


Continuation

Namespace: FSharpx

Nested types and modules

TypeDescription
ContinuationBuilder

Functions and values

Function or valueDescription
( *> ) x y
Signature: x:Cont<'?12337,'?12338> -> y:Cont<'?12339,'?12338> -> Cont<'?12339,'?12338>
Type parameters: '?12337, '?12338, '?12339

Sequence actions, discarding the value of the first argument.

CompiledName: op_MultiplyGreater

( <!> ) f m
Signature: f:('?12328 -> '?12329) -> m:Cont<'?12328,'?12330> -> Cont<'?12329,'?12330>
Type parameters: '?12328, '?12329, '?12330

Infix map

CompiledName: op_LessBangGreater

( <* ) x y
Signature: x:Cont<'?12341,'?12342> -> y:Cont<'?12343,'?12342> -> Cont<'?12341,'?12342>
Type parameters: '?12341, '?12342, '?12343

Sequence actions, discarding the value of the second argument.

CompiledName: op_LessMultiply

( <*> ) f m
Signature: f:Cont<('?12316 -> '?12317),'?12318> -> m:Cont<'?12316,'?12318> -> Cont<'?12317,'?12318>
Type parameters: '?12316, '?12317, '?12318

Sequential application

CompiledName: op_LessMultiplyGreater

( <=< ) x
Signature: x:('?12354 -> Cont<'?12355,'?12356>) -> ('?12357 -> Cont<'?12354,'?12356>) -> '?12357 -> Cont<'?12355,'?12356>
Type parameters: '?12354, '?12355, '?12356, '?12357

Right-to-left Kleisli composition

CompiledName: op_LessEqualsLess

( =<< ) f m
Signature: f:('?12312 -> Cont<'?12313,'?12314>) -> m:Cont<'?12312,'?12314> -> Cont<'?12313,'?12314>
Type parameters: '?12312, '?12313, '?12314

Flipped >>=

CompiledName: op_EqualsLessLess

( >=> ) f g x
Signature: f:('?12349 -> Cont<'?12350,'?12351>) -> g:('?12350 -> Cont<'?12352,'?12351>) -> x:'?12349 -> Cont<'?12352,'?12351>
Type parameters: '?12349, '?12350, '?12351, '?12352

Left-to-right Kleisli composition

CompiledName: op_GreaterEqualsGreater

( >>. ) m f
Signature: m:Cont<'?12345,'?12346> -> f:Cont<'?12347,'?12346> -> Cont<'?12347,'?12346>
Type parameters: '?12345, '?12346, '?12347

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

CompiledName: op_GreaterGreaterDot

( >>= ) m f
Signature: m:Cont<'?12308,'?12309> -> f:('?12308 -> Cont<'?12310,'?12309>) -> Cont<'?12310,'?12309>
Type parameters: '?12308, '?12309, '?12310

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

CompiledName: op_GreaterGreaterEquals

ap m f
Signature: m:Cont<'?12320,'?12321> -> f:Cont<('?12320 -> '?12322),'?12321> -> Cont<'?12322,'?12321>
Type parameters: '?12320, '?12321, '?12322

Sequential application

bind f comp1 cont econt
Signature: f:('?12263 -> Cont<'?12264,'?12265>) -> comp1:Cont<'?12263,'?12265> -> cont:('?12264 -> '?12265) -> econt:(exn -> '?12265) -> '?12265
Type parameters: '?12263, '?12264, '?12265
callcc f cont econt
Signature: f:(('T -> Cont<'b,'r>) -> Cont<'T,'r>) -> cont:('T -> 'r) -> econt:(exn -> 'r) -> 'r
Type parameters: 'T, 'b, 'r
cont
Signature: ContinuationBuilder
foldM f s
Signature: f:('?12359 -> '?12360 -> Cont<'?12359,'?12361>) -> s:'?12359 -> seq<'?12360> -> Cont<'?12359,'?12361>
Type parameters: '?12359, '?12360, '?12361
lift2 f a b
Signature: f:('?12332 -> '?12333 -> '?12334) -> a:Cont<'?12332,'?12335> -> b:Cont<'?12333,'?12335> -> Cont<'?12334,'?12335>
Type parameters: '?12332, '?12333, '?12334, '?12335

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

map f m
Signature: f:('?12324 -> '?12325) -> m:Cont<'?12324,'?12326> -> Cont<'?12325,'?12326>
Type parameters: '?12324, '?12325, '?12326

Transforms a Cont value by using a specified mapping function.

mapM f x
Signature: f:('?12366 -> Cont<'?12367,'?12368>) -> x:'?12366 list -> Cont<'?12367 list,'?12368>
Type parameters: '?12366, '?12367, '?12368
returnM x
Signature: x:'?12305 -> Cont<'?12305,'?12306>
Type parameters: '?12305, '?12306

Inject a value into the Cont type

runCont c cont econt
Signature: c:Cont<'?12253,'?12254> -> cont:('?12253 -> '?12254) -> econt:(exn -> '?12254) -> '?12254
Type parameters: '?12253, '?12254
sequence s
Signature: s:Cont<'?12363,'?12364> list -> Cont<'?12363 list,'?12364>
Type parameters: '?12363, '?12364
throw exn cont econt
Signature: exn:exn -> cont:('T -> 'r) -> econt:(exn -> 'r) -> 'r
Type parameters: 'T, 'r
Fork me on GitHub