UNPKG

prepack

Version:

Execute a JS bundle, serialize global state and side effects to a snapshot that can be quickly restored.

63 lines (43 loc) 2.36 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = function (opts = {}, debugChannel = undefined) { (0, _initializeSingletons2.default)(); let r = new _realm.Realm(opts); if (debugChannel) { if (debugChannel.debuggerIsAttached()) { r.debuggerInstance = new _Debugger.DebugServer(debugChannel, r); } } let i = r.intrinsics; (0, _index.initialize)(i, r); // TODO: Find a way to let different environments initialize their own global // object for special magic host objects such as the window object in the DOM. r.$GlobalObject = new _index4.ObjectValue(r, i.ObjectPrototype, "global"); (0, _global2.default)(r); for (let name in evaluators) r.evaluators[name] = evaluators[name]; for (let name in partialEvaluators) r.partialEvaluators[name] = partialEvaluators[name]; r.simplifyAndRefineAbstractValue = _simplifier2.default.bind(null, r, false); r.simplifyAndRefineAbstractCondition = _simplifier2.default.bind(null, r, true); r.$GlobalEnv = _singletons.Environment.NewGlobalEnvironment(r, r.$GlobalObject, r.$GlobalObject); return r; }; var _realm = require("./realm.js"); var _initializeSingletons = require("./initialize-singletons.js"); var _initializeSingletons2 = _interopRequireDefault(_initializeSingletons); var _index = require("./intrinsics/index.js"); var _global = require("./intrinsics/ecma262/global.js"); var _global2 = _interopRequireDefault(_global); var _index2 = require("./evaluators/index.js"); var evaluators = _interopRequireWildcard(_index2); var _index3 = require("./partial-evaluators/index.js"); var partialEvaluators = _interopRequireWildcard(_index3); var _singletons = require("./singletons.js"); var _index4 = require("./values/index.js"); var _Debugger = require("./debugger/server/Debugger.js"); var _simplifier = require("./utils/simplifier.js"); var _simplifier2 = _interopRequireDefault(_simplifier); function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } //# sourceMappingURL=construct_realm.js.map