Index: src/js/proxy.js |
diff --git a/src/js/proxy.js b/src/js/proxy.js |
index 2750d40e272f27d3b0a49a0897e25cfbacf2f649..90f5bdd2067c2949bfd8f81254808636556d876f 100644 |
--- a/src/js/proxy.js |
+++ b/src/js/proxy.js |
@@ -42,6 +42,11 @@ function ProxyCreateFunction(handler, callTrap, constructTrap) { |
{}, handler, callTrap, constructTrap, GlobalFunction.prototype) |
} |
+function ProxyCreateRevocable(target, handler) { |
+ var p = new GlobalProxy(target, handler); |
+ return {proxy: p, revoke: () => %RevokeProxy(p)}; |
+} |
+ |
// ------------------------------------------------------------------- |
// Proxy Builtins |
@@ -144,6 +149,7 @@ function ProxyEnumerate(trap, handler, target) { |
//Set up non-enumerable properties of the Proxy object. |
utils.InstallFunctions(GlobalProxy, DONT_ENUM, [ |
+ "revocable", ProxyCreateRevocable, |
"createFunction", ProxyCreateFunction |
]); |