File: injectivity.ml.ref

package info (click to toggle)
ocamlformat 0.28.1-1
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 14,436 kB
  • sloc: ml: 63,321; pascal: 4,769; lisp: 229; sh: 217; makefile: 121
file content (82 lines) | stat: -rw-r--r-- 1,446 bytes parent folder | download
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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
type !'a t = private 'a ref
type +!'a t = private 'a
type -!'a t = private 'a -> unit
type +!'a t = private 'a
type -!'a t = private 'a -> unit
type +!'a t = private 'a
type -!'a t = private 'a -> unit
type +!'a t = private 'a
type -!'a t = private 'a -> unit
type +-'a t = int
type -+'a t = int
type !+-'a t = A
type !-+'a t = A
type +-!'a t = A
type -+!'a t = A

module M : sig
  type +!'a t
end = struct
  type 'a t = 'a list
end

module N : sig
  type +'a t
end = struct
  type 'a t = 'a list
end

type !'a t = 'a list
type !'a u = int

module M : sig
  type !'a t = private < m : int ; .. >
end = struct
  type 'a t = < m : int >
end

type 'a t = 'b constraint 'a = < b : 'b >
type !'b u = < b : 'b > t
type !_ t = X
type (_, _) eq = Refl : ('a, 'a) eq
type !'a t = private 'b constraint 'a = < b : 'b >
type !'a t = private 'b constraint 'a = < b : 'b ; c : 'c >

module M : sig
  type !'a t constraint 'a = < b : 'b ; c : 'c >
end = struct
  type nonrec 'a t = 'a t
end

type !'a u = int constraint 'a = 'b t

module F (X : sig
  type 'a t
end) =
struct
  type !'a u = 'b constraint 'a = < b : 'b > constraint 'b = _ X.t
end

module F (X : sig
  type 'a t
end) =
struct
  type !'a u = 'b X.t constraint 'a = < b : 'b X.t >
end

module F (X : sig
  type 'a t
end) =
struct
  type !'a u = 'b constraint 'a = < b : (_ X.t as 'b) >
end

module rec R : sig
  type !'a t = [ `A of 'a S.t ]
end =
  R

and S : sig
  type !'a t = 'a R.t
end =
  S