1.0.3 • Published 8 years ago

advanced-promisify v1.0.3

Weekly downloads
4
License
MIT
Repository
github
Last release
8 years ago

advanced-promisify

Converts callback-based functions or methods to Promise-based functions or methods.

Install

Install with npm

npm install advanced-promisify

Example

"use strict";

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

// Convert the stat function
const stat = promisify.fn(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 method

"use strict";

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

// Convert the redisClient object
promisify.obj(redisClient);

// Send commands to redis and get a promise back
redisClient.$hkeys("hash key")
    .then(function (err, replies) {
        client.quit();
    });

Promisify all methods in a class

"use strict";

// Declare variables
const promisify = require("advanced-promisify");
const RedisClient = require("redis").RedisClient;

// Convert the RedisClient class
promisify.cls(RedisClient);

const redisClient = new RedisClient(6379, "localhost");

// Send commands to redis and get a promise back
redisClient.$hkeys("hash key")
    .then(function (err, replies) {
        client.quit();
    });

Promisify multi arguments

const promisify = require("advanced-promisify");

//fn multi arguments version
promisify.mfn(...);

//obj and cls multi arguments version
obj.m$xxx(...);

// will return array of multi arguments.

Tests

$ npm run test

Published under the MIT License.