tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

Object-isArrowFunction.js (810B)


      1 // Debugger.Object.prototype.isArrowFunction recognizes arrow functions.
      2 
      3 var g = newGlobal({newCompartment: true});
      4 var dbg = new Debugger;
      5 var gDO = dbg.addDebuggee(g);
      6 var hits = 0;
      7 
      8 function checkIsArrow(shouldBe, expr) {
      9  print(expr);
     10  assertEq(gDO.executeInGlobal(expr).return.isArrowFunction, shouldBe);
     11 }
     12 
     13 checkIsArrow(true, '() => { }');
     14 checkIsArrow(true, '(a) => { bleh; }');
     15 checkIsArrow(false, 'Object.getPrototypeOf(() => { })');
     16 checkIsArrow(false, '(function () { })');
     17 checkIsArrow(false, 'function f() { } f');
     18 checkIsArrow((void 0), '({})');
     19 checkIsArrow(false, 'Math.atan2');
     20 checkIsArrow(false, 'Function.prototype');
     21 checkIsArrow(false, 'Function("")');
     22 checkIsArrow(false, 'new Function("")');
     23 checkIsArrow(false, '(async function f () {})');
     24 checkIsArrow(true,  '(async () => { })');