package async
Monadic concurrency library
Install
Dune Dependency
Authors
Maintainers
Sources
async-v0.16.0.tar.gz
sha256=709041c755f4cd8740b7262e657f59c1066a8540b70c3b99368f369a1196a681
doc/async/Async/index.html
Module Async
Source
Async_kernel
include module type of struct include Async_kernel end
module Async_kernel_config = Async_kernel.Async_kernel_config
Source
module Async_kernel_require_explicit_time_source =
Async_kernel.Async_kernel_require_explicit_time_source
Toplevel functions
The functions below are broadly useful when writing Async programs, and so are made available at the toplevel.
Source
val catch :
?here:Core.Source_code_position.t ->
?info:Core.Info.t ->
?name:string ->
(unit -> unit) ->
exn Async_kernel.Deferred.t
Source
val try_with :
?here:Core.Source_code_position.t ->
?info:Core.Info.t ->
?name:string ->
?extract_exn:bool ->
?run:[ `Now | `Schedule ] ->
?rest:[ `Call of exn -> unit | `Log | `Raise ] ->
(unit -> 'a Async_kernel.Deferred.t) ->
('a, exn) Core.Result.t Async_kernel.Deferred.t
Infix operators and Let_syntax
support
include Core.Monad.Infix
with type 'a t :=
'a {Deferred}1/shadowed/(60ed6d77081330d3d9eec882f4cae4c8).t
equivalent to Deferred.upon
.
Source
val (>>=?) :
('a, 'b) Async_kernel.Deferred.Result.t ->
('a -> ('c, 'b) Async_kernel.Deferred.Result.t) ->
('c, 'b) Async_kernel.Deferred.Result.t
equivalent to Deferred.Result.bind
.
Source
val (>>|?) :
('a, 'b) Async_kernel.Deferred.Result.t ->
('a -> 'c) ->
('c, 'b) Async_kernel.Deferred.Result.t
equivalent to Deferred.Result.map
.
include module type of struct include Async_kernel.Deferred.Let_syntax end
val (>>=) :
'a Async_kernel.Deferred.t ->
('a -> 'b Async_kernel.Deferred.t) ->
'b Async_kernel.Deferred.t
val (>>|) :
'a Async_kernel.Deferred.t ->
('a -> 'b) ->
'b Async_kernel.Deferred.t
module Let_syntax = Async_kernel.Let_syntax
Async_unix
include module type of struct include Async_unix end
Source
val every :
?start:unit Async_kernel.Deferred.t ->
?stop:unit Async_kernel.Deferred.t ->
?continue_on_error:bool ->
Async_unix__.Import.Time.Span.t ->
(unit -> unit) ->
unit
Source
val with_timeout :
Async_unix__.Import.Time.Span.t ->
'a Async_kernel.Deferred.t ->
'a Clock.Or_timeout.t Async_kernel.Deferred.t
Source
val schedule :
?monitor:Async_kernel.Monitor.t ->
?priority:Async_kernel.Priority.t ->
(unit -> unit) ->
unit
Source
val schedule' :
?monitor:Async_kernel.Monitor.t ->
?priority:Async_kernel.Priority.t ->
(unit -> 'a Async_kernel.Deferred.t) ->
'a Async_kernel.Deferred.t
Source
val within :
?monitor:Async_kernel.Monitor.t ->
?priority:Async_kernel.Priority.t ->
(unit -> unit) ->
unit
Source
val within' :
?monitor:Async_kernel.Monitor.t ->
?priority:Async_kernel.Priority.t ->
(unit -> 'a Async_kernel.Deferred.t) ->
'a Async_kernel.Deferred.t
Shadow blocking functions in Core.Printf
to prevent their unintentional use.
include sig ... end
Source
val close_in_noerr :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val close_in :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val close_out_noerr :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val close_out :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val flush_all :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val flush :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val in_channel_length :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val input_binary_int :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val input_byte :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val input_char :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val input_line :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val input_lines :
?fix_win_eol:'a ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val input :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val input_value :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val open_in_bin :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val open_in_gen :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val open_in :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val open_out_bin :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val open_out_gen :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val open_out :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val out_channel_length :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val output_binary_int :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val output_byte :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val output_char :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val output :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val output_string :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val output_value :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val pos_in :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val pos_out :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val read_float :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val read_int :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val read_line :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val read_lines :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val read_wrap :
?binary:'a ->
f:'b ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val really_input :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val seek_in :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val seek_out :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val set_binary_mode_in :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val set_binary_mode_out :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val write_lines :
[< `This_is_async__Think_about_blocking ] ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val write_wrap :
?binary:'a ->
f:'b ->
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Source
val eprint_s :
[< `This_is_async__Think_about_blocking ] ->
[> `This_is_async__Think_about_blocking ]
Async_command
Async_rpc
The default expect test config in code which has open Async
.
An alternative to Async.Deferred_or_error_expect_test_config
in which %expect
has type unit
rather than unit Deferred.Or_error.t
. This lets one write:
sectionYPositions = computeSectionYPositions($el), 10)"
x-init="setTimeout(() => sectionYPositions = computeSectionYPositions($el), 10)"
>
On This Page