static void _dumpJSDScript(JSDContext* jsdc, JSDScript* jsdscript, const char* leadingtext) { const char* name; JSString* fun; unsigned base; unsigned extent; char Buf[256]; size_t n; name = jsd_GetScriptFilename(jsdc, jsdscript); fun = jsd_GetScriptFunctionId(jsdc, jsdscript); base = jsd_GetScriptBaseLineNumber(jsdc, jsdscript); extent = jsd_GetScriptLineExtent(jsdc, jsdscript); n = size_t(snprintf(Buf, sizeof(Buf), "%sscript=%08X, %s, ", leadingtext, (unsigned) jsdscript->script, name ? name : "no URL")); if (n + 1 < sizeof(Buf)) { if (fun) { n += size_t(snprintf(Buf + n, sizeof(Buf) - n, "%s", "no fun")); } else { n += JS_PutEscapedFlatString(Buf + n, sizeof(Buf) - n, JS_ASSERT_STRING_IS_FLAT(fun), 0); Buf[sizeof(Buf) - 1] = '\0'; } if (n + 1 < sizeof(Buf)) snprintf(Buf + n, sizeof(Buf) - n, ", %d-%d\n", base, base + extent - 1); } OutputDebugString( Buf ); }
static void _dumpJSDScript(JSDContext* jsdc, JSDScript* jsdscript, const char* leadingtext) { const char* name; const char* fun; uintN base; uintN extent; char Buf[256]; name = jsd_GetScriptFilename(jsdc, jsdscript); fun = jsd_GetScriptFunctionName(jsdc, jsdscript); base = jsd_GetScriptBaseLineNumber(jsdc, jsdscript); extent = jsd_GetScriptLineExtent(jsdc, jsdscript); sprintf( Buf, "%sscript=%08X, %s, %s, %d-%d\n", leadingtext, (unsigned) jsdscript->script, name ? name : "no URL", fun ? fun : "no fun", base, base + extent - 1 ); OutputDebugString( Buf ); }
JSD_GetScriptBaseLineNumber(JSDContext* jsdc, JSDScript *jsdscript) { JSD_ASSERT_VALID_CONTEXT(jsdc); JSD_ASSERT_VALID_SCRIPT(jsdscript); return jsd_GetScriptBaseLineNumber(jsdc, jsdscript); }