Skip to content

Commit

Permalink
doc: update promisify docs with behavior when bad arguments are passed
Browse files Browse the repository at this point in the history
Currently the documentation states that promisify() will result in
undefined behavior if bad arguments are passed. This is not necessarily
the case, since the behavior is well defined, but just not useful.

Fixes: nodejs#17569 (comment)
  • Loading branch information
ramsgoli committed Dec 12, 2017
1 parent ac25cee commit 2067648
Showing 1 changed file with 6 additions and 2 deletions.
8 changes: 6 additions & 2 deletions doc/api/util.md
Original file line number Diff line number Diff line change
Expand Up @@ -552,8 +552,10 @@ If there is an `original[util.promisify.custom]` property present, `promisify`
will return its value, see [Custom promisified functions][].

`promisify()` assumes that `original` is a function taking a callback as its
final argument in all cases, and the returned function will result in undefined
behavior if it does not.
final argument in all cases. If `original` is not a function, `promisify()`
will throw an error. If `original` is a function but its last argument is not a
node-style callback, it will be still be passed a node-style callback as its last
argument anyways.

### Custom promisified functions

Expand Down Expand Up @@ -588,6 +590,8 @@ doSomething[util.promisify.custom] = (foo) => {
});
};
```
If `promisify.custom` is defined but is not a function, `promisify()` will
throw an error.

### util.promisify.custom
<!-- YAML
Expand Down

0 comments on commit 2067648

Please sign in to comment.