690 lines
26 KiB
JavaScript
690 lines
26 KiB
JavaScript
"use strict";
|
|
|
|
Object.defineProperty(exports, "__esModule", {
|
|
value: true
|
|
});
|
|
exports.initialize = initialize;
|
|
|
|
var _index = require("../values/index.js");
|
|
|
|
var _singletons = require("../singletons.js");
|
|
|
|
var _Object = require("./ecma262/Object.js");
|
|
|
|
var _Object2 = _interopRequireDefault(_Object);
|
|
|
|
var _ObjectPrototype = require("./ecma262/ObjectPrototype.js");
|
|
|
|
var _ObjectPrototype2 = _interopRequireDefault(_ObjectPrototype);
|
|
|
|
var _Error = require("./ecma262/Error.js");
|
|
|
|
var _Error2 = _interopRequireDefault(_Error);
|
|
|
|
var _ErrorPrototype = require("./ecma262/ErrorPrototype.js");
|
|
|
|
var _ErrorPrototype2 = _interopRequireDefault(_ErrorPrototype);
|
|
|
|
var _TypeError = require("./ecma262/TypeError.js");
|
|
|
|
var _TypeError2 = _interopRequireDefault(_TypeError);
|
|
|
|
var _TypeErrorPrototype = require("./ecma262/TypeErrorPrototype.js");
|
|
|
|
var _TypeErrorPrototype2 = _interopRequireDefault(_TypeErrorPrototype);
|
|
|
|
var _RangeError = require("./ecma262/RangeError.js");
|
|
|
|
var _RangeError2 = _interopRequireDefault(_RangeError);
|
|
|
|
var _RangeErrorPrototype = require("./ecma262/RangeErrorPrototype.js");
|
|
|
|
var _RangeErrorPrototype2 = _interopRequireDefault(_RangeErrorPrototype);
|
|
|
|
var _ReferenceError = require("./ecma262/ReferenceError.js");
|
|
|
|
var _ReferenceError2 = _interopRequireDefault(_ReferenceError);
|
|
|
|
var _ReferenceErrorPrototype = require("./ecma262/ReferenceErrorPrototype.js");
|
|
|
|
var _ReferenceErrorPrototype2 = _interopRequireDefault(_ReferenceErrorPrototype);
|
|
|
|
var _SyntaxError = require("./ecma262/SyntaxError.js");
|
|
|
|
var _SyntaxError2 = _interopRequireDefault(_SyntaxError);
|
|
|
|
var _SyntaxErrorPrototype = require("./ecma262/SyntaxErrorPrototype.js");
|
|
|
|
var _SyntaxErrorPrototype2 = _interopRequireDefault(_SyntaxErrorPrototype);
|
|
|
|
var _URIError = require("./ecma262/URIError.js");
|
|
|
|
var _URIError2 = _interopRequireDefault(_URIError);
|
|
|
|
var _URIErrorPrototype = require("./ecma262/URIErrorPrototype.js");
|
|
|
|
var _URIErrorPrototype2 = _interopRequireDefault(_URIErrorPrototype);
|
|
|
|
var _EvalError = require("./ecma262/EvalError.js");
|
|
|
|
var _EvalError2 = _interopRequireDefault(_EvalError);
|
|
|
|
var _EvalErrorPrototype = require("./ecma262/EvalErrorPrototype.js");
|
|
|
|
var _EvalErrorPrototype2 = _interopRequireDefault(_EvalErrorPrototype);
|
|
|
|
var _Function = require("./ecma262/Function.js");
|
|
|
|
var _Function2 = _interopRequireDefault(_Function);
|
|
|
|
var _FunctionPrototype = require("./ecma262/FunctionPrototype.js");
|
|
|
|
var _FunctionPrototype2 = _interopRequireDefault(_FunctionPrototype);
|
|
|
|
var _Generator = require("./ecma262/Generator.js");
|
|
|
|
var _Generator2 = _interopRequireDefault(_Generator);
|
|
|
|
var _GeneratorFunction = require("./ecma262/GeneratorFunction.js");
|
|
|
|
var _GeneratorFunction2 = _interopRequireDefault(_GeneratorFunction);
|
|
|
|
var _GeneratorPrototype = require("./ecma262/GeneratorPrototype.js");
|
|
|
|
var _GeneratorPrototype2 = _interopRequireDefault(_GeneratorPrototype);
|
|
|
|
var _Array = require("./ecma262/Array.js");
|
|
|
|
var _Array2 = _interopRequireDefault(_Array);
|
|
|
|
var _ArrayPrototype = require("./ecma262/ArrayPrototype.js");
|
|
|
|
var _ArrayPrototype2 = _interopRequireDefault(_ArrayPrototype);
|
|
|
|
var _Date = require("./ecma262/Date.js");
|
|
|
|
var _Date2 = _interopRequireDefault(_Date);
|
|
|
|
var _DatePrototype = require("./ecma262/DatePrototype.js");
|
|
|
|
var _DatePrototype2 = _interopRequireDefault(_DatePrototype);
|
|
|
|
var _RegExp = require("./ecma262/RegExp.js");
|
|
|
|
var _RegExp2 = _interopRequireDefault(_RegExp);
|
|
|
|
var _RegExpPrototype = require("./ecma262/RegExpPrototype.js");
|
|
|
|
var _RegExpPrototype2 = _interopRequireDefault(_RegExpPrototype);
|
|
|
|
var _Symbol = require("./ecma262/Symbol.js");
|
|
|
|
var _Symbol2 = _interopRequireDefault(_Symbol);
|
|
|
|
var _SymbolPrototype = require("./ecma262/SymbolPrototype.js");
|
|
|
|
var _SymbolPrototype2 = _interopRequireDefault(_SymbolPrototype);
|
|
|
|
var _String = require("./ecma262/String.js");
|
|
|
|
var _String2 = _interopRequireDefault(_String);
|
|
|
|
var _StringPrototype = require("./ecma262/StringPrototype.js");
|
|
|
|
var _StringPrototype2 = _interopRequireDefault(_StringPrototype);
|
|
|
|
var _Number = require("./ecma262/Number.js");
|
|
|
|
var _Number2 = _interopRequireDefault(_Number);
|
|
|
|
var _NumberPrototype = require("./ecma262/NumberPrototype.js");
|
|
|
|
var _NumberPrototype2 = _interopRequireDefault(_NumberPrototype);
|
|
|
|
var _Boolean = require("./ecma262/Boolean.js");
|
|
|
|
var _Boolean2 = _interopRequireDefault(_Boolean);
|
|
|
|
var _BooleanPrototype = require("./ecma262/BooleanPrototype.js");
|
|
|
|
var _BooleanPrototype2 = _interopRequireDefault(_BooleanPrototype);
|
|
|
|
var _DataView = require("./ecma262/DataView.js");
|
|
|
|
var _DataView2 = _interopRequireDefault(_DataView);
|
|
|
|
var _DataViewPrototype = require("./ecma262/DataViewPrototype.js");
|
|
|
|
var _DataViewPrototype2 = _interopRequireDefault(_DataViewPrototype);
|
|
|
|
var _TypedArray = require("./ecma262/TypedArray.js");
|
|
|
|
var _TypedArray2 = _interopRequireDefault(_TypedArray);
|
|
|
|
var _TypedArrayPrototype = require("./ecma262/TypedArrayPrototype.js");
|
|
|
|
var _TypedArrayPrototype2 = _interopRequireDefault(_TypedArrayPrototype);
|
|
|
|
var _Float32Array = require("./ecma262/Float32Array.js");
|
|
|
|
var _Float32Array2 = _interopRequireDefault(_Float32Array);
|
|
|
|
var _Float32ArrayPrototype = require("./ecma262/Float32ArrayPrototype.js");
|
|
|
|
var _Float32ArrayPrototype2 = _interopRequireDefault(_Float32ArrayPrototype);
|
|
|
|
var _Float64Array = require("./ecma262/Float64Array.js");
|
|
|
|
var _Float64Array2 = _interopRequireDefault(_Float64Array);
|
|
|
|
var _Float64ArrayPrototype = require("./ecma262/Float64ArrayPrototype.js");
|
|
|
|
var _Float64ArrayPrototype2 = _interopRequireDefault(_Float64ArrayPrototype);
|
|
|
|
var _Int8Array = require("./ecma262/Int8Array.js");
|
|
|
|
var _Int8Array2 = _interopRequireDefault(_Int8Array);
|
|
|
|
var _Int8ArrayPrototype = require("./ecma262/Int8ArrayPrototype.js");
|
|
|
|
var _Int8ArrayPrototype2 = _interopRequireDefault(_Int8ArrayPrototype);
|
|
|
|
var _Int16Array = require("./ecma262/Int16Array.js");
|
|
|
|
var _Int16Array2 = _interopRequireDefault(_Int16Array);
|
|
|
|
var _Int16ArrayPrototype = require("./ecma262/Int16ArrayPrototype.js");
|
|
|
|
var _Int16ArrayPrototype2 = _interopRequireDefault(_Int16ArrayPrototype);
|
|
|
|
var _Int32Array = require("./ecma262/Int32Array.js");
|
|
|
|
var _Int32Array2 = _interopRequireDefault(_Int32Array);
|
|
|
|
var _Int32ArrayPrototype = require("./ecma262/Int32ArrayPrototype.js");
|
|
|
|
var _Int32ArrayPrototype2 = _interopRequireDefault(_Int32ArrayPrototype);
|
|
|
|
var _Map = require("./ecma262/Map.js");
|
|
|
|
var _Map2 = _interopRequireDefault(_Map);
|
|
|
|
var _MapPrototype = require("./ecma262/MapPrototype.js");
|
|
|
|
var _MapPrototype2 = _interopRequireDefault(_MapPrototype);
|
|
|
|
var _WeakMap = require("./ecma262/WeakMap.js");
|
|
|
|
var _WeakMap2 = _interopRequireDefault(_WeakMap);
|
|
|
|
var _WeakMapPrototype = require("./ecma262/WeakMapPrototype.js");
|
|
|
|
var _WeakMapPrototype2 = _interopRequireDefault(_WeakMapPrototype);
|
|
|
|
var _Set = require("./ecma262/Set.js");
|
|
|
|
var _Set2 = _interopRequireDefault(_Set);
|
|
|
|
var _SetPrototype = require("./ecma262/SetPrototype.js");
|
|
|
|
var _SetPrototype2 = _interopRequireDefault(_SetPrototype);
|
|
|
|
var _Promise = require("./ecma262/Promise.js");
|
|
|
|
var _Promise2 = _interopRequireDefault(_Promise);
|
|
|
|
var _PromisePrototype = require("./ecma262/PromisePrototype.js");
|
|
|
|
var _PromisePrototype2 = _interopRequireDefault(_PromisePrototype);
|
|
|
|
var _Uint8Array = require("./ecma262/Uint8Array.js");
|
|
|
|
var _Uint8Array2 = _interopRequireDefault(_Uint8Array);
|
|
|
|
var _Uint8ArrayPrototype = require("./ecma262/Uint8ArrayPrototype.js");
|
|
|
|
var _Uint8ArrayPrototype2 = _interopRequireDefault(_Uint8ArrayPrototype);
|
|
|
|
var _Uint8ClampedArray = require("./ecma262/Uint8ClampedArray.js");
|
|
|
|
var _Uint8ClampedArray2 = _interopRequireDefault(_Uint8ClampedArray);
|
|
|
|
var _Uint8ClampedArrayPrototype = require("./ecma262/Uint8ClampedArrayPrototype.js");
|
|
|
|
var _Uint8ClampedArrayPrototype2 = _interopRequireDefault(_Uint8ClampedArrayPrototype);
|
|
|
|
var _Uint16Array = require("./ecma262/Uint16Array.js");
|
|
|
|
var _Uint16Array2 = _interopRequireDefault(_Uint16Array);
|
|
|
|
var _Uint16ArrayPrototype = require("./ecma262/Uint16ArrayPrototype.js");
|
|
|
|
var _Uint16ArrayPrototype2 = _interopRequireDefault(_Uint16ArrayPrototype);
|
|
|
|
var _Uint32Array = require("./ecma262/Uint32Array.js");
|
|
|
|
var _Uint32Array2 = _interopRequireDefault(_Uint32Array);
|
|
|
|
var _Uint32ArrayPrototype = require("./ecma262/Uint32ArrayPrototype.js");
|
|
|
|
var _Uint32ArrayPrototype2 = _interopRequireDefault(_Uint32ArrayPrototype);
|
|
|
|
var _WeakSet = require("./ecma262/WeakSet.js");
|
|
|
|
var _WeakSet2 = _interopRequireDefault(_WeakSet);
|
|
|
|
var _WeakSetPrototype = require("./ecma262/WeakSetPrototype.js");
|
|
|
|
var _WeakSetPrototype2 = _interopRequireDefault(_WeakSetPrototype);
|
|
|
|
var _ArrayBuffer = require("./ecma262/ArrayBuffer.js");
|
|
|
|
var _ArrayBuffer2 = _interopRequireDefault(_ArrayBuffer);
|
|
|
|
var _ArrayBufferPrototype = require("./ecma262/ArrayBufferPrototype.js");
|
|
|
|
var _ArrayBufferPrototype2 = _interopRequireDefault(_ArrayBufferPrototype);
|
|
|
|
var _JSON = require("./ecma262/JSON.js");
|
|
|
|
var _JSON2 = _interopRequireDefault(_JSON);
|
|
|
|
var _Reflect = require("./ecma262/Reflect.js");
|
|
|
|
var _Reflect2 = _interopRequireDefault(_Reflect);
|
|
|
|
var _Math = require("./ecma262/Math.js");
|
|
|
|
var _Math2 = _interopRequireDefault(_Math);
|
|
|
|
var _Proxy = require("./ecma262/Proxy.js");
|
|
|
|
var _Proxy2 = _interopRequireDefault(_Proxy);
|
|
|
|
var _parseInt = require("./ecma262/parseInt.js");
|
|
|
|
var _parseInt2 = _interopRequireDefault(_parseInt);
|
|
|
|
var _parseFloat = require("./ecma262/parseFloat.js");
|
|
|
|
var _parseFloat2 = _interopRequireDefault(_parseFloat);
|
|
|
|
var _isFinite = require("./ecma262/isFinite.js");
|
|
|
|
var _isFinite2 = _interopRequireDefault(_isFinite);
|
|
|
|
var _decodeURI = require("./ecma262/decodeURI.js");
|
|
|
|
var _decodeURI2 = _interopRequireDefault(_decodeURI);
|
|
|
|
var _decodeURIComponent = require("./ecma262/decodeURIComponent.js");
|
|
|
|
var _decodeURIComponent2 = _interopRequireDefault(_decodeURIComponent);
|
|
|
|
var _encodeURI = require("./ecma262/encodeURI.js");
|
|
|
|
var _encodeURI2 = _interopRequireDefault(_encodeURI);
|
|
|
|
var _encodeURIComponent = require("./ecma262/encodeURIComponent.js");
|
|
|
|
var _encodeURIComponent2 = _interopRequireDefault(_encodeURIComponent);
|
|
|
|
var _eval = require("./ecma262/eval.js");
|
|
|
|
var _eval2 = _interopRequireDefault(_eval);
|
|
|
|
var _isNaN = require("./ecma262/isNaN.js");
|
|
|
|
var _isNaN2 = _interopRequireDefault(_isNaN);
|
|
|
|
var _ArrayIteratorPrototype = require("./ecma262/ArrayIteratorPrototype.js");
|
|
|
|
var _ArrayIteratorPrototype2 = _interopRequireDefault(_ArrayIteratorPrototype);
|
|
|
|
var _StringIteratorPrototype = require("./ecma262/StringIteratorPrototype.js");
|
|
|
|
var _StringIteratorPrototype2 = _interopRequireDefault(_StringIteratorPrototype);
|
|
|
|
var _MapIteratorPrototype = require("./ecma262/MapIteratorPrototype.js");
|
|
|
|
var _MapIteratorPrototype2 = _interopRequireDefault(_MapIteratorPrototype);
|
|
|
|
var _SetIteratorPrototype = require("./ecma262/SetIteratorPrototype.js");
|
|
|
|
var _SetIteratorPrototype2 = _interopRequireDefault(_SetIteratorPrototype);
|
|
|
|
var _IteratorPrototype = require("./ecma262/IteratorPrototype.js");
|
|
|
|
var _IteratorPrototype2 = _interopRequireDefault(_IteratorPrototype);
|
|
|
|
var _ArrayProto_values = require("./ecma262/ArrayProto_values.js");
|
|
|
|
var _ArrayProto_values2 = _interopRequireDefault(_ArrayProto_values);
|
|
|
|
var _ArrayProto_toString = require("./ecma262/ArrayProto_toString.js");
|
|
|
|
var _ArrayProto_toString2 = _interopRequireDefault(_ArrayProto_toString);
|
|
|
|
var _ObjectProto_toString = require("./ecma262/ObjectProto_toString.js");
|
|
|
|
var _ObjectProto_toString2 = _interopRequireDefault(_ObjectProto_toString);
|
|
|
|
var _TypedArrayProto_values = require("./ecma262/TypedArrayProto_values.js");
|
|
|
|
var _TypedArrayProto_values2 = _interopRequireDefault(_TypedArrayProto_values);
|
|
|
|
var _ThrowTypeError = require("./ecma262/ThrowTypeError.js");
|
|
|
|
var _ThrowTypeError2 = _interopRequireDefault(_ThrowTypeError);
|
|
|
|
var _IntrospectionError = require("./prepack/__IntrospectionError.js");
|
|
|
|
var _IntrospectionError2 = _interopRequireDefault(_IntrospectionError);
|
|
|
|
var _IntrospectionErrorPrototype = require("./prepack/__IntrospectionErrorPrototype.js");
|
|
|
|
var _IntrospectionErrorPrototype2 = _interopRequireDefault(_IntrospectionErrorPrototype);
|
|
|
|
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
|
|
|
|
/**
|
|
* Copyright (c) 2017-present, Facebook, Inc.
|
|
* All rights reserved.
|
|
*
|
|
* This source code is licensed under the BSD-style license found in the
|
|
* LICENSE file in the root directory of this source tree. An additional grant
|
|
* of patent rights can be found in the PATENTS file in the same directory.
|
|
*/
|
|
|
|
function initialize(i, realm) {
|
|
i.undefined = new _index.UndefinedValue(realm);
|
|
i.empty = new _index.EmptyValue(realm);
|
|
i.null = new _index.NullValue(realm);
|
|
i.false = new _index.BooleanValue(realm, false);
|
|
i.true = new _index.BooleanValue(realm, true);
|
|
i.NaN = new _index.NumberValue(realm, NaN);
|
|
i.negativeInfinity = new _index.NumberValue(realm, -Infinity);
|
|
i.Infinity = new _index.NumberValue(realm, +Infinity);
|
|
i.negativeZero = new _index.NumberValue(realm, -0);
|
|
i.zero = new _index.NumberValue(realm, +0);
|
|
i.emptyString = new _index.StringValue(realm, "");
|
|
|
|
//
|
|
i.ObjectPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Object.prototype");
|
|
i.FunctionPrototype = i.ObjectPrototype;
|
|
i.FunctionPrototype = new _index.NativeFunctionValue(realm, "Function.prototype", "", 0, function (context) {
|
|
return i.undefined;
|
|
}, false);
|
|
|
|
i.parseFloat = (0, _parseFloat2.default)(realm);
|
|
i.parseInt = (0, _parseInt2.default)(realm);
|
|
|
|
i.SymbolPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Symbol.prototype");
|
|
|
|
// initialize common symbols
|
|
i.SymbolIsConcatSpreadable = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.isConcatSpreadable"), "Symbol.isConcatSpreadable");
|
|
i.SymbolSpecies = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.species"), "Symbol.species");
|
|
i.SymbolReplace = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.replace"), "Symbol.replace");
|
|
i.SymbolIterator = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.iterator"), "Symbol.iterator");
|
|
i.SymbolHasInstance = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.hasInstance"), "Symbol.hasInstance");
|
|
i.SymbolToPrimitive = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.toPrimitive"), "Symbol.toPrimitive");
|
|
i.SymbolToStringTag = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.toStringTag"), "Symbol.toStringTag");
|
|
i.SymbolMatch = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.match"), "Symbol.match");
|
|
i.SymbolSplit = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.split"), "Symbol.split");
|
|
i.SymbolSearch = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.search"), "Symbol.search");
|
|
i.SymbolUnscopables = new _index.SymbolValue(realm, new _index.StringValue(realm, "Symbol.unscopables"), "Symbol.unscopables");
|
|
|
|
//
|
|
i.ArrayProto_values = (0, _ArrayProto_values2.default)(realm);
|
|
i.ArrayProto_toString = (0, _ArrayProto_toString2.default)(realm);
|
|
|
|
//
|
|
i.ObjectProto_toString = (0, _ObjectProto_toString2.default)(realm);
|
|
|
|
//
|
|
if (!realm.isCompatibleWith(realm.MOBILE_JSC_VERSION)) i.TypedArrayProto_values = (0, _TypedArrayProto_values2.default)(realm);
|
|
|
|
//
|
|
i.ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Array.prototype");
|
|
i.RegExpPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "RegExp.prototype");
|
|
i.DatePrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Date.prototype");
|
|
i.StringPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "String.prototype");
|
|
i.BooleanPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Boolean.prototype");
|
|
i.NumberPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Number.prototype");
|
|
i.DataViewPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "DataView.prototype");
|
|
i.PromisePrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Promise.prototype");
|
|
i.ArrayBufferPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "ArrayBuffer.prototype");
|
|
|
|
// error prototypes
|
|
i.ErrorPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Error.prototype");
|
|
i.RangeErrorPrototype = new _index.ObjectValue(realm, i.ErrorPrototype, "RangeError.prototype");
|
|
i.TypeErrorPrototype = new _index.ObjectValue(realm, i.ErrorPrototype, "TypeError.prototype");
|
|
i.ReferenceErrorPrototype = new _index.ObjectValue(realm, i.ErrorPrototype, "ReferenceError.prototype");
|
|
i.URIErrorPrototype = new _index.ObjectValue(realm, i.ErrorPrototype, "URIError.prototype");
|
|
i.EvalErrorPrototype = new _index.ObjectValue(realm, i.ErrorPrototype, "EvalError.prototype");
|
|
i.SyntaxErrorPrototype = new _index.ObjectValue(realm, i.ErrorPrototype, "SyntaxError.prototype");
|
|
i.__IntrospectionErrorPrototype = new _index.ObjectValue(realm, i.ErrorPrototype, "__IntrospectionError.prototype");
|
|
|
|
// collection prototypes
|
|
i.MapPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Map.prototype");
|
|
i.SetPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Set.prototype");
|
|
i.WeakMapPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "WeakMap.prototype");
|
|
if (!realm.isCompatibleWith(realm.MOBILE_JSC_VERSION)) {
|
|
i.WeakSetPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "WeakSet.prototype");
|
|
}
|
|
|
|
// typed array prototypes
|
|
if (!realm.isCompatibleWith(realm.MOBILE_JSC_VERSION)) i.TypedArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "TypedArray.prototype");
|
|
i.Float32ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Float32Array.prototype");
|
|
i.Float64ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Float64Array.prototype");
|
|
i.Int8ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Int8Array.prototype");
|
|
i.Int16ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Int16Array.prototype");
|
|
i.Int32ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Int32Array.prototype");
|
|
i.Uint8ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Uint8Array.prototype");
|
|
i.Uint8ClampedArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Uint8ClampedArray.prototype");
|
|
i.Uint16ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Uint16Array.prototype");
|
|
i.Uint32ArrayPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "Uint32Array.prototype");
|
|
|
|
// iterator prototypes
|
|
i.IteratorPrototype = new _index.ObjectValue(realm, i.ObjectPrototype, "([][Symbol.iterator]().__proto__.__proto__)");
|
|
i.MapIteratorPrototype = new _index.ObjectValue(realm, i.IteratorPrototype, "(new Map()[Symbol.iterator]().__proto__)");
|
|
i.SetIteratorPrototype = new _index.ObjectValue(realm, i.IteratorPrototype, "(new Set()[Symbol.iterator]().__proto__)");
|
|
i.ArrayIteratorPrototype = new _index.ObjectValue(realm, i.IteratorPrototype, "([][Symbol.iterator]().__proto__)");
|
|
i.StringIteratorPrototype = new _index.ObjectValue(realm, i.IteratorPrototype, '(""[Symbol.iterator]().__proto__)');
|
|
|
|
//
|
|
(0, _ObjectPrototype2.default)(realm, i.ObjectPrototype);
|
|
(0, _FunctionPrototype2.default)(realm, i.FunctionPrototype);
|
|
(0, _ArrayPrototype2.default)(realm, i.ArrayPrototype);
|
|
(0, _DatePrototype2.default)(realm, i.DatePrototype);
|
|
(0, _RegExpPrototype2.default)(realm, i.RegExpPrototype);
|
|
(0, _StringPrototype2.default)(realm, i.StringPrototype);
|
|
(0, _BooleanPrototype2.default)(realm, i.BooleanPrototype);
|
|
(0, _NumberPrototype2.default)(realm, i.NumberPrototype);
|
|
(0, _SymbolPrototype2.default)(realm, i.SymbolPrototype);
|
|
(0, _ErrorPrototype2.default)(realm, i.ErrorPrototype);
|
|
(0, _TypeErrorPrototype2.default)(realm, i.TypeErrorPrototype);
|
|
(0, _RangeErrorPrototype2.default)(realm, i.RangeErrorPrototype);
|
|
(0, _ReferenceErrorPrototype2.default)(realm, i.ReferenceErrorPrototype);
|
|
(0, _URIErrorPrototype2.default)(realm, i.URIErrorPrototype);
|
|
(0, _EvalErrorPrototype2.default)(realm, i.EvalErrorPrototype);
|
|
(0, _SyntaxErrorPrototype2.default)(realm, i.SyntaxErrorPrototype);
|
|
(0, _IntrospectionErrorPrototype2.default)(realm, i.__IntrospectionErrorPrototype);
|
|
(0, _DataViewPrototype2.default)(realm, i.DataViewPrototype);
|
|
(0, _WeakMapPrototype2.default)(realm, i.WeakMapPrototype);
|
|
if (!realm.isCompatibleWith(realm.MOBILE_JSC_VERSION)) {
|
|
(0, _TypedArrayPrototype2.default)(realm, i.TypedArrayPrototype);
|
|
(0, _WeakSetPrototype2.default)(realm, i.WeakSetPrototype);
|
|
}
|
|
(0, _Float32ArrayPrototype2.default)(realm, i.Float32ArrayPrototype);
|
|
(0, _Float64ArrayPrototype2.default)(realm, i.Float64ArrayPrototype);
|
|
(0, _Int8ArrayPrototype2.default)(realm, i.Int8ArrayPrototype);
|
|
(0, _Int16ArrayPrototype2.default)(realm, i.Int16ArrayPrototype);
|
|
(0, _Int32ArrayPrototype2.default)(realm, i.Int32ArrayPrototype);
|
|
(0, _MapPrototype2.default)(realm, i.MapPrototype);
|
|
(0, _SetPrototype2.default)(realm, i.SetPrototype);
|
|
(0, _PromisePrototype2.default)(realm, i.PromisePrototype);
|
|
(0, _Uint8ArrayPrototype2.default)(realm, i.Uint8ArrayPrototype);
|
|
(0, _Uint8ClampedArrayPrototype2.default)(realm, i.Uint8ClampedArrayPrototype);
|
|
(0, _Uint16ArrayPrototype2.default)(realm, i.Uint16ArrayPrototype);
|
|
(0, _Uint32ArrayPrototype2.default)(realm, i.Uint32ArrayPrototype);
|
|
(0, _ArrayBufferPrototype2.default)(realm, i.ArrayBufferPrototype);
|
|
|
|
// iterator prototypes
|
|
(0, _IteratorPrototype2.default)(realm, i.IteratorPrototype);
|
|
(0, _ArrayIteratorPrototype2.default)(realm, i.ArrayIteratorPrototype);
|
|
(0, _StringIteratorPrototype2.default)(realm, i.StringIteratorPrototype);
|
|
(0, _MapIteratorPrototype2.default)(realm, i.MapIteratorPrototype);
|
|
(0, _SetIteratorPrototype2.default)(realm, i.SetIteratorPrototype);
|
|
|
|
//
|
|
i.Object = (0, _Object2.default)(realm);
|
|
i.Function = (0, _Function2.default)(realm);
|
|
i.Array = (0, _Array2.default)(realm);
|
|
i.RegExp = (0, _RegExp2.default)(realm);
|
|
i.Date = (0, _Date2.default)(realm);
|
|
i.String = (0, _String2.default)(realm);
|
|
i.Math = (0, _Math2.default)(realm);
|
|
i.Boolean = (0, _Boolean2.default)(realm);
|
|
i.Number = (0, _Number2.default)(realm);
|
|
i.Symbol = (0, _Symbol2.default)(realm);
|
|
i.JSON = (0, _JSON2.default)(realm);
|
|
i.Proxy = (0, _Proxy2.default)(realm);
|
|
if (!realm.isCompatibleWith(realm.MOBILE_JSC_VERSION)) i.Reflect = (0, _Reflect2.default)(realm);
|
|
i.Promise = (0, _Promise2.default)(realm);
|
|
i.DataView = (0, _DataView2.default)(realm);
|
|
|
|
// collections
|
|
i.Set = (0, _Set2.default)(realm);
|
|
i.Map = (0, _Map2.default)(realm);
|
|
i.WeakMap = (0, _WeakMap2.default)(realm);
|
|
if (!realm.isCompatibleWith(realm.MOBILE_JSC_VERSION)) {
|
|
i.WeakSet = (0, _WeakSet2.default)(realm);
|
|
}
|
|
i.ArrayBuffer = (0, _ArrayBuffer2.default)(realm);
|
|
|
|
// typed arrays
|
|
if (!realm.isCompatibleWith(realm.MOBILE_JSC_VERSION)) i.TypedArray = (0, _TypedArray2.default)(realm);
|
|
i.Float32Array = (0, _Float32Array2.default)(realm);
|
|
i.Float64Array = (0, _Float64Array2.default)(realm);
|
|
i.Int8Array = (0, _Int8Array2.default)(realm);
|
|
i.Int16Array = (0, _Int16Array2.default)(realm);
|
|
i.Int32Array = (0, _Int32Array2.default)(realm);
|
|
i.Uint8Array = (0, _Uint8Array2.default)(realm);
|
|
i.Uint8ClampedArray = (0, _Uint8ClampedArray2.default)(realm);
|
|
i.Uint16Array = (0, _Uint16Array2.default)(realm);
|
|
i.Uint32Array = (0, _Uint32Array2.default)(realm);
|
|
|
|
//
|
|
i.Error = (0, _Error2.default)(realm);
|
|
i.TypeError = (0, _TypeError2.default)(realm);
|
|
i.RangeError = (0, _RangeError2.default)(realm);
|
|
i.ReferenceError = (0, _ReferenceError2.default)(realm);
|
|
i.URIError = (0, _URIError2.default)(realm);
|
|
i.EvalError = (0, _EvalError2.default)(realm);
|
|
i.SyntaxError = (0, _SyntaxError2.default)(realm);
|
|
i.__IntrospectionError = (0, _IntrospectionError2.default)(realm);
|
|
|
|
//
|
|
var builtins = ["Object", "Function", "Symbol", "String", "Array", "Boolean", "RegExp", "Date", "Error", "Number", "TypeError", "RangeError", "ReferenceError", "SyntaxError", "URIError", "EvalError", "DataView", "Float32Array", "Float64Array", "Int8Array", "Int16Array", "Int32Array", "Map", "Set", "WeakMap", "Promise", "Uint8Array", "Uint8ClampedArray", "Uint16Array", "Uint32Array", "ArrayBuffer"];
|
|
if (!realm.isCompatibleWith(realm.MOBILE_JSC_VERSION)) {
|
|
builtins = builtins.concat(["WeakSet", "TypedArray"]);
|
|
}
|
|
|
|
var _iteratorNormalCompletion = true;
|
|
var _didIteratorError = false;
|
|
var _iteratorError = undefined;
|
|
|
|
try {
|
|
for (var _iterator = builtins[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
var name = _step.value;
|
|
|
|
var fn = i[name];
|
|
var proto = i[name + "Prototype"];
|
|
|
|
proto.$DefineOwnProperty("constructor", {
|
|
value: fn,
|
|
writable: true,
|
|
enumerable: false,
|
|
configurable: true
|
|
});
|
|
|
|
fn.$DefineOwnProperty("prototype", {
|
|
value: proto,
|
|
writable: false,
|
|
enumerable: false,
|
|
configurable: false
|
|
});
|
|
|
|
fn.$DefineOwnProperty("constructor", {
|
|
value: i.Function,
|
|
writable: true,
|
|
enumerable: false,
|
|
configurable: true
|
|
});
|
|
}
|
|
|
|
//
|
|
} catch (err) {
|
|
_didIteratorError = true;
|
|
_iteratorError = err;
|
|
} finally {
|
|
try {
|
|
if (!_iteratorNormalCompletion && _iterator.return) {
|
|
_iterator.return();
|
|
}
|
|
} finally {
|
|
if (_didIteratorError) {
|
|
throw _iteratorError;
|
|
}
|
|
}
|
|
}
|
|
|
|
i.GeneratorPrototype = new _index.ObjectValue(realm, i.FunctionPrototype, "Generator.prototype");
|
|
(0, _GeneratorPrototype2.default)(realm, i.GeneratorPrototype);
|
|
i.Generator = new _index.ObjectValue(realm, i.FunctionPrototype, "Generator");
|
|
(0, _Generator2.default)(realm, i.Generator);
|
|
i.GeneratorFunction = (0, _GeneratorFunction2.default)(realm);
|
|
|
|
i.Generator.$DefineOwnProperty("prototype", {
|
|
value: i.GeneratorPrototype,
|
|
writable: false,
|
|
enumerable: false,
|
|
configurable: true
|
|
});
|
|
i.GeneratorPrototype.$DefineOwnProperty("constructor", {
|
|
value: i.Generator,
|
|
writable: false,
|
|
enumerable: false,
|
|
configurable: true
|
|
});
|
|
|
|
i.GeneratorFunction.$DefineOwnProperty("prototype", {
|
|
value: i.Generator,
|
|
writable: false,
|
|
enumerable: false,
|
|
configurable: false
|
|
});
|
|
i.Generator.$DefineOwnProperty("constructor", {
|
|
value: i.GeneratorFunction,
|
|
writable: false,
|
|
enumerable: false,
|
|
configurable: true
|
|
});
|
|
|
|
//
|
|
i.isNaN = (0, _isNaN2.default)(realm);
|
|
i.isFinite = (0, _isFinite2.default)(realm);
|
|
i.decodeURI = (0, _decodeURI2.default)(realm);
|
|
i.decodeURIComponent = (0, _decodeURIComponent2.default)(realm);
|
|
i.encodeURI = (0, _encodeURI2.default)(realm);
|
|
i.encodeURIComponent = (0, _encodeURIComponent2.default)(realm);
|
|
i.ThrowTypeError = (0, _ThrowTypeError2.default)(realm);
|
|
i.eval = (0, _eval2.default)(realm);
|
|
|
|
// 8.2.2, step 12
|
|
_singletons.Functions.AddRestrictedFunctionProperties(i.FunctionPrototype, realm);
|
|
|
|
return i;
|
|
}
|
|
//# sourceMappingURL=index.js.map
|