Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- "use strict";
- let Promise = require("bluebird");
- function wrap(func) {
- let str = func.toString();
- let args = str.substring(str.indexOf("(") + 1, str.indexOf(")")).split(",");
- str = str.substring(str.indexOf("{") + 1, str.length - 1);
- str = "try {" + str + "}catch(err){console.error(err);console.log('error\\n');}";
- args.push(str);
- return Promise.coroutine(Object.getPrototypeOf(function*() {}).constructor.apply(null, args));
- }
- wrap(function*(n) {
- yield Promise.reject(n);
- })(6);
- wrap(function*(x) {
- var num = yield Promise.resolve(x);
- return num;
- })(4).then(console.log);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement