Files
react-native-devtools-frontend/node_modules/es6-promisify
Tim van der Lippe e4974ddc4c Remove whitespace at the end of the package.json lines
json.dump appears to add extraneous spaces before newline characters. By
specifying the separators option, we can remove these whitespaces,
reducing the diff noise. Solution taken from
https://stackoverflow.com/questions/16311562/python-json-without-whitespaces

DISABLE_THIRD_PARTY_CHECK=Fix whitespace in node_modules

Change-Id: I26556e5053f19a9021ad41779319bdfe3f8c2b6c
Reviewed-on: https://chromium-review.googlesource.com/c/devtools/devtools-frontend/+/2013154
Commit-Queue: Tim van der Lippe <tvanderlippe@chromium.org>
Commit-Queue: Mathias Bynens <mathias@chromium.org>
Auto-Submit: Tim van der Lippe <tvanderlippe@chromium.org>
Reviewed-by: Mathias Bynens <mathias@chromium.org>
2020-01-22 15:17:25 +00:00
..
2019-12-02 14:54:54 +00:00
2019-12-02 14:54:54 +00:00

Travis CI

es6-promisify

Converts callback-based functions to Promise-based functions.

Install

Install with npm

npm install --save es6-promisify

Example

"use strict";

// Declare variables
const promisify = require("es6-promisify");
const fs = require("fs");

// Convert the stat function
const stat = promisify(fs.stat);

// Now usable as a promise!
stat("example.txt").then(function (stats) {
    console.log("Got stats", stats);
}).catch(function (err) {
    console.error("Yikes!", err);
});

Promisify methods

"use strict";

// Declare variables
const promisify = require("es6-promisify");
const redis = require("redis").createClient(6379, "localhost");

// Create a promise-based version of send_command
const client = promisify(redis.send_command, redis);

// Send commands to redis and get a promise back
client("ping").then(function (pong) {
    console.log("Got", pong);
}).catch(function (err) {
    console.error("Unexpected error", err);
}).then(function () {
    redis.quit();
});

Handle callback multiple arguments

"use strict";

// Declare functions
function test(cb) {
    return cb(undefined, 1, 2, 3);
}

// Declare variables
const promisify = require("es6-promisify");

// Create promise-based version of test
const single = promisify(test);
const multi = promisify(test, {multiArgs: true});

// Discards additional arguments
single().then(function (result) {
    console.log(result); // 1
});

// Returns all arguments as an array
multi().then(function (result) {
    console.log(result); // [1, 2, 3]
});

Tests

Test with nodeunit

$ npm test

Published under the MIT License.