package async

  1. Overview
  2. Docs
Monadic concurrency library

Install

Dune Dependency

Authors

Maintainers

Sources

async-v0.16.0.tar.gz
sha256=709041c755f4cd8740b7262e657f59c1066a8540b70c3b99368f369a1196a681

doc/async/Async/index.html

Module AsyncSource

Async_kernel

include module type of struct include Async_kernel end
module Async_kernel_config = Async_kernel.Async_kernel_config
Sourcemodule Async_kernel_require_explicit_time_source = Async_kernel.Async_kernel_require_explicit_time_source
Sourcemodule Async_kernel_scheduler = Async_kernel.Async_kernel_scheduler
Sourcemodule Clock_ns = Async_kernel.Clock_ns
Sourcemodule Condition = Async_kernel.Condition
Sourcemodule Execution_context = Async_kernel.Execution_context
Sourcemodule Invariant = Async_kernel.Invariant
Sourcemodule Lazy_deferred = Async_kernel.Lazy_deferred
Sourcemodule Monad_sequence = Async_kernel.Monad_sequence
Sourcemodule Priority = Async_kernel.Priority
Sourcemodule Sequencer = Async_kernel.Sequencer
Sourcemodule Synchronous_time_source = Async_kernel.Synchronous_time_source
Sourcemodule Throttle = Async_kernel.Throttle
Sourcemodule Throttled = Async_kernel.Throttled
Sourcemodule Time_source = Async_kernel.Time_source

Toplevel functions

The functions below are broadly useful when writing Async programs, and so are made available at the toplevel.

Sourceval catch : ?here:Core.Source_code_position.t -> ?info:Core.Info.t -> ?name:string -> (unit -> unit) -> exn Async_kernel.Deferred.t
Sourceval don't_wait_for : unit Async_kernel.Deferred.t -> unit
Sourceval never : unit -> 'a Async_kernel.Deferred.t
Sourceval 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
Sourceval upon : 'a Async_kernel.Deferred.t -> ('a -> unit) -> unit

Infix operators and Let_syntax support

include Core.Monad.Infix with type 'a t := 'a {Deferred}1/shadowed/(60ed6d77081330d3d9eec882f4cae4c8).t
Sourceval (>>>) : 'a Async_kernel.Deferred.t -> ('a -> unit) -> unit

equivalent to Deferred.upon.

Sourceval (>>|?) : ('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
Sourceval return : 'a -> 'a Async_kernel.Deferred.t
val (>>|) : 'a Async_kernel.Deferred.t -> ('a -> 'b) -> 'b Async_kernel.Deferred.t
module Let_syntax = Async_kernel.Let_syntax
Sourcemodule Deferred : sig ... end

Async_unix

include module type of struct include Async_unix end
Sourcemodule Async_config = Async_unix.Async_config
Sourcemodule Clock = Async_unix.Clock
Sourcemodule Dump_core_on_job_delay = Async_unix.Dump_core_on_job_delay
Sourcemodule In_thread = Async_unix.In_thread
Sourcemodule Io_stats = Async_unix.Io_stats
Sourcemodule Print = Async_unix.Print
Sourcemodule Process = Async_unix.Process
Sourcemodule Reader = Async_unix.Reader
Sourcemodule Require_explicit_time_source = Async_unix.Require_explicit_time_source
Sourcemodule Scheduler = Async_unix.Scheduler
Sourcemodule Shutdown = Async_unix.Shutdown
Sourcemodule Signal = Async_unix.Signal
Sourcemodule Socket = Async_unix.Socket
Sourcemodule Thread_safe = Async_unix.Thread_safe
Sourcemodule Writer = Async_unix.Writer
Sourcemodule Unix = Async_unix.Unix
Sourceval after : Async_unix__.Import.Time.Span.t -> unit Async_kernel.Deferred.t
Sourceval at : Async_unix__.Import.Time.t -> unit Async_kernel.Deferred.t
Sourceval 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
Sourceval with_timeout : Async_unix__.Import.Time.Span.t -> 'a Async_kernel.Deferred.t -> 'a Clock.Or_timeout.t Async_kernel.Deferred.t
Sourceval schedule : ?monitor:Async_kernel.Monitor.t -> ?priority:Async_kernel.Priority.t -> (unit -> unit) -> unit
Sourceval shutdown : ?force:unit Async_kernel.Deferred.t -> int -> unit
Sourceval within : ?monitor:Async_kernel.Monitor.t -> ?priority:Async_kernel.Priority.t -> (unit -> unit) -> unit
Sourcemodule Printf = Async_unix.Printf

Shadow blocking functions in Core.Printf to prevent their unintentional use.

include sig ... end
Sourcemodule Overwrite_ = Async_unix.Overwrite_
Sourceval close_in_noerr : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval close_in : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval close_out_noerr : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval close_out : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval eprintf : ('a, unit, string, unit) format4 -> 'a
Sourceval flush_all : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval flush : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval fprintf : Async_unix.Writer.t -> ('a, unit, string, unit) format4 -> 'a
Sourceval ifprintf : 'a -> ('b, 'a, 'c, unit) format4 -> 'b
Sourceval in_channel_length : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval input_binary_int : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval input_byte : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval input_char : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval input_line : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval input_lines : ?fix_win_eol:'a -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval 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 ]
Sourceval input_value : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval open_in_bin : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval 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 ]
Sourceval open_in : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval open_out_bin : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval 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 ]
Sourceval open_out : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval out_channel_length : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval output_binary_int : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval output_byte : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval output_char : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval 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 ]
Sourceval output_string : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval output_value : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval pos_in : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval pos_out : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval prerr_char : char -> unit
Sourceval prerr_endline : string -> unit
Sourceval prerr_float : float -> unit
Sourceval prerr_int : int -> unit
Sourceval prerr_newline : unit -> unit
Sourceval prerr_string : string -> unit
Sourceval print_char : char -> unit
Sourceval print_endline : string -> unit
Sourceval print_float : float -> unit
Sourceval printf : ('a, unit, string, unit) format4 -> 'a
Sourceval print_int : int -> unit
Sourceval print_newline : unit -> unit
Sourceval print_s : ?mach:unit -> Sexplib.Sexp.t -> unit
Sourceval print_string : string -> unit
Sourceval read_float : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval read_int : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval read_line : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval read_lines : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval read_wrap : ?binary:'a -> f:'b -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval 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 ]
Sourceval seek_in : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval seek_out : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval set_binary_mode_in : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval set_binary_mode_out : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval write_lines : [< `This_is_async__Think_about_blocking ] -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval write_wrap : ?binary:'a -> f:'b -> [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval eprint_s : [< `This_is_async__Think_about_blocking ] -> [> `This_is_async__Think_about_blocking ]
Sourceval eprint_s_nonblocking : ?mach:unit -> Sexplib.Sexp.t -> unit
Sourcemodule LargeFile = Async_unix.LargeFile
Sourcemodule Sexp = Async_unix.Sexp
Sourceval exit : ?force:unit Async_kernel.Deferred.t -> int -> 'a Async_kernel.Deferred.t

Async_command

Sourcemodule Command : sig ... end

Async_rpc

include module type of struct include Async_rpc end
Sourcemodule Rpc = Async_rpc.Rpc
module Versioned_rpc = Async_rpc.Versioned_rpc
Sourcemodule Quickcheck : sig ... end
Sourcemodule Expect_test_config : sig ... end

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:

Sourcemodule Ppx_log_syntax : sig ... end
OCaml

Innovation. Community. Security.