mirror of
https://github.com/denoland/deno.git
synced 2025-01-11 00:21:05 -05:00
A modern runtime for JavaScript and TypeScript.
https://deno.com/
f5c0188b5e
This adds [Node's `util.callbackify`][0] to `std/node/util.ts`. I lifted most of this from the [original Node source code][1] (and [its tests][2]). I tried to make minimal modifications to the source. I made a few arbitrary decisions: - I was unable to do the function's types elegantly. I made overloads for functions that have 0 to 5 (inclusive) arguments, excluding the callback. I would love to know a better way to do this. (It seems that the folks at DefinitelyTyped [were also stumped][3], though maybe their solution is deliberate.) - There are a few edge cases that cause custom Node errors to be produced. Instead of re-implementing those errors completely, I created simplified classes. These are mostly correct but are not identical to the real Node errors. - The tests implement a possibly-arcane `TestQueue` class. I originally used a lot of inline promises but found it too repetitive. Closes [#5366][4]. [0]: https://nodejs.org/api/util.html#util_util_callbackify_original [1]: |
||
---|---|---|
.cargo | ||
.github | ||
cli | ||
core | ||
deno_typescript | ||
docs | ||
std | ||
test_plugin | ||
third_party@9ad53352a9 | ||
tools | ||
.editorconfig | ||
.eslintignore | ||
.eslintrc.json | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
.prettierignore | ||
.prettierrc.json | ||
.rustfmt.toml | ||
Cargo.lock | ||
Cargo.toml | ||
LICENSE | ||
README.md | ||
Releases.md |
Deno
A secure runtime for JavaScript and TypeScript.
Deno aims to provide a productive and secure scripting environment for the modern programmer. It is built on top of V8, Rust, and TypeScript.
Please read the introduction for more specifics.