summaryrefslogtreecommitdiffstats
path: root/lib/utils/promise.js
diff options
context:
space:
mode:
authorSamy Pessé <samypesse@gmail.com>2016-02-20 16:02:51 +0100
committerSamy Pessé <samypesse@gmail.com>2016-02-20 16:02:51 +0100
commita22539a91eea4101d244cdaeb5c61e31376ff4bc (patch)
treefb3cd337b3082134b797e51431ee40c3a7101ecc /lib/utils/promise.js
parent89378c3883140ce6e6c74e71651270f19b1ee441 (diff)
downloadgitbook-a22539a91eea4101d244cdaeb5c61e31376ff4bc.zip
gitbook-a22539a91eea4101d244cdaeb5c61e31376ff4bc.tar.gz
gitbook-a22539a91eea4101d244cdaeb5c61e31376ff4bc.tar.bz2
Add new gitbook-markdown and gitbook-asciidoc
Diffstat (limited to 'lib/utils/promise.js')
-rw-r--r--lib/utils/promise.js12
1 files changed, 12 insertions, 0 deletions
diff --git a/lib/utils/promise.js b/lib/utils/promise.js
index adcc1c3..d49cf27 100644
--- a/lib/utils/promise.js
+++ b/lib/utils/promise.js
@@ -43,8 +43,20 @@ function map(arr, iter) {
}, []);
}
+// Wrap a fucntion in a promise
+function wrap(func) {
+ return _.wrap(func, function(_func) {
+ var args = Array.prototype.slice.call(arguments, 1);
+ return Q()
+ .then(function() {
+ return _func.apply(null, args);
+ });
+ });
+}
+
module.exports = Q;
module.exports.reduce = reduce;
module.exports.map = map;
module.exports.serie = serie;
module.exports.some = some;
+module.exports.wrapfn = wrap;