見てのとおり、ほとんどすべての項目がドキュメント化されていません。
<tt>trap, untrap, watch, unwatch, line2pc</tt> および <tt>pc2line</tt> 関数の実装は js/src/js.c
をご覧ください。js/src/jsdbgapi.h
にも (わずかに) コメントがあります。
ブレークポイント
-
JS_SetTrap
-
JS_GetTrapOpcode
-
JS_ClearTrap
-
JS_ClearScriptTraps
-
JS_ClearAllTraps
-
JS_HandleTrap
-
JS_SetInterrupt
-
JS_ClearInterrupt
ウォッチポイント
スタックの調査
-
JS_PCToLineNumber
-
JS_LineNumberToPC
-
JS_GetFunctionScript
-
JS_GetFunctionNative
-
JS_GetFunctionFastNative
-
JS_GetScriptPrincipals
- typedef
JSStackFrame
-
JS_FrameIterator
-
JS_GetFrameScript
-
JS_GetFramePC
-
JS_GetScriptedCaller
-
JS_StackFramePrincipals
-
JS_EvalFramePrincipals
-
JS_GetFrameAnnotation
-
JS_SetFrameAnnotation
-
JS_GetFramePrincipalArray
-
JS_IsNativeFrame
-
JS_GetFrameObject
-
JS_GetFrameScopeChain
-
JS_GetFrameCallObject
-
JS_GetFrameThis
-
JS_GetFrameFunction
-
JS_GetFrameFunctionObject
-
JS_IsConstructorFrame
-
JS_IsDebuggerFrame
-
JS_GetFrameReturnValue
-
JS_SetFrameReturnValue
-
JS_GetFrameCalleeObject
デバッグコードの評価
オブジェクトプロパティの検査
- typedef
JSPropertyDesc
-
JSPD_ENUMERATE
-
JSPD_READONLY
-
JSPD_PERMANENT
-
JSPD_ALIAS
-
JSPD_ARGUMENT
-
JSPD_VARIABLE
-
JSPD_EXCEPTION
-
JSPD_ERROR
- typedef
JSPropertyDescArray
フック
-
JS_SetDebuggerHandler
-
JS_SetSourceHandler
-
JS_SetExecuteHook
-
JS_SetCallHook
-
JS_SetObjectHook
-
JS_SetThrowHook
-
JS_SetDebugErrorHook
-
JS_SetNewScriptHook
-
JS_SetDestroyScriptHook
メモリ使用量
システムオブジェクト
分析
これらの関数は、Mac プロファイラである Shark を使用して SpiderMonkey アプリケーションを分析するために使用されます。Profiling JavaScript with Shark をご覧ください。
以下の JSNative
関数は、上記 4 つの API をスクリプトに晒すために使用されます。