@tellahq/rescript 10.1.0-alpha.2 → 10.1.4-republish-2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (668) hide show
  1. package/CHANGELOG.md +204 -2
  2. package/README.md +1 -1
  3. package/darwinarm64/bsb_helper.exe +0 -0
  4. package/darwinarm64/bsc.exe +0 -0
  5. package/darwinarm64/ninja.exe +0 -0
  6. package/darwinarm64/rescript.exe +0 -0
  7. package/docs/docson/build-schema.json +497 -516
  8. package/lib/4.06.1/bsb_helper.ml +6 -1
  9. package/lib/4.06.1/rescript.ml +1414 -1191
  10. package/lib/4.06.1/whole_compiler.ml +69844 -69069
  11. package/lib/es6/belt_internalBuckets.js +13 -13
  12. package/lib/es6/caml_float.js +5 -5
  13. package/lib/es6/caml_format.js +1 -1
  14. package/lib/es6/caml_int64.js +1 -1
  15. package/lib/es6/caml_obj.js +26 -6
  16. package/lib/es6/complex.js +4 -4
  17. package/lib/es6/js.js +3 -0
  18. package/lib/es6/js_promise2.js +16 -0
  19. package/lib/es6/jsxPPXReactSupport.js +26 -0
  20. package/lib/js/belt_internalBuckets.js +13 -13
  21. package/lib/js/caml_float.js +5 -5
  22. package/lib/js/caml_format.js +1 -1
  23. package/lib/js/caml_int64.js +1 -1
  24. package/lib/js/caml_obj.js +26 -6
  25. package/lib/js/complex.js +4 -4
  26. package/lib/js/js.js +3 -0
  27. package/lib/js/js_promise2.js +14 -0
  28. package/lib/js/jsxPPXReactSupport.js +24 -0
  29. package/package.json +2 -1
  30. package/scripts/buildNinjaBinary.js +29 -0
  31. package/scripts/install.js +7 -3
  32. package/scripts/installUtils.js +9 -1
  33. package/scripts/rescript_arg.js +2 -4
  34. package/scripts/rescript_format.js +73 -39
  35. package/win32/refmt.exe +0 -0
  36. package/darwin/bsb_helper.exe +0 -0
  37. package/darwin/bsc.exe +0 -0
  38. package/darwin/ninja.COPYING +0 -202
  39. package/darwin/ninja.exe +0 -0
  40. package/darwin/rescript.exe +0 -0
  41. package/darwinarm64/ninja.COPYING +0 -202
  42. package/freebsd/ninja.COPYING +0 -202
  43. package/lib/ocaml/arg.cmi +0 -0
  44. package/lib/ocaml/arg.cmt +0 -0
  45. package/lib/ocaml/arg.cmti +0 -0
  46. package/lib/ocaml/arg.ml +0 -359
  47. package/lib/ocaml/arg.mli +0 -185
  48. package/lib/ocaml/array.cmi +0 -0
  49. package/lib/ocaml/array.cmt +0 -0
  50. package/lib/ocaml/array.cmti +0 -0
  51. package/lib/ocaml/array.ml +0 -307
  52. package/lib/ocaml/array.mli +0 -275
  53. package/lib/ocaml/arrayLabels.cmi +0 -0
  54. package/lib/ocaml/arrayLabels.cmt +0 -0
  55. package/lib/ocaml/arrayLabels.cmti +0 -0
  56. package/lib/ocaml/arrayLabels.ml +0 -307
  57. package/lib/ocaml/arrayLabels.mli +0 -276
  58. package/lib/ocaml/belt.cmi +0 -0
  59. package/lib/ocaml/belt.cmt +0 -0
  60. package/lib/ocaml/belt.ml +0 -352
  61. package/lib/ocaml/belt_Array.cmi +0 -0
  62. package/lib/ocaml/belt_Array.cmt +0 -0
  63. package/lib/ocaml/belt_Array.cmti +0 -0
  64. package/lib/ocaml/belt_Array.ml +0 -525
  65. package/lib/ocaml/belt_Array.mli +0 -707
  66. package/lib/ocaml/belt_Float.cmi +0 -0
  67. package/lib/ocaml/belt_Float.cmt +0 -0
  68. package/lib/ocaml/belt_Float.cmti +0 -0
  69. package/lib/ocaml/belt_Float.ml +0 -50
  70. package/lib/ocaml/belt_Float.mli +0 -106
  71. package/lib/ocaml/belt_HashMap.cmi +0 -0
  72. package/lib/ocaml/belt_HashMap.cmt +0 -0
  73. package/lib/ocaml/belt_HashMap.cmti +0 -0
  74. package/lib/ocaml/belt_HashMap.ml +0 -226
  75. package/lib/ocaml/belt_HashMap.mli +0 -436
  76. package/lib/ocaml/belt_HashMapInt.cmi +0 -0
  77. package/lib/ocaml/belt_HashMapInt.cmt +0 -0
  78. package/lib/ocaml/belt_HashMapInt.cmti +0 -0
  79. package/lib/ocaml/belt_HashMapInt.ml +0 -206
  80. package/lib/ocaml/belt_HashMapInt.mli +0 -50
  81. package/lib/ocaml/belt_HashMapString.cmi +0 -0
  82. package/lib/ocaml/belt_HashMapString.cmt +0 -0
  83. package/lib/ocaml/belt_HashMapString.cmti +0 -0
  84. package/lib/ocaml/belt_HashMapString.ml +0 -206
  85. package/lib/ocaml/belt_HashMapString.mli +0 -50
  86. package/lib/ocaml/belt_HashSet.cmi +0 -0
  87. package/lib/ocaml/belt_HashSet.cmt +0 -0
  88. package/lib/ocaml/belt_HashSet.cmti +0 -0
  89. package/lib/ocaml/belt_HashSet.ml +0 -196
  90. package/lib/ocaml/belt_HashSet.mli +0 -125
  91. package/lib/ocaml/belt_HashSetInt.cmi +0 -0
  92. package/lib/ocaml/belt_HashSetInt.cmt +0 -0
  93. package/lib/ocaml/belt_HashSetInt.cmti +0 -0
  94. package/lib/ocaml/belt_HashSetInt.ml +0 -155
  95. package/lib/ocaml/belt_HashSetInt.mli +0 -74
  96. package/lib/ocaml/belt_HashSetString.cmi +0 -0
  97. package/lib/ocaml/belt_HashSetString.cmt +0 -0
  98. package/lib/ocaml/belt_HashSetString.cmti +0 -0
  99. package/lib/ocaml/belt_HashSetString.ml +0 -156
  100. package/lib/ocaml/belt_HashSetString.mli +0 -74
  101. package/lib/ocaml/belt_Id.cmi +0 -0
  102. package/lib/ocaml/belt_Id.cmt +0 -0
  103. package/lib/ocaml/belt_Id.cmti +0 -0
  104. package/lib/ocaml/belt_Id.ml +0 -133
  105. package/lib/ocaml/belt_Id.mli +0 -171
  106. package/lib/ocaml/belt_Int.cmi +0 -0
  107. package/lib/ocaml/belt_Int.cmt +0 -0
  108. package/lib/ocaml/belt_Int.cmti +0 -0
  109. package/lib/ocaml/belt_Int.ml +0 -50
  110. package/lib/ocaml/belt_Int.mli +0 -103
  111. package/lib/ocaml/belt_List.cmi +0 -0
  112. package/lib/ocaml/belt_List.cmt +0 -0
  113. package/lib/ocaml/belt_List.cmti +0 -0
  114. package/lib/ocaml/belt_List.ml +0 -803
  115. package/lib/ocaml/belt_List.mli +0 -844
  116. package/lib/ocaml/belt_Map.cmi +0 -0
  117. package/lib/ocaml/belt_Map.cmt +0 -0
  118. package/lib/ocaml/belt_Map.cmti +0 -0
  119. package/lib/ocaml/belt_Map.ml +0 -170
  120. package/lib/ocaml/belt_Map.mli +0 -496
  121. package/lib/ocaml/belt_MapDict.cmi +0 -0
  122. package/lib/ocaml/belt_MapDict.cmt +0 -0
  123. package/lib/ocaml/belt_MapDict.cmti +0 -0
  124. package/lib/ocaml/belt_MapDict.ml +0 -278
  125. package/lib/ocaml/belt_MapDict.mli +0 -268
  126. package/lib/ocaml/belt_MapInt.cmi +0 -0
  127. package/lib/ocaml/belt_MapInt.cmt +0 -0
  128. package/lib/ocaml/belt_MapInt.cmti +0 -0
  129. package/lib/ocaml/belt_MapInt.ml +0 -169
  130. package/lib/ocaml/belt_MapInt.mli +0 -187
  131. package/lib/ocaml/belt_MapString.cmi +0 -0
  132. package/lib/ocaml/belt_MapString.cmt +0 -0
  133. package/lib/ocaml/belt_MapString.cmti +0 -0
  134. package/lib/ocaml/belt_MapString.ml +0 -169
  135. package/lib/ocaml/belt_MapString.mli +0 -187
  136. package/lib/ocaml/belt_MutableMap.cmi +0 -0
  137. package/lib/ocaml/belt_MutableMap.cmt +0 -0
  138. package/lib/ocaml/belt_MutableMap.cmti +0 -0
  139. package/lib/ocaml/belt_MutableMap.ml +0 -241
  140. package/lib/ocaml/belt_MutableMap.mli +0 -145
  141. package/lib/ocaml/belt_MutableMapInt.cmi +0 -0
  142. package/lib/ocaml/belt_MutableMapInt.cmt +0 -0
  143. package/lib/ocaml/belt_MutableMapInt.cmti +0 -0
  144. package/lib/ocaml/belt_MutableMapInt.ml +0 -172
  145. package/lib/ocaml/belt_MutableMapInt.mli +0 -135
  146. package/lib/ocaml/belt_MutableMapString.cmi +0 -0
  147. package/lib/ocaml/belt_MutableMapString.cmt +0 -0
  148. package/lib/ocaml/belt_MutableMapString.cmti +0 -0
  149. package/lib/ocaml/belt_MutableMapString.ml +0 -172
  150. package/lib/ocaml/belt_MutableMapString.mli +0 -135
  151. package/lib/ocaml/belt_MutableQueue.cmi +0 -0
  152. package/lib/ocaml/belt_MutableQueue.cmt +0 -0
  153. package/lib/ocaml/belt_MutableQueue.cmti +0 -0
  154. package/lib/ocaml/belt_MutableQueue.ml +0 -222
  155. package/lib/ocaml/belt_MutableQueue.mli +0 -116
  156. package/lib/ocaml/belt_MutableSet.cmi +0 -0
  157. package/lib/ocaml/belt_MutableSet.cmt +0 -0
  158. package/lib/ocaml/belt_MutableSet.cmti +0 -0
  159. package/lib/ocaml/belt_MutableSet.ml +0 -371
  160. package/lib/ocaml/belt_MutableSet.mli +0 -617
  161. package/lib/ocaml/belt_MutableSetInt.cmi +0 -0
  162. package/lib/ocaml/belt_MutableSetInt.cmt +0 -0
  163. package/lib/ocaml/belt_MutableSetInt.cmti +0 -0
  164. package/lib/ocaml/belt_MutableSetInt.ml +0 -342
  165. package/lib/ocaml/belt_MutableSetInt.mli +0 -124
  166. package/lib/ocaml/belt_MutableSetString.cmi +0 -0
  167. package/lib/ocaml/belt_MutableSetString.cmt +0 -0
  168. package/lib/ocaml/belt_MutableSetString.cmti +0 -0
  169. package/lib/ocaml/belt_MutableSetString.ml +0 -342
  170. package/lib/ocaml/belt_MutableSetString.mli +0 -124
  171. package/lib/ocaml/belt_MutableStack.cmi +0 -0
  172. package/lib/ocaml/belt_MutableStack.cmt +0 -0
  173. package/lib/ocaml/belt_MutableStack.cmti +0 -0
  174. package/lib/ocaml/belt_MutableStack.ml +0 -106
  175. package/lib/ocaml/belt_MutableStack.mli +0 -63
  176. package/lib/ocaml/belt_Option.cmi +0 -0
  177. package/lib/ocaml/belt_Option.cmt +0 -0
  178. package/lib/ocaml/belt_Option.cmti +0 -0
  179. package/lib/ocaml/belt_Option.ml +0 -93
  180. package/lib/ocaml/belt_Option.mli +0 -270
  181. package/lib/ocaml/belt_Range.cmi +0 -0
  182. package/lib/ocaml/belt_Range.cmt +0 -0
  183. package/lib/ocaml/belt_Range.cmti +0 -0
  184. package/lib/ocaml/belt_Range.ml +0 -76
  185. package/lib/ocaml/belt_Range.mli +0 -114
  186. package/lib/ocaml/belt_Result.cmi +0 -0
  187. package/lib/ocaml/belt_Result.cmt +0 -0
  188. package/lib/ocaml/belt_Result.cmti +0 -0
  189. package/lib/ocaml/belt_Result.ml +0 -75
  190. package/lib/ocaml/belt_Result.mli +0 -205
  191. package/lib/ocaml/belt_Set.cmi +0 -0
  192. package/lib/ocaml/belt_Set.cmt +0 -0
  193. package/lib/ocaml/belt_Set.cmti +0 -0
  194. package/lib/ocaml/belt_Set.cppo.ml +0 -205
  195. package/lib/ocaml/belt_Set.cppo.mli +0 -153
  196. package/lib/ocaml/belt_Set.ml +0 -164
  197. package/lib/ocaml/belt_Set.mli +0 -523
  198. package/lib/ocaml/belt_SetDict.cmi +0 -0
  199. package/lib/ocaml/belt_SetDict.cmt +0 -0
  200. package/lib/ocaml/belt_SetDict.cmti +0 -0
  201. package/lib/ocaml/belt_SetDict.ml +0 -237
  202. package/lib/ocaml/belt_SetDict.mli +0 -567
  203. package/lib/ocaml/belt_SetInt.cmi +0 -0
  204. package/lib/ocaml/belt_SetInt.cmt +0 -0
  205. package/lib/ocaml/belt_SetInt.cmti +0 -0
  206. package/lib/ocaml/belt_SetInt.ml +0 -201
  207. package/lib/ocaml/belt_SetInt.mli +0 -151
  208. package/lib/ocaml/belt_SetString.cmi +0 -0
  209. package/lib/ocaml/belt_SetString.cmt +0 -0
  210. package/lib/ocaml/belt_SetString.cmti +0 -0
  211. package/lib/ocaml/belt_SetString.ml +0 -201
  212. package/lib/ocaml/belt_SetString.mli +0 -151
  213. package/lib/ocaml/belt_SortArray.cmi +0 -0
  214. package/lib/ocaml/belt_SortArray.cmt +0 -0
  215. package/lib/ocaml/belt_SortArray.cmti +0 -0
  216. package/lib/ocaml/belt_SortArray.ml +0 -322
  217. package/lib/ocaml/belt_SortArray.mli +0 -146
  218. package/lib/ocaml/belt_SortArrayInt.cmi +0 -0
  219. package/lib/ocaml/belt_SortArrayInt.cmt +0 -0
  220. package/lib/ocaml/belt_SortArrayInt.cmti +0 -0
  221. package/lib/ocaml/belt_SortArrayInt.ml +0 -263
  222. package/lib/ocaml/belt_SortArrayInt.mli +0 -93
  223. package/lib/ocaml/belt_SortArrayString.cmi +0 -0
  224. package/lib/ocaml/belt_SortArrayString.cmt +0 -0
  225. package/lib/ocaml/belt_SortArrayString.cmti +0 -0
  226. package/lib/ocaml/belt_SortArrayString.ml +0 -263
  227. package/lib/ocaml/belt_SortArrayString.mli +0 -93
  228. package/lib/ocaml/belt_internalAVLset.cmt +0 -0
  229. package/lib/ocaml/belt_internalAVLset.cmti +0 -0
  230. package/lib/ocaml/belt_internalAVLset.ml +0 -665
  231. package/lib/ocaml/belt_internalAVLset.mli +0 -124
  232. package/lib/ocaml/belt_internalAVLtree.cmt +0 -0
  233. package/lib/ocaml/belt_internalAVLtree.cmti +0 -0
  234. package/lib/ocaml/belt_internalAVLtree.ml +0 -762
  235. package/lib/ocaml/belt_internalAVLtree.mli +0 -215
  236. package/lib/ocaml/belt_internalBuckets.cmt +0 -0
  237. package/lib/ocaml/belt_internalBuckets.cmti +0 -0
  238. package/lib/ocaml/belt_internalBuckets.ml +0 -218
  239. package/lib/ocaml/belt_internalBuckets.mli +0 -57
  240. package/lib/ocaml/belt_internalBucketsType.cmt +0 -0
  241. package/lib/ocaml/belt_internalBucketsType.cmti +0 -0
  242. package/lib/ocaml/belt_internalBucketsType.ml +0 -59
  243. package/lib/ocaml/belt_internalBucketsType.mli +0 -46
  244. package/lib/ocaml/belt_internalMapInt.cmt +0 -0
  245. package/lib/ocaml/belt_internalMapInt.ml +0 -227
  246. package/lib/ocaml/belt_internalMapString.cmt +0 -0
  247. package/lib/ocaml/belt_internalMapString.ml +0 -227
  248. package/lib/ocaml/belt_internalSetBuckets.cmt +0 -0
  249. package/lib/ocaml/belt_internalSetBuckets.cmti +0 -0
  250. package/lib/ocaml/belt_internalSetBuckets.ml +0 -157
  251. package/lib/ocaml/belt_internalSetBuckets.mli +0 -47
  252. package/lib/ocaml/belt_internalSetInt.cmt +0 -0
  253. package/lib/ocaml/belt_internalSetInt.ml +0 -129
  254. package/lib/ocaml/belt_internalSetString.cmt +0 -0
  255. package/lib/ocaml/belt_internalSetString.ml +0 -129
  256. package/lib/ocaml/belt_internals.cmti +0 -0
  257. package/lib/ocaml/belt_internals.mli +0 -79
  258. package/lib/ocaml/buffer.cmi +0 -0
  259. package/lib/ocaml/buffer.cmt +0 -0
  260. package/lib/ocaml/buffer.cmti +0 -0
  261. package/lib/ocaml/buffer.ml +0 -250
  262. package/lib/ocaml/buffer.mli +0 -149
  263. package/lib/ocaml/bytes.cmi +0 -0
  264. package/lib/ocaml/bytes.cmt +0 -0
  265. package/lib/ocaml/bytes.cmti +0 -0
  266. package/lib/ocaml/bytes.ml +0 -431
  267. package/lib/ocaml/bytes.mli +0 -430
  268. package/lib/ocaml/bytesLabels.cmi +0 -0
  269. package/lib/ocaml/bytesLabels.cmt +0 -0
  270. package/lib/ocaml/bytesLabels.cmti +0 -0
  271. package/lib/ocaml/bytesLabels.ml +0 -428
  272. package/lib/ocaml/bytesLabels.mli +0 -276
  273. package/lib/ocaml/callback.cmi +0 -0
  274. package/lib/ocaml/callback.cmt +0 -0
  275. package/lib/ocaml/callback.cmti +0 -0
  276. package/lib/ocaml/callback.ml +0 -20
  277. package/lib/ocaml/callback.mli +0 -34
  278. package/lib/ocaml/camlinternalLazy.cmi +0 -0
  279. package/lib/ocaml/camlinternalLazy.cmt +0 -0
  280. package/lib/ocaml/camlinternalLazy.cmti +0 -0
  281. package/lib/ocaml/camlinternalLazy.ml +0 -89
  282. package/lib/ocaml/camlinternalLazy.mli +0 -27
  283. package/lib/ocaml/camlinternalMod.cmi +0 -0
  284. package/lib/ocaml/camlinternalMod.cmt +0 -0
  285. package/lib/ocaml/camlinternalMod.cmti +0 -0
  286. package/lib/ocaml/camlinternalMod.ml +0 -21
  287. package/lib/ocaml/camlinternalMod.mli +0 -25
  288. package/lib/ocaml/char.cmi +0 -0
  289. package/lib/ocaml/char.cmt +0 -0
  290. package/lib/ocaml/char.cmti +0 -0
  291. package/lib/ocaml/char.ml +0 -76
  292. package/lib/ocaml/char.mli +0 -72
  293. package/lib/ocaml/complex.cmi +0 -0
  294. package/lib/ocaml/complex.cmt +0 -0
  295. package/lib/ocaml/complex.cmti +0 -0
  296. package/lib/ocaml/complex.ml +0 -87
  297. package/lib/ocaml/complex.mli +0 -86
  298. package/lib/ocaml/digest.cmi +0 -0
  299. package/lib/ocaml/digest.cmt +0 -0
  300. package/lib/ocaml/digest.cmti +0 -0
  301. package/lib/ocaml/digest.ml +0 -66
  302. package/lib/ocaml/digest.mli +0 -68
  303. package/lib/ocaml/dom.cmi +0 -0
  304. package/lib/ocaml/dom.cmt +0 -0
  305. package/lib/ocaml/dom.ml +0 -296
  306. package/lib/ocaml/dom_storage.cmi +0 -0
  307. package/lib/ocaml/dom_storage.cmt +0 -0
  308. package/lib/ocaml/dom_storage.ml +0 -22
  309. package/lib/ocaml/dom_storage2.cmi +0 -0
  310. package/lib/ocaml/dom_storage2.cmt +0 -0
  311. package/lib/ocaml/dom_storage2.ml +0 -11
  312. package/lib/ocaml/filename.cmi +0 -0
  313. package/lib/ocaml/filename.cmt +0 -0
  314. package/lib/ocaml/filename.cmti +0 -0
  315. package/lib/ocaml/filename.ml +0 -233
  316. package/lib/ocaml/filename.mli +0 -134
  317. package/lib/ocaml/genlex.cmi +0 -0
  318. package/lib/ocaml/genlex.cmt +0 -0
  319. package/lib/ocaml/genlex.cmti +0 -0
  320. package/lib/ocaml/genlex.ml +0 -201
  321. package/lib/ocaml/genlex.mli +0 -73
  322. package/lib/ocaml/hashmap.cppo.ml +0 -214
  323. package/lib/ocaml/hashmap.cppo.mli +0 -54
  324. package/lib/ocaml/hashset.cppo.ml +0 -165
  325. package/lib/ocaml/hashset.cppo.mli +0 -77
  326. package/lib/ocaml/hashtbl.cmi +0 -0
  327. package/lib/ocaml/hashtbl.cmt +0 -0
  328. package/lib/ocaml/hashtbl.cmti +0 -0
  329. package/lib/ocaml/hashtbl.ml +0 -541
  330. package/lib/ocaml/hashtbl.mli +0 -411
  331. package/lib/ocaml/hashtblLabels.cmi +0 -0
  332. package/lib/ocaml/hashtblLabels.cmt +0 -0
  333. package/lib/ocaml/hashtblLabels.ml +0 -130
  334. package/lib/ocaml/int32.cmi +0 -0
  335. package/lib/ocaml/int32.cmt +0 -0
  336. package/lib/ocaml/int32.cmti +0 -0
  337. package/lib/ocaml/int32.ml +0 -64
  338. package/lib/ocaml/int32.mli +0 -186
  339. package/lib/ocaml/int64.cmi +0 -0
  340. package/lib/ocaml/int64.cmt +0 -0
  341. package/lib/ocaml/int64.cmti +0 -0
  342. package/lib/ocaml/int64.ml +0 -72
  343. package/lib/ocaml/int64.mli +0 -197
  344. package/lib/ocaml/internal_map.cppo.ml +0 -230
  345. package/lib/ocaml/internal_set.cppo.ml +0 -134
  346. package/lib/ocaml/js.cmi +0 -0
  347. package/lib/ocaml/js.cmt +0 -0
  348. package/lib/ocaml/js.ml +0 -313
  349. package/lib/ocaml/js_OO.cmi +0 -0
  350. package/lib/ocaml/js_OO.cmt +0 -0
  351. package/lib/ocaml/js_OO.ml +0 -180
  352. package/lib/ocaml/js_array.cmi +0 -0
  353. package/lib/ocaml/js_array.cmt +0 -0
  354. package/lib/ocaml/js_array.ml +0 -970
  355. package/lib/ocaml/js_array2.cmi +0 -0
  356. package/lib/ocaml/js_array2.cmt +0 -0
  357. package/lib/ocaml/js_array2.ml +0 -1065
  358. package/lib/ocaml/js_bigint.cmi +0 -0
  359. package/lib/ocaml/js_bigint.cmt +0 -0
  360. package/lib/ocaml/js_bigint.ml +0 -3
  361. package/lib/ocaml/js_cast.cmi +0 -0
  362. package/lib/ocaml/js_cast.cmt +0 -0
  363. package/lib/ocaml/js_cast.cmti +0 -0
  364. package/lib/ocaml/js_cast.ml +0 -29
  365. package/lib/ocaml/js_cast.mli +0 -45
  366. package/lib/ocaml/js_console.cmi +0 -0
  367. package/lib/ocaml/js_console.cmt +0 -0
  368. package/lib/ocaml/js_console.ml +0 -51
  369. package/lib/ocaml/js_date.cmi +0 -0
  370. package/lib/ocaml/js_date.cmt +0 -0
  371. package/lib/ocaml/js_date.ml +0 -1263
  372. package/lib/ocaml/js_dict.cmi +0 -0
  373. package/lib/ocaml/js_dict.cmt +0 -0
  374. package/lib/ocaml/js_dict.cmti +0 -0
  375. package/lib/ocaml/js_dict.ml +0 -114
  376. package/lib/ocaml/js_dict.mli +0 -152
  377. package/lib/ocaml/js_exn.cmi +0 -0
  378. package/lib/ocaml/js_exn.cmt +0 -0
  379. package/lib/ocaml/js_exn.cmti +0 -0
  380. package/lib/ocaml/js_exn.ml +0 -102
  381. package/lib/ocaml/js_exn.mli +0 -79
  382. package/lib/ocaml/js_float.cmi +0 -0
  383. package/lib/ocaml/js_float.cmt +0 -0
  384. package/lib/ocaml/js_float.ml +0 -294
  385. package/lib/ocaml/js_global.cmi +0 -0
  386. package/lib/ocaml/js_global.cmt +0 -0
  387. package/lib/ocaml/js_global.ml +0 -185
  388. package/lib/ocaml/js_int.cmi +0 -0
  389. package/lib/ocaml/js_int.cmt +0 -0
  390. package/lib/ocaml/js_int.ml +0 -158
  391. package/lib/ocaml/js_json.cmi +0 -0
  392. package/lib/ocaml/js_json.cmt +0 -0
  393. package/lib/ocaml/js_json.cmti +0 -0
  394. package/lib/ocaml/js_json.ml +0 -195
  395. package/lib/ocaml/js_json.mli +0 -244
  396. package/lib/ocaml/js_list.cmi +0 -0
  397. package/lib/ocaml/js_list.cmt +0 -0
  398. package/lib/ocaml/js_list.cmti +0 -0
  399. package/lib/ocaml/js_list.ml +0 -174
  400. package/lib/ocaml/js_list.mli +0 -72
  401. package/lib/ocaml/js_map.cmi +0 -0
  402. package/lib/ocaml/js_map.cmt +0 -0
  403. package/lib/ocaml/js_map.ml +0 -3
  404. package/lib/ocaml/js_mapperRt.cmi +0 -0
  405. package/lib/ocaml/js_mapperRt.cmt +0 -0
  406. package/lib/ocaml/js_mapperRt.cmti +0 -0
  407. package/lib/ocaml/js_mapperRt.ml +0 -50
  408. package/lib/ocaml/js_mapperRt.mli +0 -44
  409. package/lib/ocaml/js_math.cmi +0 -0
  410. package/lib/ocaml/js_math.cmt +0 -0
  411. package/lib/ocaml/js_math.ml +0 -626
  412. package/lib/ocaml/js_null.cmi +0 -0
  413. package/lib/ocaml/js_null.cmt +0 -0
  414. package/lib/ocaml/js_null.cmti +0 -0
  415. package/lib/ocaml/js_null.ml +0 -57
  416. package/lib/ocaml/js_null.mli +0 -87
  417. package/lib/ocaml/js_null_undefined.cmi +0 -0
  418. package/lib/ocaml/js_null_undefined.cmt +0 -0
  419. package/lib/ocaml/js_null_undefined.cmti +0 -0
  420. package/lib/ocaml/js_null_undefined.ml +0 -50
  421. package/lib/ocaml/js_null_undefined.mli +0 -85
  422. package/lib/ocaml/js_obj.cmi +0 -0
  423. package/lib/ocaml/js_obj.cmt +0 -0
  424. package/lib/ocaml/js_obj.ml +0 -100
  425. package/lib/ocaml/js_option.cmi +0 -0
  426. package/lib/ocaml/js_option.cmt +0 -0
  427. package/lib/ocaml/js_option.cmti +0 -0
  428. package/lib/ocaml/js_option.ml +0 -203
  429. package/lib/ocaml/js_option.mli +0 -52
  430. package/lib/ocaml/js_promise.cmi +0 -0
  431. package/lib/ocaml/js_promise.cmt +0 -0
  432. package/lib/ocaml/js_promise.ml +0 -100
  433. package/lib/ocaml/js_re.cmi +0 -0
  434. package/lib/ocaml/js_re.cmt +0 -0
  435. package/lib/ocaml/js_re.ml +0 -184
  436. package/lib/ocaml/js_result.cmi +0 -0
  437. package/lib/ocaml/js_result.cmt +0 -0
  438. package/lib/ocaml/js_result.cmti +0 -0
  439. package/lib/ocaml/js_result.ml +0 -28
  440. package/lib/ocaml/js_result.mli +0 -28
  441. package/lib/ocaml/js_set.cmi +0 -0
  442. package/lib/ocaml/js_set.cmt +0 -0
  443. package/lib/ocaml/js_set.ml +0 -3
  444. package/lib/ocaml/js_string.cmi +0 -0
  445. package/lib/ocaml/js_string.cmt +0 -0
  446. package/lib/ocaml/js_string.ml +0 -914
  447. package/lib/ocaml/js_string2.cmi +0 -0
  448. package/lib/ocaml/js_string2.cmt +0 -0
  449. package/lib/ocaml/js_string2.ml +0 -912
  450. package/lib/ocaml/js_typed_array.cmi +0 -0
  451. package/lib/ocaml/js_typed_array.cmt +0 -0
  452. package/lib/ocaml/js_typed_array.cppo.ml +0 -429
  453. package/lib/ocaml/js_typed_array.ml +0 -1405
  454. package/lib/ocaml/js_typed_array2.cmi +0 -0
  455. package/lib/ocaml/js_typed_array2.cmt +0 -0
  456. package/lib/ocaml/js_typed_array2.cppo.ml +0 -296
  457. package/lib/ocaml/js_typed_array2.ml +0 -1269
  458. package/lib/ocaml/js_types.cmi +0 -0
  459. package/lib/ocaml/js_types.cmt +0 -0
  460. package/lib/ocaml/js_types.cmti +0 -0
  461. package/lib/ocaml/js_types.ml +0 -118
  462. package/lib/ocaml/js_types.mli +0 -78
  463. package/lib/ocaml/js_undefined.cmi +0 -0
  464. package/lib/ocaml/js_undefined.cmt +0 -0
  465. package/lib/ocaml/js_undefined.cmti +0 -0
  466. package/lib/ocaml/js_undefined.ml +0 -59
  467. package/lib/ocaml/js_undefined.mli +0 -92
  468. package/lib/ocaml/js_vector.cmi +0 -0
  469. package/lib/ocaml/js_vector.cmt +0 -0
  470. package/lib/ocaml/js_vector.cmti +0 -0
  471. package/lib/ocaml/js_vector.ml +0 -143
  472. package/lib/ocaml/js_vector.mli +0 -92
  473. package/lib/ocaml/js_weakmap.cmi +0 -0
  474. package/lib/ocaml/js_weakmap.cmt +0 -0
  475. package/lib/ocaml/js_weakmap.ml +0 -3
  476. package/lib/ocaml/js_weakset.cmi +0 -0
  477. package/lib/ocaml/js_weakset.cmt +0 -0
  478. package/lib/ocaml/js_weakset.ml +0 -3
  479. package/lib/ocaml/jsx.cmi +0 -0
  480. package/lib/ocaml/jsx.cmt +0 -0
  481. package/lib/ocaml/jsx.ml +0 -39
  482. package/lib/ocaml/jsxDOM.cmi +0 -0
  483. package/lib/ocaml/jsxDOM.cmt +0 -0
  484. package/lib/ocaml/jsxDOM.ml +0 -2087
  485. package/lib/ocaml/jsxDOMStyle.cmi +0 -0
  486. package/lib/ocaml/jsxDOMStyle.cmt +0 -0
  487. package/lib/ocaml/jsxDOMStyle.ml +0 -777
  488. package/lib/ocaml/jsxEvent.cmi +0 -0
  489. package/lib/ocaml/jsxEvent.cmt +0 -0
  490. package/lib/ocaml/jsxEvent.ml +0 -358
  491. package/lib/ocaml/lazy.cmi +0 -0
  492. package/lib/ocaml/lazy.cmt +0 -0
  493. package/lib/ocaml/lazy.cmti +0 -0
  494. package/lib/ocaml/lazy.ml +0 -70
  495. package/lib/ocaml/lazy.mli +0 -95
  496. package/lib/ocaml/lexing.cmi +0 -0
  497. package/lib/ocaml/lexing.cmt +0 -0
  498. package/lib/ocaml/lexing.cmti +0 -0
  499. package/lib/ocaml/lexing.ml +0 -230
  500. package/lib/ocaml/lexing.mli +0 -172
  501. package/lib/ocaml/list.cmi +0 -0
  502. package/lib/ocaml/list.cmt +0 -0
  503. package/lib/ocaml/list.cmti +0 -0
  504. package/lib/ocaml/list.ml +0 -485
  505. package/lib/ocaml/list.mli +0 -347
  506. package/lib/ocaml/listLabels.cmi +0 -0
  507. package/lib/ocaml/listLabels.cmt +0 -0
  508. package/lib/ocaml/listLabels.cmti +0 -0
  509. package/lib/ocaml/listLabels.ml +0 -485
  510. package/lib/ocaml/listLabels.mli +0 -353
  511. package/lib/ocaml/map.cmi +0 -0
  512. package/lib/ocaml/map.cmt +0 -0
  513. package/lib/ocaml/map.cmti +0 -0
  514. package/lib/ocaml/map.cppo.ml +0 -174
  515. package/lib/ocaml/map.cppo.mli +0 -191
  516. package/lib/ocaml/map.ml +0 -480
  517. package/lib/ocaml/map.mli +0 -315
  518. package/lib/ocaml/mapLabels.cmi +0 -0
  519. package/lib/ocaml/mapLabels.cmt +0 -0
  520. package/lib/ocaml/mapLabels.ml +0 -480
  521. package/lib/ocaml/mapm.cppo.ml +0 -177
  522. package/lib/ocaml/mapm.cppo.mli +0 -138
  523. package/lib/ocaml/moreLabels.cmi +0 -0
  524. package/lib/ocaml/moreLabels.cmt +0 -0
  525. package/lib/ocaml/moreLabels.cmti +0 -0
  526. package/lib/ocaml/moreLabels.ml +0 -22
  527. package/lib/ocaml/moreLabels.mli +0 -198
  528. package/lib/ocaml/node.cmi +0 -0
  529. package/lib/ocaml/node.cmt +0 -0
  530. package/lib/ocaml/node.ml +0 -84
  531. package/lib/ocaml/node_buffer.cmi +0 -0
  532. package/lib/ocaml/node_buffer.cmt +0 -0
  533. package/lib/ocaml/node_buffer.ml +0 -47
  534. package/lib/ocaml/node_child_process.cmi +0 -0
  535. package/lib/ocaml/node_child_process.cmt +0 -0
  536. package/lib/ocaml/node_child_process.ml +0 -50
  537. package/lib/ocaml/node_fs.cmi +0 -0
  538. package/lib/ocaml/node_fs.cmt +0 -0
  539. package/lib/ocaml/node_fs.ml +0 -153
  540. package/lib/ocaml/node_module.cmi +0 -0
  541. package/lib/ocaml/node_module.cmt +0 -0
  542. package/lib/ocaml/node_module.ml +0 -29
  543. package/lib/ocaml/node_path.cmi +0 -0
  544. package/lib/ocaml/node_path.cmt +0 -0
  545. package/lib/ocaml/node_path.ml +0 -71
  546. package/lib/ocaml/node_process.cmi +0 -0
  547. package/lib/ocaml/node_process.cmt +0 -0
  548. package/lib/ocaml/node_process.cmti +0 -0
  549. package/lib/ocaml/node_process.ml +0 -59
  550. package/lib/ocaml/node_process.mli +0 -48
  551. package/lib/ocaml/obj.cmi +0 -0
  552. package/lib/ocaml/obj.cmt +0 -0
  553. package/lib/ocaml/obj.cmti +0 -0
  554. package/lib/ocaml/obj.ml +0 -29
  555. package/lib/ocaml/obj.mli +0 -62
  556. package/lib/ocaml/parsing.cmi +0 -0
  557. package/lib/ocaml/parsing.cmt +0 -0
  558. package/lib/ocaml/parsing.cmti +0 -0
  559. package/lib/ocaml/parsing.ml +0 -212
  560. package/lib/ocaml/parsing.mli +0 -105
  561. package/lib/ocaml/pervasives.cmi +0 -0
  562. package/lib/ocaml/pervasives.cmt +0 -0
  563. package/lib/ocaml/pervasives.cmti +0 -0
  564. package/lib/ocaml/pervasives.ml +0 -297
  565. package/lib/ocaml/pervasives.mli +0 -771
  566. package/lib/ocaml/printexc.cmi +0 -0
  567. package/lib/ocaml/printexc.cmt +0 -0
  568. package/lib/ocaml/printexc.cmti +0 -0
  569. package/lib/ocaml/printexc.ml +0 -79
  570. package/lib/ocaml/printexc.mli +0 -57
  571. package/lib/ocaml/queue.cmi +0 -0
  572. package/lib/ocaml/queue.cmt +0 -0
  573. package/lib/ocaml/queue.cmti +0 -0
  574. package/lib/ocaml/queue.ml +0 -132
  575. package/lib/ocaml/queue.mli +0 -82
  576. package/lib/ocaml/random.cmi +0 -0
  577. package/lib/ocaml/random.cmt +0 -0
  578. package/lib/ocaml/random.cmti +0 -0
  579. package/lib/ocaml/random.ml +0 -273
  580. package/lib/ocaml/random.mli +0 -102
  581. package/lib/ocaml/set.cmi +0 -0
  582. package/lib/ocaml/set.cmt +0 -0
  583. package/lib/ocaml/set.cmti +0 -0
  584. package/lib/ocaml/set.ml +0 -526
  585. package/lib/ocaml/set.mli +0 -266
  586. package/lib/ocaml/setLabels.cmi +0 -0
  587. package/lib/ocaml/setLabels.cmt +0 -0
  588. package/lib/ocaml/setLabels.ml +0 -526
  589. package/lib/ocaml/setm.cppo.ml +0 -346
  590. package/lib/ocaml/setm.cppo.mli +0 -126
  591. package/lib/ocaml/sort.cmi +0 -0
  592. package/lib/ocaml/sort.cmt +0 -0
  593. package/lib/ocaml/sort.cmti +0 -0
  594. package/lib/ocaml/sort.cppo.ml +0 -267
  595. package/lib/ocaml/sort.cppo.mli +0 -96
  596. package/lib/ocaml/sort.ml +0 -99
  597. package/lib/ocaml/sort.mli +0 -44
  598. package/lib/ocaml/stack.cmi +0 -0
  599. package/lib/ocaml/stack.cmt +0 -0
  600. package/lib/ocaml/stack.cmti +0 -0
  601. package/lib/ocaml/stack.ml +0 -44
  602. package/lib/ocaml/stack.mli +0 -63
  603. package/lib/ocaml/stdLabels.cmi +0 -0
  604. package/lib/ocaml/stdLabels.cmt +0 -0
  605. package/lib/ocaml/stdLabels.cmti +0 -0
  606. package/lib/ocaml/stdLabels.ml +0 -24
  607. package/lib/ocaml/stdLabels.mli +0 -29
  608. package/lib/ocaml/stream.cmi +0 -0
  609. package/lib/ocaml/stream.cmt +0 -0
  610. package/lib/ocaml/stream.cmti +0 -0
  611. package/lib/ocaml/stream.ml +0 -213
  612. package/lib/ocaml/stream.mli +0 -108
  613. package/lib/ocaml/string.cmi +0 -0
  614. package/lib/ocaml/string.cmt +0 -0
  615. package/lib/ocaml/string.cmti +0 -0
  616. package/lib/ocaml/string.ml +0 -190
  617. package/lib/ocaml/string.mli +0 -286
  618. package/lib/ocaml/stringLabels.cmi +0 -0
  619. package/lib/ocaml/stringLabels.cmt +0 -0
  620. package/lib/ocaml/stringLabels.cmti +0 -0
  621. package/lib/ocaml/stringLabels.ml +0 -190
  622. package/lib/ocaml/stringLabels.mli +0 -241
  623. package/lib/ocaml/sys.cmi +0 -0
  624. package/lib/ocaml/sys.cmt +0 -0
  625. package/lib/ocaml/sys.cmti +0 -0
  626. package/lib/ocaml/sys.ml +0 -135
  627. package/lib/ocaml/sys.mli +0 -333
  628. package/lib/ocaml/uchar.cmi +0 -0
  629. package/lib/ocaml/uchar.cmt +0 -0
  630. package/lib/ocaml/uchar.cmti +0 -0
  631. package/lib/ocaml/uchar.ml +0 -58
  632. package/lib/ocaml/uchar.mli +0 -98
  633. package/linux/bsb_helper.exe +0 -0
  634. package/linux/bsc.exe +0 -0
  635. package/linux/ninja.COPYING +0 -202
  636. package/linux/ninja.exe +0 -0
  637. package/linux/rescript.exe +0 -0
  638. package/openbsd/.keep +0 -0
  639. package/scripts/LICENSE.ml +0 -27
  640. package/scripts/buckle_lto.js +0 -55
  641. package/scripts/build_sorted.ml +0 -233
  642. package/scripts/caml_oo_curry_gen.ml +0 -71
  643. package/scripts/checkUnused.js +0 -63
  644. package/scripts/ciTest.js +0 -172
  645. package/scripts/cover.sh +0 -3
  646. package/scripts/curry_gen.ml +0 -167
  647. package/scripts/dbg +0 -13
  648. package/scripts/dedupe.js +0 -44
  649. package/scripts/doc_gen.js +0 -117
  650. package/scripts/js_internal_gen.js +0 -135
  651. package/scripts/jsconfig.json +0 -12
  652. package/scripts/littlecase.js +0 -21
  653. package/scripts/ninja.js +0 -1980
  654. package/scripts/pack.js +0 -107
  655. package/scripts/prebuilt.js +0 -99
  656. package/scripts/release.js +0 -41
  657. package/scripts/repl.js +0 -151
  658. package/scripts/shake.js +0 -138
  659. package/scripts/tasks.js +0 -149
  660. package/scripts/test.sh +0 -3
  661. package/scripts/tmp.js +0 -98
  662. package/scripts/validate.js +0 -41
  663. package/vendor/ninja.tar.gz +0 -0
  664. package/win32/bsb_helper.exe +0 -0
  665. package/win32/bsc.exe +0 -0
  666. package/win32/ninja.COPYING +0 -202
  667. package/win32/ninja.exe +0 -0
  668. package/win32/rescript.exe +0 -0
package/lib/ocaml/arg.mli DELETED
@@ -1,185 +0,0 @@
1
- (**************************************************************************)
2
- (* *)
3
- (* OCaml *)
4
- (* *)
5
- (* Damien Doligez, projet Para, INRIA Rocquencourt *)
6
- (* *)
7
- (* Copyright 1996 Institut National de Recherche en Informatique et *)
8
- (* en Automatique. *)
9
- (* *)
10
- (* All rights reserved. This file is distributed under the terms of *)
11
- (* the GNU Lesser General Public License version 2.1, with the *)
12
- (* special exception on linking described in the file LICENSE. *)
13
- (* *)
14
- (**************************************************************************)
15
-
16
- (** Parsing of command line arguments.
17
-
18
- This module provides a general mechanism for extracting options and
19
- arguments from the command line to the program.
20
-
21
- Syntax of command lines:
22
- A keyword is a character string starting with a [-].
23
- An option is a keyword alone or followed by an argument.
24
- The types of keywords are: [Unit], [Bool], [Set], [Clear],
25
- [String], [Set_string], [Int], [Set_int], [Float], [Set_float],
26
- [Tuple], [Symbol], and [Rest].
27
- [Unit], [Set] and [Clear] keywords take no argument. A [Rest]
28
- keyword takes the remaining of the command line as arguments.
29
- Every other keyword takes the following word on the command line
30
- as argument. For compatibility with GNU getopt_long, [keyword=arg]
31
- is also allowed.
32
- Arguments not preceded by a keyword are called anonymous arguments.
33
-
34
- Examples ([cmd] is assumed to be the command name):
35
- - [cmd -flag ](a unit option)
36
- - [cmd -int 1 ](an int option with argument [1])
37
- - [cmd -string foobar ](a string option with argument ["foobar"])
38
- - [cmd -float 12.34 ](a float option with argument [12.34])
39
- - [cmd a b c ](three anonymous arguments: ["a"], ["b"], and ["c"])
40
- - [cmd a b -- c d ](two anonymous arguments and a rest option with
41
- two arguments)
42
- *)
43
-
44
- type spec =
45
- | Unit of (unit -> unit) (** Call the function with unit argument *)
46
- | Bool of (bool -> unit) (** Call the function with a bool argument *)
47
- | Set of bool ref (** Set the reference to true *)
48
- | Clear of bool ref (** Set the reference to false *)
49
- | String of (string -> unit) (** Call the function with a string argument *)
50
- | Set_string of string ref (** Set the reference to the string argument *)
51
- | Int of (int -> unit) (** Call the function with an int argument *)
52
- | Set_int of int ref (** Set the reference to the int argument *)
53
- | Float of (float -> unit) (** Call the function with a float argument *)
54
- | Set_float of float ref (** Set the reference to the float argument *)
55
- | Tuple of spec list (** Take several arguments according to the
56
- spec list *)
57
- | Symbol of string list * (string -> unit)
58
- (** Take one of the symbols as argument and
59
- call the function with the symbol *)
60
- | Rest of (string -> unit) (** Stop interpreting keywords and call the
61
- function with each remaining argument *)
62
- | Expand of (string -> string array) (** If the remaining arguments to process
63
- are of the form
64
- [["-foo"; "arg"] @ rest] where "foo" is
65
- registered as [Expand f], then the
66
- arguments [f "arg" @ rest] are
67
- processed. Only allowed in
68
- [parse_and_expand_argv_dynamic]. *)
69
- (** The concrete type describing the behavior associated
70
- with a keyword. *)
71
-
72
- type key = string
73
- type doc = string
74
- type usage_msg = string
75
- type anon_fun = (string -> unit)
76
-
77
- val parse :
78
- (key * spec * doc) list -> anon_fun -> usage_msg -> unit
79
- (** [Arg.parse speclist anon_fun usage_msg] parses the command line.
80
- [speclist] is a list of triples [(key, spec, doc)].
81
- [key] is the option keyword, it must start with a ['-'] character.
82
- [spec] gives the option type and the function to call when this option
83
- is found on the command line.
84
- [doc] is a one-line description of this option.
85
- [anon_fun] is called on anonymous arguments.
86
- The functions in [spec] and [anon_fun] are called in the same order
87
- as their arguments appear on the command line.
88
-
89
- If an error occurs, [Arg.parse] exits the program, after printing
90
- to standard error an error message as follows:
91
- - The reason for the error: unknown option, invalid or missing argument, etc.
92
- - [usage_msg]
93
- - The list of options, each followed by the corresponding [doc] string.
94
- Beware: options that have an empty [doc] string will not be included in the
95
- list.
96
-
97
- For the user to be able to specify anonymous arguments starting with a
98
- [-], include for example [("-", String anon_fun, doc)] in [speclist].
99
-
100
- By default, [parse] recognizes two unit options, [-help] and [--help],
101
- which will print to standard output [usage_msg] and the list of
102
- options, and exit the program. You can override this behaviour
103
- by specifying your own [-help] and [--help] options in [speclist].
104
- *)
105
-
106
- val parse_dynamic :
107
- (key * spec * doc) list ref -> anon_fun -> usage_msg -> unit
108
- (** Same as {!Arg.parse}, except that the [speclist] argument is a reference
109
- and may be updated during the parsing. A typical use for this feature
110
- is to parse command lines of the form:
111
- - command subcommand [options]
112
- where the list of options depends on the value of the subcommand argument.
113
- @since 4.01.0
114
- *)
115
-
116
- val parse_argv : ?current: int ref -> string array ->
117
- (key * spec * doc) list -> anon_fun -> usage_msg -> unit
118
- (** [Arg.parse_argv ~current args speclist anon_fun usage_msg] parses
119
- the array [args] as if it were the command line. It uses and updates
120
- the value of [~current] (if given), or {!Arg.current}. You must set
121
- it before calling [parse_argv]. The initial value of [current]
122
- is the index of the program name (argument 0) in the array.
123
- If an error occurs, [Arg.parse_argv] raises {!Arg.Bad} with
124
- the error message as argument. If option [-help] or [--help] is
125
- given, [Arg.parse_argv] raises {!Arg.Help} with the help message
126
- as argument.
127
- *)
128
-
129
- val parse_argv_dynamic : ?current:int ref -> string array ->
130
- (key * spec * doc) list ref -> anon_fun -> string -> unit
131
- (** Same as {!Arg.parse_argv}, except that the [speclist] argument is a
132
- reference and may be updated during the parsing.
133
- See {!Arg.parse_dynamic}.
134
- @since 4.01.0
135
- *)
136
-
137
- val parse_and_expand_argv_dynamic : int ref -> string array ref ->
138
- (key * spec * doc) list ref -> anon_fun -> string -> unit
139
- (** Same as {!Arg.parse_argv_dynamic}, except that the [argv] argument is a
140
- reference and may be updated during the parsing of [Expand] arguments.
141
- See {!Arg.parse_argv_dynamic}.
142
- @since 4.05.0
143
- *)
144
-
145
- val parse_expand:
146
- (key * spec * doc) list -> anon_fun -> usage_msg -> unit
147
- (** Same as {!Arg.parse}, except that the [Expand] arguments are allowed and
148
- the {!current} reference is not updated.
149
- @since 4.05.0
150
- *)
151
-
152
- exception Help of string
153
- (** Raised by [Arg.parse_argv] when the user asks for help. *)
154
-
155
- exception Bad of string
156
- (** Functions in [spec] or [anon_fun] can raise [Arg.Bad] with an error
157
- message to reject invalid arguments.
158
- [Arg.Bad] is also raised by {!Arg.parse_argv} in case of an error. *)
159
-
160
- val usage : (key * spec * doc) list -> usage_msg -> unit
161
- (** [Arg.usage speclist usage_msg] prints to standard error
162
- an error message that includes the list of valid options. This is
163
- the same message that {!Arg.parse} prints in case of error.
164
- [speclist] and [usage_msg] are the same as for {!Arg.parse}. *)
165
-
166
- val usage_string : (key * spec * doc) list -> usage_msg -> string
167
- (** Returns the message that would have been printed by {!Arg.usage},
168
- if provided with the same parameters. *)
169
-
170
- val align: ?limit: int -> (key * spec * doc) list -> (key * spec * doc) list
171
- (** Align the documentation strings by inserting spaces at the first alignment
172
- separator (tab or, if tab is not found, space), according to the length of
173
- the keyword. Use a alignment separator as the first character in a doc
174
- string if you want to align the whole string. The doc strings corresponding
175
- to [Symbol] arguments are aligned on the next line.
176
- @param limit options with keyword and message longer than [limit] will not
177
- be used to compute the alignment. *)
178
-
179
- val current : int ref
180
- (** Position (in {!Sys.argv}) of the argument being processed. You can
181
- change this value, e.g. to force {!Arg.parse} to skip some arguments.
182
- {!Arg.parse} uses the initial value of {!Arg.current} as the index of
183
- argument 0 (the program name) and starts parsing arguments
184
- at the next element. *)
185
-
Binary file
Binary file
Binary file
@@ -1,307 +0,0 @@
1
- (**************************************************************************)
2
- (* *)
3
- (* OCaml *)
4
- (* *)
5
- (* Xavier Leroy, projet Cristal, INRIA Rocquencourt *)
6
- (* *)
7
- (* Copyright 1996 Institut National de Recherche en Informatique et *)
8
- (* en Automatique. *)
9
- (* *)
10
- (* All rights reserved. This file is distributed under the terms of *)
11
- (* the GNU Lesser General Public License version 2.1, with the *)
12
- (* special exception on linking described in the file LICENSE. *)
13
- (* *)
14
- (**************************************************************************)
15
-
16
- (* Array operations *)
17
-
18
- external length : 'a array -> int = "%array_length"
19
- external get: 'a array -> int -> 'a = "%array_safe_get"
20
- external set: 'a array -> int -> 'a -> unit = "%array_safe_set"
21
- external unsafe_get: 'a array -> int -> 'a = "%array_unsafe_get"
22
- external unsafe_set: 'a array -> int -> 'a -> unit = "%array_unsafe_set"
23
- external make: int -> 'a -> 'a array = "?make_vect"
24
- external create: int -> 'a -> 'a array = "?make_vect"
25
- external unsafe_sub : 'a array -> int -> int -> 'a array = "?array_sub"
26
-
27
- external append_prim : 'a array -> 'a array -> 'a array = "concat"
28
- [@@send]
29
-
30
- external concat : 'a array list -> 'a array = "?array_concat"
31
- external unsafe_blit :
32
- 'a array -> int -> 'a array -> int -> int -> unit = "?array_blit"
33
- external create_float: int -> float array = "?make_float_vect"
34
- let make_float = create_float
35
-
36
- module Floatarray = struct
37
- external create : int -> floatarray = "?floatarray_create"
38
- external length : floatarray -> int = "%floatarray_length"
39
- external get : floatarray -> int -> float = "%floatarray_safe_get"
40
- external set : floatarray -> int -> float -> unit = "%floatarray_safe_set"
41
- external unsafe_get : floatarray -> int -> float = "%floatarray_unsafe_get"
42
- external unsafe_set : floatarray -> int -> float -> unit
43
- = "%floatarray_unsafe_set"
44
- end
45
-
46
- let init l f =
47
- if l = 0 then [||] else
48
- if l < 0 then invalid_arg "Array.init"
49
- (* See #6575. We could also check for maximum array size, but this depends
50
- on whether we create a float array or a regular one... *)
51
- else
52
- let res = create l (f 0) in
53
- for i = 1 to pred l do
54
- unsafe_set res i (f i)
55
- done;
56
- res
57
-
58
- let make_matrix sx sy init =
59
- let res = create sx [||] in
60
- for x = 0 to pred sx do
61
- unsafe_set res x (create sy init)
62
- done;
63
- res
64
-
65
- let create_matrix = make_matrix
66
-
67
- let copy a =
68
- let l = length a in if l = 0 then [||] else unsafe_sub a 0 l
69
-
70
- let append a1 a2 =
71
- let l1 = length a1 in
72
- if l1 = 0 then copy a2
73
- else if length a2 = 0 then unsafe_sub a1 0 l1
74
- else append_prim a1 a2
75
-
76
- let sub a ofs len =
77
- if ofs < 0 || len < 0 || ofs > length a - len
78
- then invalid_arg "Array.sub"
79
- else unsafe_sub a ofs len
80
-
81
- let fill a ofs len v =
82
- if ofs < 0 || len < 0 || ofs > length a - len
83
- then invalid_arg "Array.fill"
84
- else for i = ofs to ofs + len - 1 do unsafe_set a i v done
85
-
86
- let blit a1 ofs1 a2 ofs2 len =
87
- if len < 0 || ofs1 < 0 || ofs1 > length a1 - len
88
- || ofs2 < 0 || ofs2 > length a2 - len
89
- then invalid_arg "Array.blit"
90
- else unsafe_blit a1 ofs1 a2 ofs2 len
91
-
92
- let iter f a =
93
- for i = 0 to length a - 1 do f(unsafe_get a i) done
94
-
95
- let iter2 f a b =
96
- if length a <> length b then
97
- invalid_arg "Array.iter2: arrays must have the same length"
98
- else
99
- for i = 0 to length a - 1 do f (unsafe_get a i) (unsafe_get b i) done
100
-
101
- let map f a =
102
- let l = length a in
103
- if l = 0 then [||] else begin
104
- let r = create l (f(unsafe_get a 0)) in
105
- for i = 1 to l - 1 do
106
- unsafe_set r i (f(unsafe_get a i))
107
- done;
108
- r
109
- end
110
-
111
- let map2 f a b =
112
- let la = length a in
113
- let lb = length b in
114
- if la <> lb then
115
- invalid_arg "Array.map2: arrays must have the same length"
116
- else begin
117
- if la = 0 then [||] else begin
118
- let r = create la (f (unsafe_get a 0) (unsafe_get b 0)) in
119
- for i = 1 to la - 1 do
120
- unsafe_set r i (f (unsafe_get a i) (unsafe_get b i))
121
- done;
122
- r
123
- end
124
- end
125
-
126
- let iteri f a =
127
- for i = 0 to length a - 1 do f i (unsafe_get a i) done
128
-
129
- let mapi f a =
130
- let l = length a in
131
- if l = 0 then [||] else begin
132
- let r = create l (f 0 (unsafe_get a 0)) in
133
- for i = 1 to l - 1 do
134
- unsafe_set r i (f i (unsafe_get a i))
135
- done;
136
- r
137
- end
138
-
139
- let to_list a =
140
- let rec tolist i res =
141
- if i < 0 then res else tolist (i - 1) (unsafe_get a i :: res) in
142
- tolist (length a - 1) []
143
-
144
- (* Cannot use List.length here because the List module depends on Array. *)
145
- let rec list_length accu = function
146
- | [] -> accu
147
- | _::t -> list_length (succ accu) t
148
-
149
- let of_list = function
150
- [] -> [||]
151
- | hd::tl as l ->
152
- let a = create (list_length 0 l) hd in
153
- let rec fill i = function
154
- [] -> a
155
- | hd::tl -> unsafe_set a i hd; fill (i+1) tl in
156
- fill 1 tl
157
-
158
- let fold_left f x a =
159
- let r = ref x in
160
- for i = 0 to length a - 1 do
161
- r := f !r (unsafe_get a i)
162
- done;
163
- !r
164
-
165
- let fold_right f a x =
166
- let r = ref x in
167
- for i = length a - 1 downto 0 do
168
- r := f (unsafe_get a i) !r
169
- done;
170
- !r
171
-
172
- let exists p a =
173
- let n = length a in
174
- let rec loop i =
175
- if i = n then false
176
- else if p (unsafe_get a i) then true
177
- else loop (succ i) in
178
- loop 0
179
-
180
- let for_all p a =
181
- let n = length a in
182
- let rec loop i =
183
- if i = n then true
184
- else if p (unsafe_get a i) then loop (succ i)
185
- else false in
186
- loop 0
187
-
188
- let mem x a =
189
- let n = length a in
190
- let rec loop i =
191
- if i = n then false
192
- else if compare (unsafe_get a i) x = 0 then true
193
- else loop (succ i) in
194
- loop 0
195
-
196
- let memq x a =
197
- let n = length a in
198
- let rec loop i =
199
- if i = n then false
200
- else if x == (unsafe_get a i) then true
201
- else loop (succ i) in
202
- loop 0
203
-
204
- exception Bottom of int
205
- let sort cmp a =
206
- let maxson l i =
207
- let i31 = i+i+i+1 in
208
- let x = ref i31 in
209
- if i31+2 < l then begin
210
- if cmp (get a i31) (get a (i31+1)) < 0 then x := i31+1;
211
- if cmp (get a !x) (get a (i31+2)) < 0 then x := i31+2;
212
- !x
213
- end else
214
- if i31+1 < l && cmp (get a i31) (get a (i31+1)) < 0
215
- then i31+1
216
- else if i31 < l then i31 else raise (Bottom i)
217
- in
218
- let rec trickledown l i e =
219
- let j = maxson l i in
220
- if cmp (get a j) e > 0 then begin
221
- set a i (get a j);
222
- trickledown l j e;
223
- end else begin
224
- set a i e;
225
- end;
226
- in
227
- let trickle l i e = try trickledown l i e with Bottom i -> set a i e in
228
- let rec bubbledown l i =
229
- let j = maxson l i in
230
- set a i (get a j);
231
- bubbledown l j
232
- in
233
- let bubble l i = try bubbledown l i with Bottom i -> i in
234
- let rec trickleup i e =
235
- let father = (i - 1) / 3 in
236
- assert (i <> father);
237
- if cmp (get a father) e < 0 then begin
238
- set a i (get a father);
239
- if father > 0 then trickleup father e else set a 0 e;
240
- end else begin
241
- set a i e;
242
- end;
243
- in
244
- let l = length a in
245
- for i = (l + 1) / 3 - 1 downto 0 do trickle l i (get a i); done;
246
- for i = l - 1 downto 2 do
247
- let e = (get a i) in
248
- set a i (get a 0);
249
- trickleup (bubble i 0) e;
250
- done;
251
- if l > 1 then (let e = (get a 1) in set a 1 (get a 0); set a 0 e)
252
-
253
-
254
- let cutoff = 5
255
- let stable_sort cmp a =
256
- let merge src1ofs src1len src2 src2ofs src2len dst dstofs =
257
- let src1r = src1ofs + src1len and src2r = src2ofs + src2len in
258
- let rec loop i1 s1 i2 s2 d =
259
- if cmp s1 s2 <= 0 then begin
260
- set dst d s1;
261
- let i1 = i1 + 1 in
262
- if i1 < src1r then
263
- loop i1 (get a i1) i2 s2 (d + 1)
264
- else
265
- blit src2 i2 dst (d + 1) (src2r - i2)
266
- end else begin
267
- set dst d s2;
268
- let i2 = i2 + 1 in
269
- if i2 < src2r then
270
- loop i1 s1 i2 (get src2 i2) (d + 1)
271
- else
272
- blit a i1 dst (d + 1) (src1r - i1)
273
- end
274
- in loop src1ofs (get a src1ofs) src2ofs (get src2 src2ofs) dstofs;
275
- in
276
- let isortto srcofs dst dstofs len =
277
- for i = 0 to len - 1 do
278
- let e = (get a (srcofs + i)) in
279
- let j = ref (dstofs + i - 1) in
280
- while (!j >= dstofs && cmp (get dst !j) e > 0) do
281
- set dst (!j + 1) (get dst !j);
282
- decr j;
283
- done;
284
- set dst (!j + 1) e;
285
- done;
286
- in
287
- let rec sortto srcofs dst dstofs len =
288
- if len <= cutoff then isortto srcofs dst dstofs len else begin
289
- let l1 = len / 2 in
290
- let l2 = len - l1 in
291
- sortto (srcofs + l1) dst (dstofs + l1) l2;
292
- sortto srcofs a (srcofs + l2) l1;
293
- merge (srcofs + l2) l1 dst (dstofs + l1) l2 dst dstofs;
294
- end;
295
- in
296
- let l = length a in
297
- if l <= cutoff then isortto 0 a 0 l else begin
298
- let l1 = l / 2 in
299
- let l2 = l - l1 in
300
- let t = make l2 (get a 0) in
301
- sortto l1 t 0 l2;
302
- sortto 0 a l2 l1;
303
- merge l2 l1 t 0 l2 a 0;
304
- end
305
-
306
-
307
- let fast_sort = stable_sort