util: expose CallSite.scriptId · nodejs/node@d066acf · GitHub
Skip to content

Commit d066acf

Browse files
legendecasaduh95
authored andcommitted
util: expose CallSite.scriptId
The `scriptId` is essential to construct chrome devtools protocol structs like `Network.Initiator`, allowing inspectors to associate a `CallSite` with a unique script. PR-URL: #56551 Reviewed-By: Ruben Bridgewater <ruben@bridgewater.de> Reviewed-By: Marco Ippolito <marcoippolito54@gmail.com> Reviewed-By: James M Snell <jasnell@gmail.com> Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
1 parent c9a211a commit d066acf

4 files changed

Lines changed: 17 additions & 0 deletions

File tree

doc/api/util.md

Lines changed: 5 additions & 0 deletions

src/env_properties.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -320,6 +320,7 @@
320320
V(salt_length_string, "saltLength") \
321321
V(scheme_string, "scheme") \
322322
V(scopeid_string, "scopeid") \
323+
V(script_id_string, "scriptId") \
323324
V(script_name_string, "scriptName") \
324325
V(serial_number_string, "serialNumber") \
325326
V(serial_string, "serial") \

src/node_util.cc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -275,14 +275,18 @@ static void GetCallSites(const FunctionCallbackInfo<Value>& args) {
275275
script_name = v8::String::Empty(isolate);
276276
}
277277

278+
std::string script_id = std::to_string(stack_frame->GetScriptId());
279+
278280
Local<Name> names[] = {
279281
env->function_name_string(),
282+
env->script_id_string(),
280283
env->script_name_string(),
281284
env->line_number_string(),
282285
env->column_string(),
283286
};
284287
Local<Value> values[] = {
285288
function_name,
289+
OneByteString(isolate, script_id),
286290
script_name,
287291
Integer::NewFromUnsigned(isolate, stack_frame->GetLineNumber()),
288292
Integer::NewFromUnsigned(isolate, stack_frame->GetColumn()),

test/parallel/test-util-getcallsites.js

Lines changed: 7 additions & 0 deletions

0 commit comments

Comments
 (0)