package async_kernel

  1. Overview
  2. Docs
Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source

Source file eager_deferred.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
open! Core
open! Async_kernel
open! Import

module type S = Eager_deferred_intf.S

include Eager_deferred1

module Use = struct
  module Deferred = struct
    type 'a t = 'a Deferred.t

    include Eager_deferred1
  end

  include (Eager_deferred1 : Monad.Infix with type 'a t := 'a Deferred.t)
  include Eager_deferred1.Let_syntax

  let upon = Eager_deferred1.upon
  let ( >>> ) = Eager_deferred1.Infix.( >>> )

  let ( >>=? ) x f =
    x
    >>= function
    | Error _ as error -> return error
    | Ok v -> f v
  ;;

  let ( >>|? ) x f =
    x
    >>| function
    | Error _ as error -> error
    | Ok v -> Ok (f v)
  ;;
end
OCaml

Innovation. Community. Security.