summaryrefslogtreecommitdiff
path: root/runtime/js/99_main.js
diff options
context:
space:
mode:
authorBartek IwaƄczuk <biwanczuk@gmail.com>2024-02-06 14:57:25 +0100
committerGitHub <noreply@github.com>2024-02-06 14:57:25 +0100
commit7c111da5f698b20db4db9e7fc02463f401c081db (patch)
tree799db706f7b54fe697009f360a5465505cbab884 /runtime/js/99_main.js
parente568cb8bf85161ea850ca2ae3b11247a0d5dcabd (diff)
fix: Support Symbol.metadata (#22282)
This commit adds support for "Symbol.metadata" which was omitted when adding support for the Decorators Proposal. Closes https://github.com/denoland/deno/issues/22111
Diffstat (limited to 'runtime/js/99_main.js')
-rw-r--r--runtime/js/99_main.js20
1 files changed, 19 insertions, 1 deletions
diff --git a/runtime/js/99_main.js b/runtime/js/99_main.js
index c1ded6b24..112cea122 100644
--- a/runtime/js/99_main.js
+++ b/runtime/js/99_main.js
@@ -89,9 +89,21 @@ import {
import {
workerRuntimeGlobalProperties,
} from "ext:runtime/98_global_scope_worker.js";
-import { SymbolAsyncDispose, SymbolDispose } from "ext:deno_web/00_infra.js";
+import {
+ SymbolAsyncDispose,
+ SymbolDispose,
+ SymbolMetadata,
+} from "ext:deno_web/00_infra.js";
// deno-lint-ignore prefer-primordials
if (Symbol.dispose) throw "V8 supports Symbol.dispose now, no need to shim it!";
+// deno-lint-ignore prefer-primordials
+if (Symbol.asyncDispose) {
+ throw "V8 supports Symbol.asyncDispose now, no need to shim it!";
+}
+// deno-lint-ignore prefer-primordials
+if (Symbol.metadata) {
+ throw "V8 supports Symbol.metadata now, no need to shim it!";
+}
ObjectDefineProperties(Symbol, {
dispose: {
value: SymbolDispose,
@@ -105,6 +117,12 @@ ObjectDefineProperties(Symbol, {
writable: false,
configurable: false,
},
+ metadata: {
+ value: SymbolMetadata,
+ enumerable: false,
+ writable: false,
+ configurable: false,
+ },
});
let windowIsClosing = false;