From 64abb65f0514afc1f10c426561e5150d9cae6b45 Mon Sep 17 00:00:00 2001 From: Colin Ihrig Date: Mon, 13 Jun 2022 10:59:22 -0400 Subject: feat(console): pass options and depth to custom inspects (#14855) This commit updates Deno.inspect() to pass inspect options and the current inspect depth to custom inspect functions. Refs: https://github.com/denoland/deno/issues/8099 Refs: https://github.com/denoland/deno/issues/14171 --- ext/console/02_console.js | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) (limited to 'ext/console/02_console.js') diff --git a/ext/console/02_console.js b/ext/console/02_console.js index 638047b3a..71eb58198 100644 --- a/ext/console/02_console.js +++ b/ext/console/02_console.js @@ -335,7 +335,7 @@ ReflectHas(value, customInspect) && typeof value[customInspect] === "function" ) { - return String(value[customInspect](inspect)); + return String(value[customInspect](inspect, inspectOptions, level)); } // Might be Function/AsyncFunction/GeneratorFunction/AsyncGeneratorFunction let cstrName = ObjectGetPrototypeOf(value)?.constructor?.name; @@ -1258,7 +1258,7 @@ ReflectHas(value, customInspect) && typeof value[customInspect] === "function" ) { - return String(value[customInspect](inspect)); + return String(value[customInspect](inspect, inspectOptions, level)); } // This non-unique symbol is used to support op_crates, ie. // in extensions/web we don't want to depend on public @@ -1273,7 +1273,9 @@ // inspect implementations in `extensions` need it, but may not have access // to the `Deno` namespace in web workers. Remove when the `Deno` // namespace is always enabled. - return String(value[privateCustomInspect](inspect)); + return String( + value[privateCustomInspect](inspect, inspectOptions, level), + ); } if (ObjectPrototypeIsPrototypeOf(ErrorPrototype, value)) { return inspectError(value, maybeColor(colors.cyan, inspectOptions)); -- cgit v1.2.3