'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.cps = exports.call = undefined; var _is = require('../utils/is'); var _is2 = _interopRequireDefault(_is); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } } var call = exports.call = function call(value, next, rungen, yieldNext, raiseNext) { if (!_is2.default.call(value)) return false; try { next(value.func.apply(value.context, value.args)); } catch (err) { raiseNext(err); } return true; }; var cps = exports.cps = function cps(value, next, rungen, yieldNext, raiseNext) { var _value$func; if (!_is2.default.cps(value)) return false; (_value$func = value.func).call.apply(_value$func, [null].concat(_toConsumableArray(value.args), [function (err, result) { if (err) raiseNext(err);else next(result); }])); return true; }; exports.default = [call, cps];