File: polymorphic_recursion.mlt

package info (click to toggle)
ppx-bin-prot 0.17.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 396 kB
  • sloc: ml: 5,351; makefile: 15
file content (30 lines) | stat: -rw-r--r-- 1,046 bytes parent folder | download | duplicates (2)
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
open Bin_prot.Std;;

#verbose true

module Simple = struct
  type 'a t = C of 'a list t * string t [@@deriving bin_io ~localize]
end

[%%expect
  {|
module Simple :
  sig
    type 'a t = C of 'a list t * string t
    val bin_shape_t : Bin_shape.t -> Bin_shape.t
    val bin_size_t__local :
      'a Bin_prot.Size.sizer_local -> 'a t Bin_prot.Size.sizer_local
    val bin_size_t : 'a Bin_prot.Size.sizer -> 'a t Bin_prot.Size.sizer
    val bin_write_t__local :
      'a Bin_prot.Write.writer_local -> 'a t Bin_prot.Write.writer_local
    val bin_write_t : 'a Bin_prot.Write.writer -> 'a t Bin_prot.Write.writer
    val bin_writer_t :
      'a Bin_prot.Type_class.writer -> 'a t Bin_prot.Type_class.writer
    val __bin_read_t__ :
      'a Bin_prot.Read.reader -> (int -> 'a t) Bin_prot.Read.reader
    val bin_read_t : 'a Bin_prot.Read.reader -> 'a t Bin_prot.Read.reader
    val bin_reader_t :
      'a Bin_prot.Type_class.reader -> 'a t Bin_prot.Type_class.reader
    val bin_t : 'a Bin_prot.Type_class.t -> 'a t Bin_prot.Type_class.t
  end
|}]