package lsp

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

Source file monad.ml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
module Make (M : Monad_intf.S1_base) = struct
  include M

  module O = struct
    let ( let+ ) x f = M.( >>= ) x (fun x -> M.return (f x))

    let ( and+ ) x y =
      let open M in
      x >>= fun x ->
      y >>= fun y -> return (x, y)

    let ( let* ) = M.( >>= )
  end
end

module Id = Make (struct
  type 'a t = 'a

  let return x = x

  let ( >>= ) x f = f x
end)
OCaml

Innovation. Community. Security.