forked from actions/setup-maven
19 lines
535 B
JavaScript
19 lines
535 B
JavaScript
import isObject from './isObject.js';
|
|
import { nativeCreate } from './_setup.js';
|
|
|
|
// Create a naked function reference for surrogate-prototype-swapping.
|
|
function ctor() {
|
|
return function(){};
|
|
}
|
|
|
|
// An internal function for creating a new object that inherits from another.
|
|
export default function baseCreate(prototype) {
|
|
if (!isObject(prototype)) return {};
|
|
if (nativeCreate) return nativeCreate(prototype);
|
|
var Ctor = ctor();
|
|
Ctor.prototype = prototype;
|
|
var result = new Ctor;
|
|
Ctor.prototype = null;
|
|
return result;
|
|
}
|