123456789101112131415 |
- var _baseCreate = require('./_baseCreate.js');
- var isObject = require('./isObject.js');
- // Internal function to execute `sourceFunc` bound to `context` with optional
- // `args`. Determines whether to execute a function as a constructor or as a
- // normal function.
- function executeBound(sourceFunc, boundFunc, context, callingContext, args) {
- if (!(callingContext instanceof boundFunc)) return sourceFunc.apply(context, args);
- var self = _baseCreate(sourceFunc.prototype);
- var result = sourceFunc.apply(self, args);
- if (isObject(result)) return result;
- return self;
- }
- module.exports = executeBound;
|