![]() |
v8
V8 is Google’s open source high-performance JavaScript and WebAssembly engine, written in C++.
|
#include <v8-debugger-agent-impl.h>
Classes | |
| struct | CachedScript |
Public Types | |
| enum | BreakpointSource { UserBreakpointSource , DebugCommandBreakpointSource , MonitorCommandBreakpointSource } |
Public Member Functions | |
| V8DebuggerAgentImpl (V8InspectorSessionImpl *, protocol::FrontendChannel *, protocol::DictionaryValue *state) | |
| ~V8DebuggerAgentImpl () override | |
| V8DebuggerAgentImpl (const V8DebuggerAgentImpl &)=delete | |
| V8DebuggerAgentImpl & | operator= (const V8DebuggerAgentImpl &)=delete |
| void | restore () |
| void | stop () |
| Response | enable (std::optional< double > maxScriptsCacheSize, String16 *outDebuggerId) override |
| Response | disable () override |
| Response | setBreakpointsActive (bool active) override |
| Response | setSkipAllPauses (bool skip) override |
| Response | setBreakpointByUrl (int lineNumber, std::optional< String16 > optionalURL, std::optional< String16 > optionalURLRegex, std::optional< String16 > optionalScriptHash, std::optional< int > optionalColumnNumber, std::optional< String16 > optionalCondition, String16 *, std::unique_ptr< protocol::Array< protocol::Debugger::Location > > *locations) override |
| Response | setBreakpoint (std::unique_ptr< protocol::Debugger::Location >, std::optional< String16 > optionalCondition, String16 *, std::unique_ptr< protocol::Debugger::Location > *actualLocation) override |
| Response | setBreakpointOnFunctionCall (const String16 &functionObjectId, std::optional< String16 > optionalCondition, String16 *outBreakpointId) override |
| Response | setInstrumentationBreakpoint (const String16 &instrumentation, String16 *outBreakpointId) override |
| Response | removeBreakpoint (const String16 &breakpointId) override |
| Response | continueToLocation (std::unique_ptr< protocol::Debugger::Location >, std::optional< String16 > targetCallFrames) override |
| Response | getStackTrace (std::unique_ptr< protocol::Runtime::StackTraceId > inStackTraceId, std::unique_ptr< protocol::Runtime::StackTrace > *outStackTrace) override |
| Response | searchInContent (const String16 &scriptId, const String16 &query, std::optional< bool > optionalCaseSensitive, std::optional< bool > optionalIsRegex, std::unique_ptr< protocol::Array< protocol::Debugger::SearchMatch > > *) override |
| Response | getPossibleBreakpoints (std::unique_ptr< protocol::Debugger::Location > start, std::unique_ptr< protocol::Debugger::Location > end, std::optional< bool > restrictToFunction, std::unique_ptr< protocol::Array< protocol::Debugger::BreakLocation > > *locations) override |
| Response | setScriptSource (const String16 &inScriptId, const String16 &inScriptSource, std::optional< bool > dryRun, std::optional< bool > allowTopFrameEditing, std::unique_ptr< protocol::Array< protocol::Debugger::CallFrame > > *optOutCallFrames, std::optional< bool > *optOutStackChanged, std::unique_ptr< protocol::Runtime::StackTrace > *optOutAsyncStackTrace, std::unique_ptr< protocol::Runtime::StackTraceId > *optOutAsyncStackTraceId, String16 *outStatus, std::unique_ptr< protocol::Runtime::ExceptionDetails > *optOutCompileError) override |
| Response | restartFrame (const String16 &callFrameId, std::optional< String16 > mode, std::unique_ptr< protocol::Array< protocol::Debugger::CallFrame > > *newCallFrames, std::unique_ptr< protocol::Runtime::StackTrace > *asyncStackTrace, std::unique_ptr< protocol::Runtime::StackTraceId > *asyncStackTraceId) override |
| Response | getScriptSource (const String16 &scriptId, String16 *scriptSource, std::optional< protocol::Binary > *bytecode) override |
| Response | disassembleWasmModule (const String16 &in_scriptId, std::optional< String16 > *out_streamId, int *out_totalNumberOfLines, std::unique_ptr< protocol::Array< int > > *out_functionBodyOffsets, std::unique_ptr< protocol::Debugger::WasmDisassemblyChunk > *out_chunk) override |
| Response | nextWasmDisassemblyChunk (const String16 &in_streamId, std::unique_ptr< protocol::Debugger::WasmDisassemblyChunk > *out_chunk) override |
| Response | getWasmBytecode (const String16 &scriptId, protocol::Binary *bytecode) override |
| Response | pause () override |
| Response | resume (std::optional< bool > terminateOnResume) override |
| Response | stepOver (std::unique_ptr< protocol::Array< protocol::Debugger::LocationRange > > inSkipList) override |
| Response | stepInto (std::optional< bool > inBreakOnAsyncCall, std::unique_ptr< protocol::Array< protocol::Debugger::LocationRange > > inSkipList) override |
| Response | stepOut () override |
| Response | pauseOnAsyncCall (std::unique_ptr< protocol::Runtime::StackTraceId > inParentStackTraceId) override |
| Response | setPauseOnExceptions (const String16 &pauseState) override |
| Response | evaluateOnCallFrame (const String16 &callFrameId, const String16 &expression, std::optional< String16 > objectGroup, std::optional< bool > includeCommandLineAPI, std::optional< bool > silent, std::optional< bool > returnByValue, std::optional< bool > generatePreview, std::optional< bool > throwOnSideEffect, std::optional< double > timeout, std::unique_ptr< protocol::Runtime::RemoteObject > *result, std::unique_ptr< protocol::Runtime::ExceptionDetails > *) override |
| Response | setVariableValue (int scopeNumber, const String16 &variableName, std::unique_ptr< protocol::Runtime::CallArgument > newValue, const String16 &callFrame) override |
| Response | setReturnValue (std::unique_ptr< protocol::Runtime::CallArgument > newValue) override |
| Response | setAsyncCallStackDepth (int depth) override |
| Response | setBlackboxPatterns (std::unique_ptr< protocol::Array< String16 > > patterns, std::optional< bool > skipAnonymous) override |
| Response | setBlackboxExecutionContexts (std::unique_ptr< protocol::Array< String16 > > uniqueIds) override |
| Response | setBlackboxedRanges (const String16 &scriptId, std::unique_ptr< protocol::Array< protocol::Debugger::ScriptPosition > > positions) override |
| bool | enabled () const |
| void | setBreakpointFor (v8::Local< v8::Function > function, v8::Local< v8::String > condition, BreakpointSource source) |
| void | removeBreakpointFor (v8::Local< v8::Function > function, BreakpointSource source) |
| void | schedulePauseOnNextStatement (const String16 &breakReason, std::unique_ptr< protocol::DictionaryValue > data) |
| void | cancelPauseOnNextStatement () |
| void | breakProgram (const String16 &breakReason, std::unique_ptr< protocol::DictionaryValue > data) |
| void | reset () |
| bool | instrumentationFinished () |
| void | didPauseOnInstrumentation (v8::debug::BreakpointId instrumentationId) |
| void | didPause (int contextId, v8::Local< v8::Value > exception, const std::vector< v8::debug::BreakpointId > &hitBreakpoints, v8::debug::ExceptionType exceptionType, bool isUncaught, v8::debug::BreakReasons breakReasons) |
| void | didContinue () |
| void | didParseSource (std::unique_ptr< V8DebuggerScript >, bool success) |
| bool | isFunctionBlackboxed (const String16 &scriptId, const v8::debug::Location &start, const v8::debug::Location &end) |
| bool | shouldBeSkipped (const String16 &scriptId, int line, int column) |
| bool | acceptsPause (bool isOOMBreak) const |
| void | ScriptCollected (const V8DebuggerScript *script) |
| v8::Isolate * | isolate () |
| void | clearBreakDetails () |
Private Types | |
| enum | EnableState { kDisabled , kEnabled , kStopping } |
| using | ScriptsMap |
| using | BreakpointIdToDebuggerBreakpointIdsMap |
| using | DebuggerBreakpointIdToBreakpointIdMap |
| using | BreakReason |
Private Member Functions | |
| void | enableImpl () |
| Response | currentCallFrames (std::unique_ptr< protocol::Array< protocol::Debugger::CallFrame > > *) |
| std::unique_ptr< protocol::Runtime::StackTrace > | currentAsyncStackTrace () |
| std::unique_ptr< protocol::Runtime::StackTraceId > | currentExternalStackTrace () |
| void | setPauseOnExceptionsImpl (int) |
| std::unique_ptr< protocol::Debugger::Location > | setBreakpointImpl (const String16 &breakpointId, const String16 &scriptId, const String16 &condition, int lineNumber, int columnNumber) |
| void | setBreakpointImpl (const String16 &breakpointId, v8::Local< v8::Function > function, v8::Local< v8::String > condition) |
| void | removeBreakpointImpl (const String16 &breakpointId, const std::vector< V8DebuggerScript * > &scripts) |
| void | internalSetAsyncCallStackDepth (int) |
| void | increaseCachedSkipStackGeneration () |
| Response | setBlackboxPattern (const String16 &pattern) |
| void | resetBlackboxedStateCache () |
| bool | isPaused () const |
| void | setScriptInstrumentationBreakpointIfNeeded (V8DebuggerScript *script) |
| Response | processSkipList (protocol::Array< protocol::Debugger::LocationRange > &skipList) |
| void | pushBreakDetails (const String16 &breakReason, std::unique_ptr< protocol::DictionaryValue > breakAuxData) |
| void | popBreakDetails () |
Definition at line 31 of file v8-debugger-agent-impl.h.
Definition at line 234 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 273 of file v8-debugger-agent-impl.h.
Definition at line 236 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 232 of file v8-debugger-agent-impl.h.
| Enumerator | |
|---|---|
| UserBreakpointSource | |
| DebugCommandBreakpointSource | |
| MonitorCommandBreakpointSource | |
Definition at line 33 of file v8-debugger-agent-impl.h.
|
private |
| Enumerator | |
|---|---|
| kDisabled | |
| kEnabled | |
| kStopping | |
Definition at line 239 of file v8-debugger-agent-impl.h.
| v8_inspector::V8DebuggerAgentImpl::V8DebuggerAgentImpl | ( | V8InspectorSessionImpl * | session, |
| protocol::FrontendChannel * | frontendChannel, | ||
| protocol::DictionaryValue * | state ) |
Definition at line 427 of file v8-debugger-agent-impl.cc.
|
overridedefault |
|
delete |
| bool v8_inspector::V8DebuggerAgentImpl::acceptsPause | ( | bool | isOOMBreak | ) | const |
Definition at line 1057 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::breakProgram | ( | const String16 & | breakReason, |
| std::unique_ptr< protocol::DictionaryValue > | data ) |
Definition at line 2293 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::cancelPauseOnNextStatement | ( | ) |
Definition at line 1458 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::clearBreakDetails | ( | ) |
Definition at line 1443 of file v8-debugger-agent-impl.cc.
|
override |
|
private |
Definition at line 1860 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 1774 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 1869 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::didContinue | ( | ) |
Definition at line 2288 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::didParseSource | ( | std::unique_ptr< V8DebuggerScript > | script, |
| bool | success ) |
Definition at line 1944 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::didPause | ( | int | contextId, |
| v8::Local< v8::Value > | exception, | ||
| const std::vector< v8::debug::BreakpointId > & | hitBreakpoints, | ||
| v8::debug::ExceptionType | exceptionType, | ||
| bool | isUncaught, | ||
| v8::debug::BreakReasons | breakReasons ) |
Definition at line 2171 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::didPauseOnInstrumentation | ( | v8::debug::BreakpointId | instrumentationId | ) |
Definition at line 2135 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 482 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1325 of file v8-debugger-agent-impl.cc.
|
override |
|
inline |
Definition at line 160 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 440 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1574 of file v8-debugger-agent-impl.cc.
|
override |
|
override |
Definition at line 1230 of file v8-debugger-agent-impl.cc.
|
override |
|
override |
Definition at line 1411 of file v8-debugger-agent-impl.cc.
|
private |
|
inline |
Definition at line 176 of file v8-debugger-agent-impl.h.
|
private |
| bool v8_inspector::V8DebuggerAgentImpl::isFunctionBlackboxed | ( | const String16 & | scriptId, |
| const v8::debug::Location & | start, | ||
| const v8::debug::Location & | end ) |
Definition at line 986 of file v8-debugger-agent-impl.cc.
|
inline |
Definition at line 196 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 1879 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1379 of file v8-debugger-agent-impl.cc.
|
delete |
|
override |
Definition at line 1466 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1540 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 1438 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 2378 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 1432 of file v8-debugger-agent-impl.cc.
|
override |
| void v8_inspector::V8DebuggerAgentImpl::removeBreakpointFor | ( | v8::Local< v8::Function > | function, |
| BreakpointSource | source ) |
Definition at line 2330 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 845 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::reset | ( | ) |
Definition at line 2340 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 1736 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1202 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::restore | ( | ) |
|
override |
Definition at line 1487 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::schedulePauseOnNextStatement | ( | const String16 & | breakReason, |
| std::unique_ptr< protocol::DictionaryValue > | data ) |
Definition at line 1448 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::ScriptCollected | ( | const V8DebuggerScript * | script | ) |
Definition at line 2352 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1110 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1679 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1742 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1717 of file v8-debugger-agent-impl.cc.
|
private |
caseSensitive
multiline
Definition at line 1726 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1688 of file v8-debugger-agent-impl.cc.
|
override |
| void v8_inspector::V8DebuggerAgentImpl::setBreakpointFor | ( | v8::Local< v8::Function > | function, |
| v8::Local< v8::String > | condition, | ||
| BreakpointSource | source ) |
Definition at line 2316 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 1062 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 1097 of file v8-debugger-agent-impl.cc.
|
override |
|
override |
Definition at line 1546 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 1566 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1655 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 2108 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1147 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 574 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1619 of file v8-debugger-agent-impl.cc.
| bool v8_inspector::V8DebuggerAgentImpl::shouldBeSkipped | ( | const String16 & | scriptId, |
| int | line, | ||
| int | column ) |
Definition at line 1030 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1514 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1533 of file v8-debugger-agent-impl.cc.
|
override |
Definition at line 1497 of file v8-debugger-agent-impl.cc.
| void v8_inspector::V8DebuggerAgentImpl::stop | ( | ) |
Definition at line 2413 of file v8-debugger-agent-impl.cc.
|
private |
Definition at line 291 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 289 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 287 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 254 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 283 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 275 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 271 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 261 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 247 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 255 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 249 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 251 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 246 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 284 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 252 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 260 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 258 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 253 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 248 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 282 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 285 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 290 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 250 of file v8-debugger-agent-impl.h.
|
private |
Definition at line 257 of file v8-debugger-agent-impl.h.