|
228 | 228 | for (let i = 0; i < l; i++) string_set(s, p2 + i, a[p1 + i]); |
229 | 229 | }, |
230 | 230 | wrap_callback: (f) => |
231 | | - function () { |
232 | | - var n = arguments.length; |
233 | | - if (n > 0) { |
234 | | - var args = new Array(n); |
235 | | - for (var i = 0; i < n; i++) args[i] = arguments[i]; |
236 | | - } else { |
| 231 | + function (...args) { |
| 232 | + if (args.length === 0) { |
237 | 233 | args = [undefined]; |
238 | 234 | } |
239 | 235 | return caml_callback(f, args.length, args, 1); |
240 | 236 | }, |
241 | 237 | wrap_callback_args: (f) => |
242 | | - function () { |
243 | | - var n = arguments.length; |
244 | | - var args = new Array(n); |
245 | | - for (var i = 0; i < n; i++) args[i] = arguments[i]; |
| 238 | + function (...args) { |
246 | 239 | return caml_callback(f, 1, [args], 0); |
247 | 240 | }, |
248 | 241 | wrap_callback_strict: (arity, f) => |
249 | | - function () { |
250 | | - var n = arguments.length; |
251 | | - var args = new Array(arity); |
252 | | - var len = Math.min(arguments.length, arity); |
253 | | - for (var i = 0; i < len; i++) args[i] = arguments[i]; |
| 242 | + function (...args) { |
| 243 | + args.length = arity; |
254 | 244 | return caml_callback(f, arity, args, 0); |
255 | 245 | }, |
256 | 246 | wrap_callback_unsafe: (f) => |
257 | | - function () { |
258 | | - var n = arguments.length; |
259 | | - var args = new Array(n); |
260 | | - for (var i = 0; i < n; i++) args[i] = arguments[i]; |
| 247 | + function (...args) { |
261 | 248 | return caml_callback(f, args.length, args, 2); |
262 | 249 | }, |
263 | 250 | wrap_meth_callback: (f) => |
264 | | - function () { |
265 | | - var n = arguments.length; |
266 | | - var args = new Array(n + 1); |
267 | | - args[0] = this; |
268 | | - for (var i = 0; i < n; i++) args[i + 1] = arguments[i]; |
| 251 | + function (...args) { |
| 252 | + args.unshift(this); |
269 | 253 | return caml_callback(f, args.length, args, 1); |
270 | 254 | }, |
271 | 255 | wrap_meth_callback_args: (f) => |
272 | | - function () { |
273 | | - var n = arguments.length; |
274 | | - var args = new Array(n); |
275 | | - for (var i = 0; i < n; i++) args[i] = arguments[i]; |
| 256 | + function (...args) { |
276 | 257 | return caml_callback(f, 2, [this, args], 0); |
277 | 258 | }, |
278 | 259 | wrap_meth_callback_strict: (arity, f) => |
279 | | - function () { |
280 | | - var args = new Array(arity + 1); |
281 | | - var len = Math.min(arguments.length, arity); |
282 | | - args[0] = this; |
283 | | - for (var i = 0; i < len; i++) args[i + 1] = arguments[i]; |
| 260 | + function (...args) { |
| 261 | + args.length = arity; |
| 262 | + args.unshift(this); |
284 | 263 | return caml_callback(f, args.length, args, 0); |
285 | 264 | }, |
286 | 265 | wrap_meth_callback_unsafe: (f) => |
287 | | - function () { |
288 | | - var n = arguments.length; |
289 | | - var args = new Array(n + 1); |
290 | | - args[0] = this; |
291 | | - for (var i = 0; i < n; i++) args[i + 1] = arguments[i]; |
| 266 | + function (...args) { |
| 267 | + args.unshift(this); |
292 | 268 | return caml_callback(f, args.length, args, 2); |
293 | 269 | }, |
294 | 270 | wrap_fun_arguments: (f) => |
295 | | - function () { |
296 | | - return f(arguments); |
| 271 | + function (...args) { |
| 272 | + return f(args); |
297 | 273 | }, |
298 | 274 | format_float: (prec, conversion, pad, x) => { |
299 | 275 | function toFixed(x, dp) { |
|
0 commit comments