Source file ppx_monad_seq.ml

1
2
3
4
5
6
7
8
9
10
open Ppxlib

let mk_return ~loc x =
  [%expr Stdlib.Seq.return [%e x]]

let mk_bind ~loc e f =
  [%expr Stdlib.Seq.flat_map [%e f] [%e e]]

let () = Ppx_monad.register "seq"
    ~mk_return ~mk_bind