summaryrefslogtreecommitdiff
path: root/ext/web/13_message_port.js
diff options
context:
space:
mode:
Diffstat (limited to 'ext/web/13_message_port.js')
-rw-r--r--ext/web/13_message_port.js31
1 files changed, 27 insertions, 4 deletions
diff --git a/ext/web/13_message_port.js b/ext/web/13_message_port.js
index 4b0404ab6..34f86f80c 100644
--- a/ext/web/13_message_port.js
+++ b/ext/web/13_message_port.js
@@ -9,6 +9,7 @@
const core = globalThis.Deno.core;
const { InterruptedPrototype, ops } = core;
import * as webidl from "ext:deno_webidl/00_webidl.js";
+import { createFilteredInspectProxy } from "ext:deno_console/01_console.js";
import {
defineEventHandler,
EventTarget,
@@ -57,10 +58,18 @@ class MessageChannel {
return this.#port2;
}
- [SymbolFor("Deno.inspect")](inspect) {
- return `MessageChannel ${
- inspect({ port1: this.port1, port2: this.port2 })
- }`;
+ [SymbolFor("Deno.privateCustomInspect")](inspect, inspectOptions) {
+ return inspect(
+ createFilteredInspectProxy({
+ object: this,
+ evaluate: ObjectPrototypeIsPrototypeOf(MessageChannelPrototype, this),
+ keys: [
+ "port1",
+ "port2",
+ ],
+ }),
+ inspectOptions,
+ );
}
}
@@ -181,6 +190,20 @@ class MessagePort extends EventTarget {
this[_id] = null;
}
}
+
+ [SymbolFor("Deno.privateCustomInspect")](inspect, inspectOptions) {
+ return inspect(
+ createFilteredInspectProxy({
+ object: this,
+ evaluate: ObjectPrototypeIsPrototypeOf(MessagePortPrototype, this),
+ keys: [
+ "onmessage",
+ "onmessageerror",
+ ],
+ }),
+ inspectOptions,
+ );
+ }
}
defineEventHandler(MessagePort.prototype, "message", function (self) {