Name Description Size
.eslintrc.js 5293
Array-inl.h 1106
Array.cpp Whether obj may have indexed properties anywhere besides its dense elements. This includes other indexed properties in its shape hierarchy, and indexed properties or elements along its prototype chain. 155697
Array.h JS Array interface. 9448
Array.js ES5 43053
AsyncFunction.js 617
AsyncIteration.js ECMA262 7.4.7 AsyncIteratorClose 14454
AtomicsObject.cpp JS Atomics pseudo-module. See chapter 24.4 "The Atomics Object" and chapter 27 "Memory Model" in ECMAScript 2021 for the full specification. 33612
AtomicsObject.h 5090
BigInt.cpp !JS_HAS_INTL_API 6719
BigInt.h 1718
BigInt.js Format this BigInt object into a string, using the locale and formatting options provided. Spec PR: 1340
Boolean-inl.h namespace js 981
Boolean.cpp JS boolean implementation. 5094
Boolean.h JS boolean interface. 625
DataViewObject.cpp bytesPerElement = 31821
DataViewObject.h 6426
Date.js Get a cached DateTimeFormat formatter object, created like so: var opts = ToDateTimeOptions(undefined, required, defaults); return new Intl.DateTimeFormat(undefined, opts); |format| must be a key from the "formatters" Record described above. 6112 \ /* This Source Code Form is subject to the terms of the Mozilla Public * License, v. 2.0. If a copy of the MPL was not distributed with this * file, You can obtain one at */ namespace js { namespace %(namespace)s { static const %(sources_type)s data[] = { %(sources_data)s }; static const %(sources_type)s * const %(sources_name)s = reinterpret_cast<const %(sources_type)s *>(data); uint32_t GetCompressedSize() { return %(compressed_total_length)i; } uint32_t GetRawScriptsSize() { return %(raw_total_length)i; } } // selfhosted } // js 7140
Error.js ES6 20140718 draft 867
Eval.cpp static 18366
Eval.h builtin_Eval_h 1357
FinalizationRegistryObject.cpp static 28172
FinalizationRegistryObject.h 11844
Function.js bind_bindFunction{0,1,2} are special cases of the generic bind_bindFunctionN below. They avoid the need to merge the lists of bound arguments and call arguments to the bound function into a new list which is then used in a destructuring call of the bound function. All three of these functions again have special-cases for call argument counts between 0 and 5. For calls with 6+ arguments, all - bound and call - arguments are copied into an array before invoking the generic call and construct helper functions. This avoids having to use rest parameters and destructuring in the fast path. Directly embedding the for-loop to combine bound and call arguments may inhibit inlining of the bound function, so we use a separate combiner function to perform this task. This combiner function is created lazily to ensure we only pay its construction cost when needed. All bind_bindFunction{X} functions have the same signature to enable simple reading out of closed-over state by debugging functions. Note: We use the '$' prefix on the function to force it to be an extended function so that `finishBoundFunctionInit` can track length. 13821
Generator.js 2855
HandlerFunction-inl.h Handler for operations that act on a target object, and possibly upon an extra value. 3947
Iterator.js ECMA262 7.2.7 19616
JSON.cpp ES5 15.12.3 Quote. Requires that the destination has enough space allocated for src after escaping (that is, `2 + 6 * (srcEnd - srcBegin)` characters). 39265
JSON.h If maybeSafely is true, Stringify will attempt to assert the API requirements of JS::ToJSONMaybeSafely as it traverses the graph, and will not try to invoke .toJSON on things as it goes. 1267
Map.js 3680
MapObject.cpp HashableValue ********************************************************* 61055
MapObject.h Comparing two ropes for equality can fail. The js::HashTable template requires infallible hash() and match() operations. Therefore we require all values to be converted to hashable form before being used as a key in a Map or Set object. All values except ropes are hashable as-is. 17782
ModuleObject.cpp static 83394
ModuleObject.h 15685
Number.js Format this Number object into a string, using the locale and formatting options provided. Spec: ECMAScript Language Specification, 5.1 edition, Spec: ECMAScript Internationalization API Specification, 13.2.1. 3005
Object.cpp Make an object whether this was called with 'new' or not. 66989
Object.h Like IdToValue, but convert int jsids to strings. This is used when exposing a jsid to script for Object.getOwnProperty{Names,Symbols} or scriptable proxy traps. 2432
Object.js ES6 draft rev 32 (2015 Feb 2) 9706
Profilers.cpp Profiling-related API 15511
Profilers.h Functions for controlling profilers from within JS: Valgrind, Perf, etc 2758
Promise-inl.h Given a settled (i.e. fulfilled or rejected, not pending) promise, sets |promise.[[PromiseIsHandled]]| to true and removes it from the list of unhandled rejected promises. NOTE: If you need to set |promise.[[PromiseIsHandled]]| on a pending promise, use |PromiseObject::setHandled()| directly. 1577
Promise.cpp ES2023 draft rev 714fa3dd1e8237ae9c666146270f81880089eca5 Promise Resolve Functions 237806
Promise.h Unforgeable version of the JS builtin Promise.all. Takes a HandleValueVector of Promise objects and returns a promise that's resolved with an array of resolution values when all those promises have been resolved, or rejected with the rejection value of the first rejected promise. Asserts that all objects in the `promises` vector are, maybe wrapped, instances of `Promise` or a subclass of `Promise`. 10588
Promise.js 2221
RecordObject.cpp 2291
RecordObject.h 823
Reflect.cpp Reflect methods ******************************************************* 6971
Reflect.h builtin_Reflect_h 967
Reflect.js , newTarget 5424
ReflectParse.cpp JS reflection package. 135310
RegExp.cpp Implements RegExpBuiltinExec: Steps 18-35 68571
RegExp.h The following builtin natives are extern'd for pointer comparison in other parts of the engine. 6966
RegExp.js 39056
RegExpGlobalReplaceOpt.h.js 4530
RegExpLocalReplaceOpt.h.js 4159
SelfHostingDefines.h 3999
Set.js 17271
ShadowRealm.cpp static 26196
ShadowRealm.h 1082
Sorting.js 5978
String.cpp Forward declarations for URI encode/decode and helper routines 131302
String.h Initialize the String class, returning its prototype object. 3920
String.js A helper function implementing the logic for both String.prototype.padStart and String.prototype.padEnd as described in ES7 Draft March 29, 2016 30786
Symbol.cpp 7464
Symbol.h Stores this Symbol object's [[PrimitiveValue]]. 2439
TestingFunctions.cpp 279803
TestingFunctions.h namespace js 1691
TestingUtility.cpp 6967
TestingUtility.h namespace js 2380
Tuple.js Step 1. 15850
TupleObject.cpp 3096
TupleObject.h 954
TypedArray.js Steps 3-5 (non-wrapped typed arrays). 54820
TypedArrayConstants.h 834
Utilities.js Specification types ********* 6164
WeakMap.js 778
WeakMapObject-inl.h builtin_WeakMapObject_inl_h 1936
WeakMapObject.cpp static 9781
WeakMapObject.h builtin_WeakMapObject_h 2346
WeakRefObject.cpp static 8103
WeakRefObject.h builtin_WeakRefObject_h 1361
WeakSet.js 628
WeakSetObject.cpp static 7355
WeakSetObject.h builtin_WeakSetObject_h 1845
WrappedFunctionObject.cpp 11606
WrappedFunctionObject.h 1431