File: type_equal.ml

package info (click to toggle)
typerep 1%3A0.15.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 252 kB
  • sloc: ml: 2,578; makefile: 21
file content (12 lines) | stat: -rw-r--r-- 280 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
type ('a, 'b) t = ('a, 'b) Base.Type_equal.t = T : ('a, 'a) t
type ('a, 'b) equal = ('a, 'b) t

let refl = T
let conv : type a b. (a, b) t -> a -> b = fun T x -> x

module Lift (X : sig
    type 'a t
  end) =
struct
  let lift (type a b) (T : (a, b) t) : (a X.t, b X.t) t = T
end