/
eb
/
Surf
Обзор
Документация
Войти
/
eb
/
Surf
Код
Запросы
0
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
node_modules/ext/thenable_/finally.js
24 строки
673 B
EvgeniyBudaev
Initial commit
17 фев 2020, 09:02
17 фев 2020, 09:02
bb6f06f
Код
Авторство
О чём код?
"use strict"; var ensurePlainFunction = require("type/plain-function/ensure") , isThenable = require("type/thenable/is") , ensureThenable = require("type/thenable/ensure"); var resolveCallback = function (callback, next) { var callbackResult = callback(); if (!isThenable(callbackResult)) return next(); return callbackResult.then(next); }; module.exports = function (callback) { ensureThenable(this); ensurePlainFunction(callback); return this.then( function (result) { return resolveCallback(callback, function () { return result; }); }, function (error) { return resolveCallback(callback, function () { throw error; }); } ); };