Quellcodebibliothek Statistik Leitseite products/sources/formale Sprachen/C/Firefox/js/src/jit-test/tests/proxy/   (Browser von der Mozilla Stiftung Version 136.0.1©)  Datei vom 10.2.2025 mit Größe 1 kB image not shown  

Quelle  bug901979-2.js   Sprache: JAVA

 
// A proxy on the prototype chain of the global should not observe anything at
// all about lazy resolution of globals.
load(libdir + "immutable-prototype.js");

var global = this;
var status = "pass";

// This is a little tricky. There are two proxies.
// 1. handler is a proxy that fails the test if you try to call a method on it.
var metaHandler = {
  get: _ => { status = "SMASH"; },
  has: _ => { status = "SMASH"; },
  invoke: _ => { status = "SMASH"; }
};
var handler = new Proxy({}, metaHandler);

// 2. Then we create a proxy using 'handler' as its handler. This means the test
//    will fail if *any* method of the handler is called, not just get/has/invoke.
var angryProxy = new Proxy(Object.create(null), handler);
if (globalPrototypeChainIsMutable()) {
  this.__proto__ = angryProxy;
  Object.prototype.__proto__ = angryProxy;
}

// Trip the alarm once, to make sure the proxies are working.
this.nonExistingProperty;
if (globalPrototypeChainIsMutable())
  assertEq(status, "SMASH");
else
  assertEq(status, "pass");

// OK. Reset the status and run the actual test.
status = "pass";
Map;
ArrayBuffer;
Date;
assertEq(status, "pass");

Messung V0.5
C=81 H=100 G=90

¤ Dauer der Verarbeitung: 0.1 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.