mirror of
https://github.com/stCarolas/setup-maven.git
synced 2024-11-23 11:36:08 +08:00
14 lines
584 B
JavaScript
14 lines
584 B
JavaScript
|
import baseCreate from './_baseCreate.js';
|
||
|
import isObject from './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.
|
||
|
export default 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;
|
||
|
}
|