deps/v8/src/js/prologue.js
function PostNatives(utils) {
  %CheckIsBootstrapping();

  for ( ; !IS_UNDEFINED(imports); imports = imports.next) {
    imports(exports_container);
  }

  // Whitelist of exports from normal natives to experimental natives and debug.
  var expose_list = [
    "AddBoundMethod",
    "ArrayToString",
    "AsyncFunctionNext",
    "AsyncFunctionThrow",
    "ErrorToString",
    "GetIterator",
    "GetMethod",
    "IntlParseDate",
    "IntlParseNumber",
    "IsNaN",
    "MakeError",
    "MakeRangeError",
    "MakeTypeError",
    "MapEntries",
    "MapIterator",
    "MapIteratorNext",
    "MaxSimple",
    "MinSimple",
    "NumberIsInteger",
    "PromiseChain",
    "PromiseDefer",
    "PromiseAccept",
    "PromiseCreateRejected",
    "PromiseCreateResolved",
    "PromiseThen",
    "RegExpSubclassExecJS",
    "RegExpSubclassMatch",
    "RegExpSubclassReplace",
    "RegExpSubclassSearch",
    "RegExpSubclassSplit",
    "RegExpSubclassTest",
    "SetIterator",
    "SetIteratorNext",
    "SetValues",
    "SymbolToString",
    "ToLocaleLowerCaseI18N",
    "ToLocaleUpperCaseI18N",
    "ToLowerCaseI18N",
    "ToPositiveInteger",
    "ToUpperCaseI18N",
    // From runtime:
    "is_concat_spreadable_symbol",
    "iterator_symbol",
    "promise_result_symbol",
    "promise_state_symbol",
    "object_freeze",
    "object_is_frozen",
    "object_is_sealed",
    "reflect_apply",
    "reflect_construct",
    "regexp_flags_symbol",
    "to_string_tag_symbol",
    "object_to_string",
    "species_symbol",
    "match_symbol",
    "replace_symbol",
    "search_symbol",
    "split_symbol",
  ];

  var filtered_exports = {};
  %OptimizeObjectForAddingMultipleProperties(
      filtered_exports, expose_list.length);
  for (var key of expose_list) {
    filtered_exports[key] = exports_container[key];
  }
  %ToFastProperties(filtered_exports);
  exports_container = filtered_exports;

  utils.PostNatives = UNDEFINED;
  utils.ImportFromExperimental = UNDEFINED;
}
function PostNatives(utils) {
  %CheckIsBootstrapping();

  for ( ; !IS_UNDEFINED(imports); imports = imports.next) {
    imports(exports_container);
  }

  // Whitelist of exports from normal natives to experimental natives and debug.
  var expose_list = [
    "AddBoundMethod",
    "ArrayToString",
    "AsyncFunctionNext",
    "AsyncFunctionThrow",
    "ErrorToString",
    "GetIterator",
    "GetMethod",
    "IntlParseDate",
    "IntlParseNumber",
    "IsNaN",
    "MakeError",
    "MakeRangeError",
    "MakeTypeError",
    "MapEntries",
    "MapIterator",
    "MapIteratorNext",
    "MaxSimple",
    "MinSimple",
    "NumberIsInteger",
    "PromiseChain",
    "PromiseDefer",
    "PromiseAccept",
    "PromiseCreateRejected",
    "PromiseCreateResolved",
    "PromiseThen",
    "RegExpSubclassExecJS",
    "RegExpSubclassMatch",
    "RegExpSubclassReplace",
    "RegExpSubclassSearch",
    "RegExpSubclassSplit",
    "RegExpSubclassTest",
    "SetIterator",
    "SetIteratorNext",
    "SetValues",
    "SymbolToString",
    "ToLocaleLowerCaseI18N",
    "ToLocaleUpperCaseI18N",
    "ToLowerCaseI18N",
    "ToPositiveInteger",
    "ToUpperCaseI18N",
    // From runtime:
    "is_concat_spreadable_symbol",
    "iterator_symbol",
    "promise_result_symbol",
    "promise_state_symbol",
    "object_freeze",
    "object_is_frozen",
    "object_is_sealed",
    "reflect_apply",
    "reflect_construct",
    "regexp_flags_symbol",
    "to_string_tag_symbol",
    "object_to_string",
    "species_symbol",
    "match_symbol",
    "replace_symbol",
    "search_symbol",
    "split_symbol",
  ];

  var filtered_exports = {};
  %OptimizeObjectForAddingMultipleProperties(
      filtered_exports, expose_list.length);
  for (var key of expose_list) {
    filtered_exports[key] = exports_container[key];
  }
  %ToFastProperties(filtered_exports);
  exports_container = filtered_exports;

  utils.PostNatives = UNDEFINED;
  utils.ImportFromExperimental = UNDEFINED;
}
function PostNatives ( utils ) { % CheckIsBootstrapping ( ) ; for ( ; ! IS_UNDEFINED ( imports ) ; imports = imports . next ) { imports ( exports_container ) ; } // Whitelist of exports from normal natives to experimental natives and debug. var expose_list = [ "AddBoundMethod" , "ArrayToString" , "AsyncFunctionNext" , "AsyncFunctionThrow" , "ErrorToString" , "GetIterator" , "GetMethod" , "IntlParseDate" , "IntlParseNumber" , "IsNaN" , "MakeError" , "MakeRangeError" , "MakeTypeError" , "MapEntries" , "MapIterator" , "MapIteratorNext" , "MaxSimple" , "MinSimple" , "NumberIsInteger" , "PromiseChain" , "PromiseDefer" , "PromiseAccept" , "PromiseCreateRejected" , "PromiseCreateResolved" , "PromiseThen" , "RegExpSubclassExecJS" , "RegExpSubclassMatch" , "RegExpSubclassReplace" , "RegExpSubclassSearch" , "RegExpSubclassSplit" , "RegExpSubclassTest" , "SetIterator" , "SetIteratorNext" , "SetValues" , "SymbolToString" , "ToLocaleLowerCaseI18N" , "ToLocaleUpperCaseI18N" , "ToLowerCaseI18N" , "ToPositiveInteger" , "ToUpperCaseI18N" , // From runtime: "is_concat_spreadable_symbol" , "iterator_symbol" , "promise_result_symbol" , "promise_state_symbol" , "object_freeze" , "object_is_frozen" , "object_is_sealed" , "reflect_apply" , "reflect_construct" , "regexp_flags_symbol" , "to_string_tag_symbol" , "object_to_string" , "species_symbol" , "match_symbol" , "replace_symbol" , "search_symbol" , "split_symbol" , ] ; var filtered_exports = { } ; % OptimizeObjectForAddingMultipleProperties ( filtered_exports , expose_list . length ) ; for ( var key of expose_list ) { filtered_exports [ key ] = exports_container [ key ] ; } % ToFastProperties ( filtered_exports ) ; exports_container = filtered_exports ; utils . PostNatives = UNDEFINED ; utils . ImportFromExperimental = UNDEFINED ; }
----------------------------------------------------------------------- To be called by bootstrapper
----------------------------------------------------------------------- To be called by bootstrapper