|
1 // |reftest| skip-if(!xulRuntime.shell) |
|
2 // bug 905774 |
|
3 |
|
4 // Proxy options |
|
5 var opts = new Proxy({loc: false}, {}); |
|
6 assertEq(Reflect.parse("0;", opts).loc === null, true); |
|
7 opts.loc = true; |
|
8 assertEq(Reflect.parse("0;", opts).loc !== null, true); |
|
9 delete opts.loc; |
|
10 assertEq(Reflect.parse("0;", opts).loc !== null, true); // default is true |
|
11 |
|
12 // Proxy builder |
|
13 var builder = { |
|
14 program: function (body) { return body.join(); }, |
|
15 expressionStatement: function (expr) { return expr + ";" }, |
|
16 literal: function (val) { return "" + val; } |
|
17 }; |
|
18 opts = {builder: new Proxy(builder, {})}; |
|
19 assertEq(Reflect.parse("0xff;", opts), "255;"); |
|
20 |
|
21 reportCompare(0, 0, 'ok'); |