Skip to content

Commit 9882905

Browse files
committed
remove js_unsafe module
1 parent 01a590d commit 9882905

15 files changed

+1298
-1243
lines changed

Makefile

-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,6 @@ libs:
3838
install:
3939
@echo "Installation"
4040
cp $(RUNTIME)/*.cmt* $(RUNTIME)/*.cmj* $(RUNTIME)/js.ml $(RUNTIME)/js.cmi \
41-
$(RUNTIME)/js_unsafe.cmi \
4241
$(STDLIB)/*.cm* $(STDLIB)/*.ml $(STDLIB)/*.mli \
4342
$(OTHERS)/*.ml $(OTHERS)/*.mli $(OTHERS)/*.cm* $(DEST)
4443

jscomp/runtime/Makefile

+6-7
Original file line numberDiff line numberDiff line change
@@ -14,26 +14,25 @@ OTHERS= caml_array caml_string caml_bytes\
1414
caml_missing_polyfill\
1515
bs_string js_nativeint js_int64 \
1616

17-
SOURCE_LIST= $(OTHERS) bs_obj caml_builtin_exceptions block js js_unsafe caml_primitive
17+
SOURCE_LIST= $(OTHERS) bs_obj caml_builtin_exceptions block js caml_primitive
1818

1919

2020
caml_oo.cmj : caml_array.cmj
21-
js_unsafe.cmj:js_unsafe.cmi js.cmj js.cmi
22-
js_unsafe.cmi js.cmj: js.cmi
21+
js.cmj: js.cmi
2322
caml_format.cmj caml_io.cmj caml_oo_curry.cmj: curry.cmj
2423
caml_format.cmj: caml_int64.cmj caml_int32.cmj caml_utils.cmj caml_string.cmj
2524
caml_weak.cmj caml_module.cmj: caml_obj.cmj js_primitive.cmj
26-
caml_builtin_exceptions.cmj: caml_builtin_exceptions.cmi js_unsafe.cmi
27-
block.cmj: block.cmi js.cmi js_unsafe.cmi
25+
caml_builtin_exceptions.cmj: caml_builtin_exceptions.cmi js.cmi
26+
block.cmj: block.cmi js.cmi
2827
caml_primitive.cmj: caml_primitive.cmi
2928
caml_int64.cmj : caml_obj.cmj
3029
bs_obj.cmj: js.cmi
3130
# or we can do a post-processing to add missing cmj dependency manually
3231
js_exn.cmj caml_js_exceptions.cmj : caml_exceptions.cmj
33-
$(addsuffix .cmj, $(OTHERS)): caml_builtin_exceptions.cmj block.cmj js.cmj js_unsafe.cmj caml_primitive.cmj
32+
$(addsuffix .cmj, $(OTHERS)): caml_builtin_exceptions.cmj block.cmj js.cmj caml_primitive.cmj
3433

3534
## since we use ppx
36-
$(addsuffix .cmi, $(OTHERS)): js.cmi js_unsafe.cmj js_unsafe.cmi js.cmj
35+
$(addsuffix .cmi, $(OTHERS)): js.cmi js.cmj
3736

3837

3938

jscomp/runtime/js.ml

+65-13
Original file line numberDiff line numberDiff line change
@@ -34,19 +34,6 @@
3434
3535
*)
3636

37-
(** {2 Internal types for FFI}
38-
39-
these types are not used by normal users
40-
*)
41-
module MapperRt = Js_mapperRt
42-
43-
module Internal = struct
44-
type (-'obj, +'a) meth_callback
45-
type (-'arg, + 'result) meth
46-
type (-'arg, + 'result) fn
47-
(** Js uncurried function *)
48-
end
49-
5037
(* {2 Types for JS objects} *)
5138

5239
type +'a t
@@ -57,6 +44,71 @@ type + 'a null
5744
this type is the same as [Js.Null.t]
5845
See {!Js.Null}
5946
*)
47+
48+
(** {2 Internal types for FFI}
49+
50+
these types are not used by normal users
51+
*)
52+
module MapperRt = Js_mapperRt
53+
54+
55+
56+
module Internal = struct
57+
(* Generated by scripts/js_unsafe_gen.ml *)
58+
type (-'obj, +'a) meth_callback
59+
type (-'arg, + 'result) meth
60+
type (-'arg, + 'result) fn
61+
(** Js uncurried function *)
62+
external (!) : 'a t -> 'a = "#unsafe_downgrade"
63+
external debugger : unit -> unit = "#debugger"
64+
external raw_expr : string -> 'a = "#raw_expr"
65+
external raw_stmt : string -> 'a = "#raw_stmt"
66+
external raw_function: string -> 'a = "#raw_function"
67+
external unsafe_downgrade : 'a t -> 'a = "#unsafe_downgrade"
68+
69+
external fn_mk0 : (unit -> 'a0) -> (([`Arity_0], 'a0) fn) = "#fn_mk" "0"
70+
external fn_mk1 : ('a0 -> 'a1) -> (([`Arity_1 of ( 'a0 )], 'a1) fn) = "#fn_mk" "1"
71+
external fn_mk2 : ('a0 -> 'a1 -> 'a2) -> (([`Arity_2 of ( 'a0 * 'a1 )], 'a2) fn) = "#fn_mk" "2"
72+
external fn_mk3 : ('a0 -> 'a1 -> 'a2 -> 'a3) -> (([`Arity_3 of ( 'a0 * 'a1 * 'a2 )], 'a3) fn) = "#fn_mk" "3"
73+
external fn_mk4 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4) -> (([`Arity_4 of ( 'a0 * 'a1 * 'a2 * 'a3 )], 'a4) fn) = "#fn_mk" "4"
74+
external fn_mk5 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5) -> (([`Arity_5 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 )], 'a5) fn) = "#fn_mk" "5"
75+
external fn_mk6 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6) -> (([`Arity_6 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 )], 'a6) fn) = "#fn_mk" "6"
76+
external fn_mk7 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7) -> (([`Arity_7 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 )], 'a7) fn) = "#fn_mk" "7"
77+
external fn_mk8 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8) -> (([`Arity_8 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 )], 'a8) fn) = "#fn_mk" "8"
78+
external fn_mk9 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9) -> (([`Arity_9 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 )], 'a9) fn) = "#fn_mk" "9"
79+
external fn_method1 : ('a0 -> 'a1) -> (([`Arity_1 of ( 'a0 )], 'a1 ) meth_callback) = "#fn_method" "1"
80+
external fn_method2 : ('a0 -> 'a1 -> 'a2) -> (([`Arity_2 of ( 'a0 * 'a1 )], 'a2 ) meth_callback) = "#fn_method" "2"
81+
external fn_method3 : ('a0 -> 'a1 -> 'a2 -> 'a3) -> (([`Arity_3 of ( 'a0 * 'a1 * 'a2 )], 'a3 ) meth_callback) = "#fn_method" "3"
82+
external fn_method4 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4) -> (([`Arity_4 of ( 'a0 * 'a1 * 'a2 * 'a3 )], 'a4 ) meth_callback) = "#fn_method" "4"
83+
external fn_method5 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5) -> (([`Arity_5 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 )], 'a5 ) meth_callback) = "#fn_method" "5"
84+
external fn_method6 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6) -> (([`Arity_6 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 )], 'a6 ) meth_callback) = "#fn_method" "6"
85+
external fn_method7 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7) -> (([`Arity_7 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 )], 'a7 ) meth_callback) = "#fn_method" "7"
86+
external fn_method8 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8) -> (([`Arity_8 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 )], 'a8 ) meth_callback) = "#fn_method" "8"
87+
external fn_method9 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9) -> (([`Arity_9 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 )], 'a9 ) meth_callback) = "#fn_method" "9"
88+
external fn_method10 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'a10) -> (([`Arity_10 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 * 'a9 )], 'a10 ) meth_callback) = "#fn_method" "10"
89+
external fn_run0 : (([`Arity_0], 'a0) fn) -> 'a0 = "#fn_run" "0"
90+
external fn_run1 : (([`Arity_1 of ( 'a0 )], 'a1) fn) -> ('a0 -> 'a1 ) = "#fn_run" "1"
91+
external fn_run2 : (([`Arity_2 of ( 'a0 * 'a1 )], 'a2) fn) -> ('a0 -> 'a1 -> 'a2 ) = "#fn_run" "2"
92+
external fn_run3 : (([`Arity_3 of ( 'a0 * 'a1 * 'a2 )], 'a3) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 ) = "#fn_run" "3"
93+
external fn_run4 : (([`Arity_4 of ( 'a0 * 'a1 * 'a2 * 'a3 )], 'a4) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 ) = "#fn_run" "4"
94+
external fn_run5 : (([`Arity_5 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 )], 'a5) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 ) = "#fn_run" "5"
95+
external fn_run6 : (([`Arity_6 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 )], 'a6) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 ) = "#fn_run" "6"
96+
external fn_run7 : (([`Arity_7 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 )], 'a7) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 ) = "#fn_run" "7"
97+
external fn_run8 : (([`Arity_8 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 )], 'a8) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 ) = "#fn_run" "8"
98+
external fn_run9 : (([`Arity_9 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 )], 'a9) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 ) = "#fn_run" "9"
99+
external method_run0 : (([`Arity_0], 'a0) meth) -> 'a0 = "#method_run" "0"
100+
external method_run1 : (([`Arity_1 of ( 'a0 )], 'a1) meth) -> ('a0 -> 'a1 ) = "#method_run" "1"
101+
external method_run2 : (([`Arity_2 of ( 'a0 * 'a1 )], 'a2) meth) -> ('a0 -> 'a1 -> 'a2 ) = "#method_run" "2"
102+
external method_run3 : (([`Arity_3 of ( 'a0 * 'a1 * 'a2 )], 'a3) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 ) = "#method_run" "3"
103+
external method_run4 : (([`Arity_4 of ( 'a0 * 'a1 * 'a2 * 'a3 )], 'a4) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 ) = "#method_run" "4"
104+
external method_run5 : (([`Arity_5 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 )], 'a5) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 ) = "#method_run" "5"
105+
external method_run6 : (([`Arity_6 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 )], 'a6) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 ) = "#method_run" "6"
106+
external method_run7 : (([`Arity_7 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 )], 'a7) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 ) = "#method_run" "7"
107+
external method_run8 : (([`Arity_8 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 )], 'a8) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 ) = "#method_run" "8"
108+
external method_run9 : (([`Arity_9 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 )], 'a9) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 ) = "#method_run" "9"
109+
end
110+
111+
60112

61113
type + 'a undefined
62114
(** value of this type can be either [undefined] or ['a]

jscomp/runtime/js.mli

+61-11
Original file line numberDiff line numberDiff line change
@@ -41,17 +41,6 @@
4141
]}
4242
*)
4343

44-
(* internal types for FFI, these types are not used by normal users *)
45-
46-
(**/**)
47-
module MapperRt = Js_mapperRt
48-
module Internal : sig
49-
type (-'obj, +'a) meth_callback
50-
type (-'arg, + 'result) meth
51-
type (-'arg, + 'result) fn
52-
end
53-
(**/**)
54-
5544
(** Types for JS objects *)
5645

5746
type +'a t
@@ -63,6 +52,67 @@ type +'a t
6352
]}
6453
*)
6554

55+
(* internal types for FFI, these types are not used by normal users *)
56+
57+
(**/**)
58+
module MapperRt = Js_mapperRt
59+
module Internal : sig
60+
(* Generated by scripts/js_unsafe_gen.ml *)
61+
type (-'obj, +'a) meth_callback
62+
type (-'arg, + 'result) meth
63+
type (-'arg, + 'result) fn
64+
(** Js uncurried function *)
65+
external (!) : 'a t -> 'a = "#unsafe_downgrade"
66+
external debugger : unit -> unit = "#debugger"
67+
external raw_expr : string -> 'a = "#raw_expr"
68+
external raw_stmt : string -> 'a = "#raw_stmt"
69+
external raw_function: string -> 'a = "#raw_function"
70+
external unsafe_downgrade : 'a t -> 'a = "#unsafe_downgrade"
71+
72+
external fn_mk0 : (unit -> 'a0) -> (([`Arity_0], 'a0) fn) = "#fn_mk" "0"
73+
external fn_mk1 : ('a0 -> 'a1) -> (([`Arity_1 of ( 'a0 )], 'a1) fn) = "#fn_mk" "1"
74+
external fn_mk2 : ('a0 -> 'a1 -> 'a2) -> (([`Arity_2 of ( 'a0 * 'a1 )], 'a2) fn) = "#fn_mk" "2"
75+
external fn_mk3 : ('a0 -> 'a1 -> 'a2 -> 'a3) -> (([`Arity_3 of ( 'a0 * 'a1 * 'a2 )], 'a3) fn) = "#fn_mk" "3"
76+
external fn_mk4 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4) -> (([`Arity_4 of ( 'a0 * 'a1 * 'a2 * 'a3 )], 'a4) fn) = "#fn_mk" "4"
77+
external fn_mk5 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5) -> (([`Arity_5 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 )], 'a5) fn) = "#fn_mk" "5"
78+
external fn_mk6 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6) -> (([`Arity_6 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 )], 'a6) fn) = "#fn_mk" "6"
79+
external fn_mk7 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7) -> (([`Arity_7 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 )], 'a7) fn) = "#fn_mk" "7"
80+
external fn_mk8 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8) -> (([`Arity_8 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 )], 'a8) fn) = "#fn_mk" "8"
81+
external fn_mk9 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9) -> (([`Arity_9 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 )], 'a9) fn) = "#fn_mk" "9"
82+
external fn_method1 : ('a0 -> 'a1) -> (([`Arity_1 of ( 'a0 )], 'a1 ) meth_callback) = "#fn_method" "1"
83+
external fn_method2 : ('a0 -> 'a1 -> 'a2) -> (([`Arity_2 of ( 'a0 * 'a1 )], 'a2 ) meth_callback) = "#fn_method" "2"
84+
external fn_method3 : ('a0 -> 'a1 -> 'a2 -> 'a3) -> (([`Arity_3 of ( 'a0 * 'a1 * 'a2 )], 'a3 ) meth_callback) = "#fn_method" "3"
85+
external fn_method4 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4) -> (([`Arity_4 of ( 'a0 * 'a1 * 'a2 * 'a3 )], 'a4 ) meth_callback) = "#fn_method" "4"
86+
external fn_method5 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5) -> (([`Arity_5 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 )], 'a5 ) meth_callback) = "#fn_method" "5"
87+
external fn_method6 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6) -> (([`Arity_6 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 )], 'a6 ) meth_callback) = "#fn_method" "6"
88+
external fn_method7 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7) -> (([`Arity_7 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 )], 'a7 ) meth_callback) = "#fn_method" "7"
89+
external fn_method8 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8) -> (([`Arity_8 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 )], 'a8 ) meth_callback) = "#fn_method" "8"
90+
external fn_method9 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9) -> (([`Arity_9 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 )], 'a9 ) meth_callback) = "#fn_method" "9"
91+
external fn_method10 : ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 -> 'a10) -> (([`Arity_10 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 * 'a9 )], 'a10 ) meth_callback) = "#fn_method" "10"
92+
external fn_run0 : (([`Arity_0], 'a0) fn) -> 'a0 = "#fn_run" "0"
93+
external fn_run1 : (([`Arity_1 of ( 'a0 )], 'a1) fn) -> ('a0 -> 'a1 ) = "#fn_run" "1"
94+
external fn_run2 : (([`Arity_2 of ( 'a0 * 'a1 )], 'a2) fn) -> ('a0 -> 'a1 -> 'a2 ) = "#fn_run" "2"
95+
external fn_run3 : (([`Arity_3 of ( 'a0 * 'a1 * 'a2 )], 'a3) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 ) = "#fn_run" "3"
96+
external fn_run4 : (([`Arity_4 of ( 'a0 * 'a1 * 'a2 * 'a3 )], 'a4) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 ) = "#fn_run" "4"
97+
external fn_run5 : (([`Arity_5 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 )], 'a5) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 ) = "#fn_run" "5"
98+
external fn_run6 : (([`Arity_6 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 )], 'a6) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 ) = "#fn_run" "6"
99+
external fn_run7 : (([`Arity_7 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 )], 'a7) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 ) = "#fn_run" "7"
100+
external fn_run8 : (([`Arity_8 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 )], 'a8) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 ) = "#fn_run" "8"
101+
external fn_run9 : (([`Arity_9 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 )], 'a9) fn) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 ) = "#fn_run" "9"
102+
external method_run0 : (([`Arity_0], 'a0) meth) -> 'a0 = "#method_run" "0"
103+
external method_run1 : (([`Arity_1 of ( 'a0 )], 'a1) meth) -> ('a0 -> 'a1 ) = "#method_run" "1"
104+
external method_run2 : (([`Arity_2 of ( 'a0 * 'a1 )], 'a2) meth) -> ('a0 -> 'a1 -> 'a2 ) = "#method_run" "2"
105+
external method_run3 : (([`Arity_3 of ( 'a0 * 'a1 * 'a2 )], 'a3) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 ) = "#method_run" "3"
106+
external method_run4 : (([`Arity_4 of ( 'a0 * 'a1 * 'a2 * 'a3 )], 'a4) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 ) = "#method_run" "4"
107+
external method_run5 : (([`Arity_5 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 )], 'a5) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 ) = "#method_run" "5"
108+
external method_run6 : (([`Arity_6 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 )], 'a6) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 ) = "#method_run" "6"
109+
external method_run7 : (([`Arity_7 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 )], 'a7) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 ) = "#method_run" "7"
110+
external method_run8 : (([`Arity_8 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 )], 'a8) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 ) = "#method_run" "8"
111+
external method_run9 : (([`Arity_9 of ( 'a0 * 'a1 * 'a2 * 'a3 * 'a4 * 'a5 * 'a6 * 'a7 * 'a8 )], 'a9) meth) -> ('a0 -> 'a1 -> 'a2 -> 'a3 -> 'a4 -> 'a5 -> 'a6 -> 'a7 -> 'a8 -> 'a9 ) = "#method_run" "9"
112+
end
113+
(**/**)
114+
115+
66116
type + 'a null
67117
(** nullable, value of this type can be either [null] or ['a]
68118
this type is the same as type [t] in {!Null}

0 commit comments

Comments
 (0)