Documentation ¶
Overview ¶
Package debugger provides the Chrome DevTools Protocol commands, types, and events for the Debugger domain.
Debugger domain exposes JavaScript debugging capabilities. It allows setting and removing breakpoints, stepping through execution, exploring stack traces, etc.
Generated by the cdproto-gen command.
Index ¶
- Constants
- type BreakLocation
- type BreakLocationType
- type BreakpointID
- type CallFrame
- type CallFrameID
- type ContinueToLocationParams
- func (p *ContinueToLocationParams) Do(ctx context.Context) (err error)
- func (v ContinueToLocationParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v ContinueToLocationParams) MarshalJSON() ([]byte, error)
- func (v *ContinueToLocationParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *ContinueToLocationParams) UnmarshalJSON(data []byte) error
- func (p ContinueToLocationParams) WithTargetCallFrames(targetCallFrames ContinueToLocationTargetCallFrames) *ContinueToLocationParams
- type ContinueToLocationTargetCallFrames
- func (t ContinueToLocationTargetCallFrames) MarshalEasyJSON(out *jwriter.Writer)
- func (t ContinueToLocationTargetCallFrames) MarshalJSON() ([]byte, error)
- func (t ContinueToLocationTargetCallFrames) String() string
- func (t *ContinueToLocationTargetCallFrames) UnmarshalEasyJSON(in *jlexer.Lexer)
- func (t *ContinueToLocationTargetCallFrames) UnmarshalJSON(buf []byte) error
- type DebugSymbols
- type DebugSymbolsType
- type DisableParams
- type EnableParams
- func (p *EnableParams) Do(ctx context.Context) (debuggerID runtime.UniqueDebuggerID, err error)
- func (v EnableParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v EnableParams) MarshalJSON() ([]byte, error)
- func (v *EnableParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *EnableParams) UnmarshalJSON(data []byte) error
- func (p EnableParams) WithMaxScriptsCacheSize(maxScriptsCacheSize float64) *EnableParams
- type EnableReturns
- type EvaluateOnCallFrameParams
- func (p *EvaluateOnCallFrameParams) Do(ctx context.Context) (result *runtime.RemoteObject, exceptionDetails *runtime.ExceptionDetails, ...)
- func (v EvaluateOnCallFrameParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v EvaluateOnCallFrameParams) MarshalJSON() ([]byte, error)
- func (v *EvaluateOnCallFrameParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *EvaluateOnCallFrameParams) UnmarshalJSON(data []byte) error
- func (p EvaluateOnCallFrameParams) WithGeneratePreview(generatePreview bool) *EvaluateOnCallFrameParams
- func (p EvaluateOnCallFrameParams) WithIncludeCommandLineAPI(includeCommandLineAPI bool) *EvaluateOnCallFrameParams
- func (p EvaluateOnCallFrameParams) WithObjectGroup(objectGroup string) *EvaluateOnCallFrameParams
- func (p EvaluateOnCallFrameParams) WithReturnByValue(returnByValue bool) *EvaluateOnCallFrameParams
- func (p EvaluateOnCallFrameParams) WithSilent(silent bool) *EvaluateOnCallFrameParams
- func (p EvaluateOnCallFrameParams) WithThrowOnSideEffect(throwOnSideEffect bool) *EvaluateOnCallFrameParams
- func (p EvaluateOnCallFrameParams) WithTimeout(timeout runtime.TimeDelta) *EvaluateOnCallFrameParams
- type EvaluateOnCallFrameReturns
- type EventBreakpointResolved
- type EventPaused
- type EventResumed
- type EventScriptFailedToParse
- type EventScriptParsed
- type ExceptionsState
- type ExecuteWasmEvaluatorParams
- func (p *ExecuteWasmEvaluatorParams) Do(ctx context.Context) (result *runtime.RemoteObject, exceptionDetails *runtime.ExceptionDetails, ...)
- func (v ExecuteWasmEvaluatorParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v ExecuteWasmEvaluatorParams) MarshalJSON() ([]byte, error)
- func (v *ExecuteWasmEvaluatorParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *ExecuteWasmEvaluatorParams) UnmarshalJSON(data []byte) error
- func (p ExecuteWasmEvaluatorParams) WithTimeout(timeout runtime.TimeDelta) *ExecuteWasmEvaluatorParams
- type ExecuteWasmEvaluatorReturns
- type GetPossibleBreakpointsParams
- func (p *GetPossibleBreakpointsParams) Do(ctx context.Context) (locations []*BreakLocation, err error)
- func (v GetPossibleBreakpointsParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v GetPossibleBreakpointsParams) MarshalJSON() ([]byte, error)
- func (v *GetPossibleBreakpointsParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *GetPossibleBreakpointsParams) UnmarshalJSON(data []byte) error
- func (p GetPossibleBreakpointsParams) WithEnd(end *Location) *GetPossibleBreakpointsParams
- func (p GetPossibleBreakpointsParams) WithRestrictToFunction(restrictToFunction bool) *GetPossibleBreakpointsParams
- type GetPossibleBreakpointsReturns
- type GetScriptSourceParams
- func (p *GetScriptSourceParams) Do(ctx context.Context) (scriptSource string, bytecode []byte, err error)
- func (v GetScriptSourceParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v GetScriptSourceParams) MarshalJSON() ([]byte, error)
- func (v *GetScriptSourceParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *GetScriptSourceParams) UnmarshalJSON(data []byte) error
- type GetScriptSourceReturns
- type GetStackTraceParams
- func (p *GetStackTraceParams) Do(ctx context.Context) (stackTrace *runtime.StackTrace, err error)
- func (v GetStackTraceParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v GetStackTraceParams) MarshalJSON() ([]byte, error)
- func (v *GetStackTraceParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *GetStackTraceParams) UnmarshalJSON(data []byte) error
- type GetStackTraceReturns
- type Location
- type PauseParams
- type PausedReason
- type RemoveBreakpointParams
- func (p *RemoveBreakpointParams) Do(ctx context.Context) (err error)
- func (v RemoveBreakpointParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v RemoveBreakpointParams) MarshalJSON() ([]byte, error)
- func (v *RemoveBreakpointParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *RemoveBreakpointParams) UnmarshalJSON(data []byte) error
- type RestartFrameParams
- func (p *RestartFrameParams) Do(ctx context.Context) (callFrames []*CallFrame, asyncStackTrace *runtime.StackTrace, ...)
- func (v RestartFrameParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v RestartFrameParams) MarshalJSON() ([]byte, error)
- func (v *RestartFrameParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *RestartFrameParams) UnmarshalJSON(data []byte) error
- type RestartFrameReturns
- type ResumeParams
- func (p *ResumeParams) Do(ctx context.Context) (err error)
- func (v ResumeParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v ResumeParams) MarshalJSON() ([]byte, error)
- func (v *ResumeParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *ResumeParams) UnmarshalJSON(data []byte) error
- func (p ResumeParams) WithTerminateOnResume(terminateOnResume bool) *ResumeParams
- type Scope
- type ScopeType
- type ScriptLanguage
- type ScriptPosition
- type SearchInContentParams
- func (p *SearchInContentParams) Do(ctx context.Context) (result []*SearchMatch, err error)
- func (v SearchInContentParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SearchInContentParams) MarshalJSON() ([]byte, error)
- func (v *SearchInContentParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SearchInContentParams) UnmarshalJSON(data []byte) error
- func (p SearchInContentParams) WithCaseSensitive(caseSensitive bool) *SearchInContentParams
- func (p SearchInContentParams) WithIsRegex(isRegex bool) *SearchInContentParams
- type SearchInContentReturns
- type SearchMatch
- type SetAsyncCallStackDepthParams
- func (p *SetAsyncCallStackDepthParams) Do(ctx context.Context) (err error)
- func (v SetAsyncCallStackDepthParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetAsyncCallStackDepthParams) MarshalJSON() ([]byte, error)
- func (v *SetAsyncCallStackDepthParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetAsyncCallStackDepthParams) UnmarshalJSON(data []byte) error
- type SetBlackboxPatternsParams
- func (p *SetBlackboxPatternsParams) Do(ctx context.Context) (err error)
- func (v SetBlackboxPatternsParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetBlackboxPatternsParams) MarshalJSON() ([]byte, error)
- func (v *SetBlackboxPatternsParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetBlackboxPatternsParams) UnmarshalJSON(data []byte) error
- type SetBlackboxedRangesParams
- func (p *SetBlackboxedRangesParams) Do(ctx context.Context) (err error)
- func (v SetBlackboxedRangesParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetBlackboxedRangesParams) MarshalJSON() ([]byte, error)
- func (v *SetBlackboxedRangesParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetBlackboxedRangesParams) UnmarshalJSON(data []byte) error
- type SetBreakpointByURLParams
- func (p *SetBreakpointByURLParams) Do(ctx context.Context) (breakpointID BreakpointID, locations []*Location, err error)
- func (v SetBreakpointByURLParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetBreakpointByURLParams) MarshalJSON() ([]byte, error)
- func (v *SetBreakpointByURLParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetBreakpointByURLParams) UnmarshalJSON(data []byte) error
- func (p SetBreakpointByURLParams) WithColumnNumber(columnNumber int64) *SetBreakpointByURLParams
- func (p SetBreakpointByURLParams) WithCondition(condition string) *SetBreakpointByURLParams
- func (p SetBreakpointByURLParams) WithScriptHash(scriptHash string) *SetBreakpointByURLParams
- func (p SetBreakpointByURLParams) WithURL(url string) *SetBreakpointByURLParams
- func (p SetBreakpointByURLParams) WithURLRegex(urlRegex string) *SetBreakpointByURLParams
- type SetBreakpointByURLReturns
- type SetBreakpointOnFunctionCallParams
- func (p *SetBreakpointOnFunctionCallParams) Do(ctx context.Context) (breakpointID BreakpointID, err error)
- func (v SetBreakpointOnFunctionCallParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetBreakpointOnFunctionCallParams) MarshalJSON() ([]byte, error)
- func (v *SetBreakpointOnFunctionCallParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetBreakpointOnFunctionCallParams) UnmarshalJSON(data []byte) error
- func (p SetBreakpointOnFunctionCallParams) WithCondition(condition string) *SetBreakpointOnFunctionCallParams
- type SetBreakpointOnFunctionCallReturns
- func (v SetBreakpointOnFunctionCallReturns) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetBreakpointOnFunctionCallReturns) MarshalJSON() ([]byte, error)
- func (v *SetBreakpointOnFunctionCallReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetBreakpointOnFunctionCallReturns) UnmarshalJSON(data []byte) error
- type SetBreakpointParams
- func (p *SetBreakpointParams) Do(ctx context.Context) (breakpointID BreakpointID, actualLocation *Location, err error)
- func (v SetBreakpointParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetBreakpointParams) MarshalJSON() ([]byte, error)
- func (v *SetBreakpointParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetBreakpointParams) UnmarshalJSON(data []byte) error
- func (p SetBreakpointParams) WithCondition(condition string) *SetBreakpointParams
- type SetBreakpointReturns
- type SetBreakpointsActiveParams
- func (p *SetBreakpointsActiveParams) Do(ctx context.Context) (err error)
- func (v SetBreakpointsActiveParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetBreakpointsActiveParams) MarshalJSON() ([]byte, error)
- func (v *SetBreakpointsActiveParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetBreakpointsActiveParams) UnmarshalJSON(data []byte) error
- type SetInstrumentationBreakpointInstrumentation
- func (t SetInstrumentationBreakpointInstrumentation) MarshalEasyJSON(out *jwriter.Writer)
- func (t SetInstrumentationBreakpointInstrumentation) MarshalJSON() ([]byte, error)
- func (t SetInstrumentationBreakpointInstrumentation) String() string
- func (t *SetInstrumentationBreakpointInstrumentation) UnmarshalEasyJSON(in *jlexer.Lexer)
- func (t *SetInstrumentationBreakpointInstrumentation) UnmarshalJSON(buf []byte) error
- type SetInstrumentationBreakpointParams
- func (p *SetInstrumentationBreakpointParams) Do(ctx context.Context) (breakpointID BreakpointID, err error)
- func (v SetInstrumentationBreakpointParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetInstrumentationBreakpointParams) MarshalJSON() ([]byte, error)
- func (v *SetInstrumentationBreakpointParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetInstrumentationBreakpointParams) UnmarshalJSON(data []byte) error
- type SetInstrumentationBreakpointReturns
- func (v SetInstrumentationBreakpointReturns) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetInstrumentationBreakpointReturns) MarshalJSON() ([]byte, error)
- func (v *SetInstrumentationBreakpointReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetInstrumentationBreakpointReturns) UnmarshalJSON(data []byte) error
- type SetPauseOnExceptionsParams
- func (p *SetPauseOnExceptionsParams) Do(ctx context.Context) (err error)
- func (v SetPauseOnExceptionsParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetPauseOnExceptionsParams) MarshalJSON() ([]byte, error)
- func (v *SetPauseOnExceptionsParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetPauseOnExceptionsParams) UnmarshalJSON(data []byte) error
- type SetReturnValueParams
- func (p *SetReturnValueParams) Do(ctx context.Context) (err error)
- func (v SetReturnValueParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetReturnValueParams) MarshalJSON() ([]byte, error)
- func (v *SetReturnValueParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetReturnValueParams) UnmarshalJSON(data []byte) error
- type SetScriptSourceParams
- func (p *SetScriptSourceParams) Do(ctx context.Context) (callFrames []*CallFrame, stackChanged bool, ...)
- func (v SetScriptSourceParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetScriptSourceParams) MarshalJSON() ([]byte, error)
- func (v *SetScriptSourceParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetScriptSourceParams) UnmarshalJSON(data []byte) error
- func (p SetScriptSourceParams) WithDryRun(dryRun bool) *SetScriptSourceParams
- type SetScriptSourceReturns
- type SetSkipAllPausesParams
- func (p *SetSkipAllPausesParams) Do(ctx context.Context) (err error)
- func (v SetSkipAllPausesParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetSkipAllPausesParams) MarshalJSON() ([]byte, error)
- func (v *SetSkipAllPausesParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetSkipAllPausesParams) UnmarshalJSON(data []byte) error
- type SetVariableValueParams
- func (p *SetVariableValueParams) Do(ctx context.Context) (err error)
- func (v SetVariableValueParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v SetVariableValueParams) MarshalJSON() ([]byte, error)
- func (v *SetVariableValueParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *SetVariableValueParams) UnmarshalJSON(data []byte) error
- type StepIntoParams
- func (p *StepIntoParams) Do(ctx context.Context) (err error)
- func (v StepIntoParams) MarshalEasyJSON(w *jwriter.Writer)
- func (v StepIntoParams) MarshalJSON() ([]byte, error)
- func (v *StepIntoParams) UnmarshalEasyJSON(l *jlexer.Lexer)
- func (v *StepIntoParams) UnmarshalJSON(data []byte) error
- func (p StepIntoParams) WithBreakOnAsyncCall(breakOnAsyncCall bool) *StepIntoParams
- type StepOutParams
- type StepOverParams
Constants ¶
const ( CommandContinueToLocation = "Debugger.continueToLocation" CommandDisable = "Debugger.disable" CommandEnable = "Debugger.enable" CommandEvaluateOnCallFrame = "Debugger.evaluateOnCallFrame" CommandExecuteWasmEvaluator = "Debugger.executeWasmEvaluator" CommandGetPossibleBreakpoints = "Debugger.getPossibleBreakpoints" CommandGetScriptSource = "Debugger.getScriptSource" CommandGetStackTrace = "Debugger.getStackTrace" CommandPause = "Debugger.pause" CommandRemoveBreakpoint = "Debugger.removeBreakpoint" CommandRestartFrame = "Debugger.restartFrame" CommandResume = "Debugger.resume" CommandSearchInContent = "Debugger.searchInContent" CommandSetAsyncCallStackDepth = "Debugger.setAsyncCallStackDepth" CommandSetBlackboxPatterns = "Debugger.setBlackboxPatterns" CommandSetBlackboxedRanges = "Debugger.setBlackboxedRanges" CommandSetBreakpoint = "Debugger.setBreakpoint" CommandSetInstrumentationBreakpoint = "Debugger.setInstrumentationBreakpoint" CommandSetBreakpointByURL = "Debugger.setBreakpointByUrl" CommandSetBreakpointOnFunctionCall = "Debugger.setBreakpointOnFunctionCall" CommandSetBreakpointsActive = "Debugger.setBreakpointsActive" CommandSetPauseOnExceptions = "Debugger.setPauseOnExceptions" CommandSetReturnValue = "Debugger.setReturnValue" CommandSetScriptSource = "Debugger.setScriptSource" CommandSetSkipAllPauses = "Debugger.setSkipAllPauses" CommandSetVariableValue = "Debugger.setVariableValue" CommandStepInto = "Debugger.stepInto" CommandStepOut = "Debugger.stepOut" CommandStepOver = "Debugger.stepOver" )
Command names.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BreakLocation ¶
type BreakLocation struct { ScriptID runtime.ScriptID `json:"scriptId"` // Script identifier as reported in the Debugger.scriptParsed. LineNumber int64 `json:"lineNumber"` // Line number in the script (0-based). ColumnNumber int64 `json:"columnNumber,omitempty"` // Column number in the script (0-based). Type BreakLocationType `json:"type,omitempty"` }
BreakLocation [no description].
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-BreakLocation
func (BreakLocation) MarshalEasyJSON ¶
func (v BreakLocation) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (BreakLocation) MarshalJSON ¶
func (v BreakLocation) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*BreakLocation) UnmarshalEasyJSON ¶
func (v *BreakLocation) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*BreakLocation) UnmarshalJSON ¶
func (v *BreakLocation) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type BreakLocationType ¶
type BreakLocationType string
BreakLocationType [no description].
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-BreakLocation
const ( BreakLocationTypeDebuggerStatement BreakLocationType = "debuggerStatement" BreakLocationTypeCall BreakLocationType = "call" BreakLocationTypeReturn BreakLocationType = "return" )
BreakLocationType values.
func (BreakLocationType) MarshalEasyJSON ¶
func (t BreakLocationType) MarshalEasyJSON(out *jwriter.Writer)
MarshalEasyJSON satisfies easyjson.Marshaler.
func (BreakLocationType) MarshalJSON ¶
func (t BreakLocationType) MarshalJSON() ([]byte, error)
MarshalJSON satisfies json.Marshaler.
func (BreakLocationType) String ¶
func (t BreakLocationType) String() string
String returns the BreakLocationType as string value.
func (*BreakLocationType) UnmarshalEasyJSON ¶
func (t *BreakLocationType) UnmarshalEasyJSON(in *jlexer.Lexer)
UnmarshalEasyJSON satisfies easyjson.Unmarshaler.
func (*BreakLocationType) UnmarshalJSON ¶
func (t *BreakLocationType) UnmarshalJSON(buf []byte) error
UnmarshalJSON satisfies json.Unmarshaler.
type BreakpointID ¶
type BreakpointID string
BreakpointID breakpoint identifier.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-BreakpointId
func (BreakpointID) String ¶
func (t BreakpointID) String() string
String returns the BreakpointID as string value.
type CallFrame ¶
type CallFrame struct { CallFrameID CallFrameID `json:"callFrameId"` // Call frame identifier. This identifier is only valid while the virtual machine is paused. FunctionName string `json:"functionName"` // Name of the JavaScript function called on this call frame. FunctionLocation *Location `json:"functionLocation,omitempty"` // Location in the source code. Location *Location `json:"location"` // Location in the source code. URL string `json:"url"` // JavaScript script name or url. ScopeChain []*Scope `json:"scopeChain"` // Scope chain for this call frame. This *runtime.RemoteObject `json:"this"` // this object for this call frame. ReturnValue *runtime.RemoteObject `json:"returnValue,omitempty"` // The value being returned, if the function is at return point. }
CallFrame JavaScript call frame. Array of call frames form the call stack.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-CallFrame
func (CallFrame) MarshalEasyJSON ¶
MarshalEasyJSON supports easyjson.Marshaler interface
func (CallFrame) MarshalJSON ¶
MarshalJSON supports json.Marshaler interface
func (*CallFrame) UnmarshalEasyJSON ¶
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*CallFrame) UnmarshalJSON ¶
UnmarshalJSON supports json.Unmarshaler interface
type CallFrameID ¶
type CallFrameID string
CallFrameID call frame identifier.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-CallFrameId
func (CallFrameID) String ¶
func (t CallFrameID) String() string
String returns the CallFrameID as string value.
type ContinueToLocationParams ¶
type ContinueToLocationParams struct { Location *Location `json:"location"` // Location to continue to. TargetCallFrames ContinueToLocationTargetCallFrames `json:"targetCallFrames,omitempty"` }
ContinueToLocationParams continues execution until specific location is reached.
func ContinueToLocation ¶
func ContinueToLocation(location *Location) *ContinueToLocationParams
ContinueToLocation continues execution until specific location is reached.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-continueToLocation
parameters:
location - Location to continue to.
func (*ContinueToLocationParams) Do ¶
func (p *ContinueToLocationParams) Do(ctx context.Context) (err error)
Do executes Debugger.continueToLocation against the provided context.
func (ContinueToLocationParams) MarshalEasyJSON ¶
func (v ContinueToLocationParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (ContinueToLocationParams) MarshalJSON ¶
func (v ContinueToLocationParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*ContinueToLocationParams) UnmarshalEasyJSON ¶
func (v *ContinueToLocationParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*ContinueToLocationParams) UnmarshalJSON ¶
func (v *ContinueToLocationParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (ContinueToLocationParams) WithTargetCallFrames ¶
func (p ContinueToLocationParams) WithTargetCallFrames(targetCallFrames ContinueToLocationTargetCallFrames) *ContinueToLocationParams
WithTargetCallFrames [no description].
type ContinueToLocationTargetCallFrames ¶
type ContinueToLocationTargetCallFrames string
ContinueToLocationTargetCallFrames [no description].
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-continueToLocation
const ( ContinueToLocationTargetCallFramesAny ContinueToLocationTargetCallFrames = "any" ContinueToLocationTargetCallFramesCurrent ContinueToLocationTargetCallFrames = "current" )
ContinueToLocationTargetCallFrames values.
func (ContinueToLocationTargetCallFrames) MarshalEasyJSON ¶
func (t ContinueToLocationTargetCallFrames) MarshalEasyJSON(out *jwriter.Writer)
MarshalEasyJSON satisfies easyjson.Marshaler.
func (ContinueToLocationTargetCallFrames) MarshalJSON ¶
func (t ContinueToLocationTargetCallFrames) MarshalJSON() ([]byte, error)
MarshalJSON satisfies json.Marshaler.
func (ContinueToLocationTargetCallFrames) String ¶
func (t ContinueToLocationTargetCallFrames) String() string
String returns the ContinueToLocationTargetCallFrames as string value.
func (*ContinueToLocationTargetCallFrames) UnmarshalEasyJSON ¶
func (t *ContinueToLocationTargetCallFrames) UnmarshalEasyJSON(in *jlexer.Lexer)
UnmarshalEasyJSON satisfies easyjson.Unmarshaler.
func (*ContinueToLocationTargetCallFrames) UnmarshalJSON ¶
func (t *ContinueToLocationTargetCallFrames) UnmarshalJSON(buf []byte) error
UnmarshalJSON satisfies json.Unmarshaler.
type DebugSymbols ¶
type DebugSymbols struct { Type DebugSymbolsType `json:"type"` // Type of the debug symbols. ExternalURL string `json:"externalURL,omitempty"` // URL of the external symbol source. }
DebugSymbols debug symbols available for a wasm script.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-DebugSymbols
func (DebugSymbols) MarshalEasyJSON ¶
func (v DebugSymbols) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (DebugSymbols) MarshalJSON ¶
func (v DebugSymbols) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*DebugSymbols) UnmarshalEasyJSON ¶
func (v *DebugSymbols) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*DebugSymbols) UnmarshalJSON ¶
func (v *DebugSymbols) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type DebugSymbolsType ¶
type DebugSymbolsType string
DebugSymbolsType type of the debug symbols.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-DebugSymbols
const ( DebugSymbolsTypeNone DebugSymbolsType = "None" DebugSymbolsTypeSourceMap DebugSymbolsType = "SourceMap" DebugSymbolsTypeEmbeddedDWARF DebugSymbolsType = "EmbeddedDWARF" DebugSymbolsTypeExternalDWARF DebugSymbolsType = "ExternalDWARF" )
DebugSymbolsType values.
func (DebugSymbolsType) MarshalEasyJSON ¶
func (t DebugSymbolsType) MarshalEasyJSON(out *jwriter.Writer)
MarshalEasyJSON satisfies easyjson.Marshaler.
func (DebugSymbolsType) MarshalJSON ¶
func (t DebugSymbolsType) MarshalJSON() ([]byte, error)
MarshalJSON satisfies json.Marshaler.
func (DebugSymbolsType) String ¶
func (t DebugSymbolsType) String() string
String returns the DebugSymbolsType as string value.
func (*DebugSymbolsType) UnmarshalEasyJSON ¶
func (t *DebugSymbolsType) UnmarshalEasyJSON(in *jlexer.Lexer)
UnmarshalEasyJSON satisfies easyjson.Unmarshaler.
func (*DebugSymbolsType) UnmarshalJSON ¶
func (t *DebugSymbolsType) UnmarshalJSON(buf []byte) error
UnmarshalJSON satisfies json.Unmarshaler.
type DisableParams ¶
type DisableParams struct{}
DisableParams disables debugger for given page.
func Disable ¶
func Disable() *DisableParams
Disable disables debugger for given page.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-disable
func (*DisableParams) Do ¶
func (p *DisableParams) Do(ctx context.Context) (err error)
Do executes Debugger.disable against the provided context.
func (DisableParams) MarshalEasyJSON ¶
func (v DisableParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (DisableParams) MarshalJSON ¶
func (v DisableParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*DisableParams) UnmarshalEasyJSON ¶
func (v *DisableParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*DisableParams) UnmarshalJSON ¶
func (v *DisableParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type EnableParams ¶
type EnableParams struct {
MaxScriptsCacheSize float64 `json:"maxScriptsCacheSize,omitempty"` // The maximum size in bytes of collected scripts (not referenced by other heap objects) the debugger can hold. Puts no limit if parameter is omitted.
}
EnableParams enables debugger for the given page. Clients should not assume that the debugging has been enabled until the result for this command is received.
func Enable ¶
func Enable() *EnableParams
Enable enables debugger for the given page. Clients should not assume that the debugging has been enabled until the result for this command is received.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-enable
parameters:
func (*EnableParams) Do ¶
func (p *EnableParams) Do(ctx context.Context) (debuggerID runtime.UniqueDebuggerID, err error)
Do executes Debugger.enable against the provided context.
returns:
debuggerID - Unique identifier of the debugger.
func (EnableParams) MarshalEasyJSON ¶
func (v EnableParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EnableParams) MarshalJSON ¶
func (v EnableParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EnableParams) UnmarshalEasyJSON ¶
func (v *EnableParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EnableParams) UnmarshalJSON ¶
func (v *EnableParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (EnableParams) WithMaxScriptsCacheSize ¶
func (p EnableParams) WithMaxScriptsCacheSize(maxScriptsCacheSize float64) *EnableParams
WithMaxScriptsCacheSize the maximum size in bytes of collected scripts (not referenced by other heap objects) the debugger can hold. Puts no limit if parameter is omitted.
type EnableReturns ¶
type EnableReturns struct {
DebuggerID runtime.UniqueDebuggerID `json:"debuggerId,omitempty"` // Unique identifier of the debugger.
}
EnableReturns return values.
func (EnableReturns) MarshalEasyJSON ¶
func (v EnableReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EnableReturns) MarshalJSON ¶
func (v EnableReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EnableReturns) UnmarshalEasyJSON ¶
func (v *EnableReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EnableReturns) UnmarshalJSON ¶
func (v *EnableReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type EvaluateOnCallFrameParams ¶
type EvaluateOnCallFrameParams struct { CallFrameID CallFrameID `json:"callFrameId"` // Call frame identifier to evaluate on. Expression string `json:"expression"` // Expression to evaluate. ObjectGroup string `json:"objectGroup,omitempty"` // String object group name to put result into (allows rapid releasing resulting object handles using releaseObjectGroup). IncludeCommandLineAPI bool `json:"includeCommandLineAPI,omitempty"` // Specifies whether command line API should be available to the evaluated expression, defaults to false. Silent bool `json:"silent,omitempty"` // In silent mode exceptions thrown during evaluation are not reported and do not pause execution. Overrides setPauseOnException state. ReturnByValue bool `json:"returnByValue,omitempty"` // Whether the result is expected to be a JSON object that should be sent by value. GeneratePreview bool `json:"generatePreview,omitempty"` // Whether preview should be generated for the result. ThrowOnSideEffect bool `json:"throwOnSideEffect,omitempty"` // Whether to throw an exception if side effect cannot be ruled out during evaluation. Timeout runtime.TimeDelta `json:"timeout,omitempty"` // Terminate execution after timing out (number of milliseconds). }
EvaluateOnCallFrameParams evaluates expression on a given call frame.
func EvaluateOnCallFrame ¶
func EvaluateOnCallFrame(callFrameID CallFrameID, expression string) *EvaluateOnCallFrameParams
EvaluateOnCallFrame evaluates expression on a given call frame.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-evaluateOnCallFrame
parameters:
callFrameID - Call frame identifier to evaluate on. expression - Expression to evaluate.
func (*EvaluateOnCallFrameParams) Do ¶
func (p *EvaluateOnCallFrameParams) Do(ctx context.Context) (result *runtime.RemoteObject, exceptionDetails *runtime.ExceptionDetails, err error)
Do executes Debugger.evaluateOnCallFrame against the provided context.
returns:
result - Object wrapper for the evaluation result. exceptionDetails - Exception details.
func (EvaluateOnCallFrameParams) MarshalEasyJSON ¶
func (v EvaluateOnCallFrameParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EvaluateOnCallFrameParams) MarshalJSON ¶
func (v EvaluateOnCallFrameParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EvaluateOnCallFrameParams) UnmarshalEasyJSON ¶
func (v *EvaluateOnCallFrameParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EvaluateOnCallFrameParams) UnmarshalJSON ¶
func (v *EvaluateOnCallFrameParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (EvaluateOnCallFrameParams) WithGeneratePreview ¶
func (p EvaluateOnCallFrameParams) WithGeneratePreview(generatePreview bool) *EvaluateOnCallFrameParams
WithGeneratePreview whether preview should be generated for the result.
func (EvaluateOnCallFrameParams) WithIncludeCommandLineAPI ¶
func (p EvaluateOnCallFrameParams) WithIncludeCommandLineAPI(includeCommandLineAPI bool) *EvaluateOnCallFrameParams
WithIncludeCommandLineAPI specifies whether command line API should be available to the evaluated expression, defaults to false.
func (EvaluateOnCallFrameParams) WithObjectGroup ¶
func (p EvaluateOnCallFrameParams) WithObjectGroup(objectGroup string) *EvaluateOnCallFrameParams
WithObjectGroup string object group name to put result into (allows rapid releasing resulting object handles using releaseObjectGroup).
func (EvaluateOnCallFrameParams) WithReturnByValue ¶
func (p EvaluateOnCallFrameParams) WithReturnByValue(returnByValue bool) *EvaluateOnCallFrameParams
WithReturnByValue whether the result is expected to be a JSON object that should be sent by value.
func (EvaluateOnCallFrameParams) WithSilent ¶
func (p EvaluateOnCallFrameParams) WithSilent(silent bool) *EvaluateOnCallFrameParams
WithSilent in silent mode exceptions thrown during evaluation are not reported and do not pause execution. Overrides setPauseOnException state.
func (EvaluateOnCallFrameParams) WithThrowOnSideEffect ¶
func (p EvaluateOnCallFrameParams) WithThrowOnSideEffect(throwOnSideEffect bool) *EvaluateOnCallFrameParams
WithThrowOnSideEffect whether to throw an exception if side effect cannot be ruled out during evaluation.
func (EvaluateOnCallFrameParams) WithTimeout ¶
func (p EvaluateOnCallFrameParams) WithTimeout(timeout runtime.TimeDelta) *EvaluateOnCallFrameParams
WithTimeout terminate execution after timing out (number of milliseconds).
type EvaluateOnCallFrameReturns ¶
type EvaluateOnCallFrameReturns struct { Result *runtime.RemoteObject `json:"result,omitempty"` // Object wrapper for the evaluation result. ExceptionDetails *runtime.ExceptionDetails `json:"exceptionDetails,omitempty"` // Exception details. }
EvaluateOnCallFrameReturns return values.
func (EvaluateOnCallFrameReturns) MarshalEasyJSON ¶
func (v EvaluateOnCallFrameReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EvaluateOnCallFrameReturns) MarshalJSON ¶
func (v EvaluateOnCallFrameReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EvaluateOnCallFrameReturns) UnmarshalEasyJSON ¶
func (v *EvaluateOnCallFrameReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EvaluateOnCallFrameReturns) UnmarshalJSON ¶
func (v *EvaluateOnCallFrameReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type EventBreakpointResolved ¶
type EventBreakpointResolved struct { BreakpointID BreakpointID `json:"breakpointId"` // Breakpoint unique identifier. Location *Location `json:"location"` // Actual breakpoint location. }
EventBreakpointResolved fired when breakpoint is resolved to an actual script and location.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#event-breakpointResolved
func (EventBreakpointResolved) MarshalEasyJSON ¶
func (v EventBreakpointResolved) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EventBreakpointResolved) MarshalJSON ¶
func (v EventBreakpointResolved) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EventBreakpointResolved) UnmarshalEasyJSON ¶
func (v *EventBreakpointResolved) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EventBreakpointResolved) UnmarshalJSON ¶
func (v *EventBreakpointResolved) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type EventPaused ¶
type EventPaused struct { CallFrames []*CallFrame `json:"callFrames"` // Call stack the virtual machine stopped on. Reason PausedReason `json:"reason"` // Pause reason. Data easyjson.RawMessage `json:"data,omitempty"` HitBreakpoints []string `json:"hitBreakpoints,omitempty"` // Hit breakpoints IDs AsyncStackTrace *runtime.StackTrace `json:"asyncStackTrace,omitempty"` // Async stack trace, if any. AsyncStackTraceID *runtime.StackTraceID `json:"asyncStackTraceId,omitempty"` // Async stack trace, if any. }
EventPaused fired when the virtual machine stopped on breakpoint or exception or any other stop criteria.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#event-paused
func (EventPaused) MarshalEasyJSON ¶
func (v EventPaused) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EventPaused) MarshalJSON ¶
func (v EventPaused) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EventPaused) UnmarshalEasyJSON ¶
func (v *EventPaused) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EventPaused) UnmarshalJSON ¶
func (v *EventPaused) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type EventResumed ¶
type EventResumed struct{}
EventResumed fired when the virtual machine resumed execution.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#event-resumed
func (EventResumed) MarshalEasyJSON ¶
func (v EventResumed) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EventResumed) MarshalJSON ¶
func (v EventResumed) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EventResumed) UnmarshalEasyJSON ¶
func (v *EventResumed) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EventResumed) UnmarshalJSON ¶
func (v *EventResumed) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type EventScriptFailedToParse ¶
type EventScriptFailedToParse struct { ScriptID runtime.ScriptID `json:"scriptId"` // Identifier of the script parsed. URL string `json:"url"` // URL or name of the script parsed (if any). StartLine int64 `json:"startLine"` // Line offset of the script within the resource with given URL (for script tags). StartColumn int64 `json:"startColumn"` // Column offset of the script within the resource with given URL. EndLine int64 `json:"endLine"` // Last line of the script. EndColumn int64 `json:"endColumn"` // Length of the last line of the script. ExecutionContextID runtime.ExecutionContextID `json:"executionContextId"` // Specifies script creation context. Hash string `json:"hash"` // Content hash of the script. ExecutionContextAuxData easyjson.RawMessage `json:"executionContextAuxData,omitempty"` SourceMapURL string `json:"sourceMapURL,omitempty"` // URL of source map associated with script (if any). HasSourceURL bool `json:"hasSourceURL,omitempty"` // True, if this script has sourceURL. IsModule bool `json:"isModule,omitempty"` // True, if this script is ES6 module. Length int64 `json:"length,omitempty"` // This script length. StackTrace *runtime.StackTrace `json:"stackTrace,omitempty"` // JavaScript top stack frame of where the script parsed event was triggered if available. CodeOffset int64 `json:"codeOffset,omitempty"` // If the scriptLanguage is WebAssembly, the code section offset in the module. ScriptLanguage ScriptLanguage `json:"scriptLanguage,omitempty"` // The language of the script. }
EventScriptFailedToParse fired when virtual machine fails to parse the script.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#event-scriptFailedToParse
func (EventScriptFailedToParse) MarshalEasyJSON ¶
func (v EventScriptFailedToParse) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EventScriptFailedToParse) MarshalJSON ¶
func (v EventScriptFailedToParse) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EventScriptFailedToParse) UnmarshalEasyJSON ¶
func (v *EventScriptFailedToParse) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EventScriptFailedToParse) UnmarshalJSON ¶
func (v *EventScriptFailedToParse) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type EventScriptParsed ¶
type EventScriptParsed struct { ScriptID runtime.ScriptID `json:"scriptId"` // Identifier of the script parsed. URL string `json:"url"` // URL or name of the script parsed (if any). StartLine int64 `json:"startLine"` // Line offset of the script within the resource with given URL (for script tags). StartColumn int64 `json:"startColumn"` // Column offset of the script within the resource with given URL. EndLine int64 `json:"endLine"` // Last line of the script. EndColumn int64 `json:"endColumn"` // Length of the last line of the script. ExecutionContextID runtime.ExecutionContextID `json:"executionContextId"` // Specifies script creation context. Hash string `json:"hash"` // Content hash of the script. ExecutionContextAuxData easyjson.RawMessage `json:"executionContextAuxData,omitempty"` IsLiveEdit bool `json:"isLiveEdit,omitempty"` // True, if this script is generated as a result of the live edit operation. SourceMapURL string `json:"sourceMapURL,omitempty"` // URL of source map associated with script (if any). HasSourceURL bool `json:"hasSourceURL,omitempty"` // True, if this script has sourceURL. IsModule bool `json:"isModule,omitempty"` // True, if this script is ES6 module. Length int64 `json:"length,omitempty"` // This script length. StackTrace *runtime.StackTrace `json:"stackTrace,omitempty"` // JavaScript top stack frame of where the script parsed event was triggered if available. CodeOffset int64 `json:"codeOffset,omitempty"` // If the scriptLanguage is WebAssembly, the code section offset in the module. ScriptLanguage ScriptLanguage `json:"scriptLanguage,omitempty"` // The language of the script. DebugSymbols *DebugSymbols `json:"debugSymbols,omitempty"` // If the scriptLanguage is WebASsembly, the source of debug symbols for the module. }
EventScriptParsed fired when virtual machine parses script. This event is also fired for all known and uncollected scripts upon enabling debugger.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#event-scriptParsed
func (EventScriptParsed) MarshalEasyJSON ¶
func (v EventScriptParsed) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (EventScriptParsed) MarshalJSON ¶
func (v EventScriptParsed) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*EventScriptParsed) UnmarshalEasyJSON ¶
func (v *EventScriptParsed) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*EventScriptParsed) UnmarshalJSON ¶
func (v *EventScriptParsed) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type ExceptionsState ¶
type ExceptionsState string
ExceptionsState pause on exceptions mode.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setPauseOnExceptions
const ( ExceptionsStateNone ExceptionsState = "none" ExceptionsStateUncaught ExceptionsState = "uncaught" ExceptionsStateAll ExceptionsState = "all" )
ExceptionsState values.
func (ExceptionsState) MarshalEasyJSON ¶
func (t ExceptionsState) MarshalEasyJSON(out *jwriter.Writer)
MarshalEasyJSON satisfies easyjson.Marshaler.
func (ExceptionsState) MarshalJSON ¶
func (t ExceptionsState) MarshalJSON() ([]byte, error)
MarshalJSON satisfies json.Marshaler.
func (ExceptionsState) String ¶
func (t ExceptionsState) String() string
String returns the ExceptionsState as string value.
func (*ExceptionsState) UnmarshalEasyJSON ¶
func (t *ExceptionsState) UnmarshalEasyJSON(in *jlexer.Lexer)
UnmarshalEasyJSON satisfies easyjson.Unmarshaler.
func (*ExceptionsState) UnmarshalJSON ¶
func (t *ExceptionsState) UnmarshalJSON(buf []byte) error
UnmarshalJSON satisfies json.Unmarshaler.
type ExecuteWasmEvaluatorParams ¶
type ExecuteWasmEvaluatorParams struct { CallFrameID CallFrameID `json:"callFrameId"` // WebAssembly call frame identifier to evaluate on. Evaluator string `json:"evaluator"` // Code of the evaluator module. Timeout runtime.TimeDelta `json:"timeout,omitempty"` // Terminate execution after timing out (number of milliseconds). }
ExecuteWasmEvaluatorParams execute a Wasm Evaluator module on a given call frame.
func ExecuteWasmEvaluator ¶
func ExecuteWasmEvaluator(callFrameID CallFrameID, evaluator string) *ExecuteWasmEvaluatorParams
ExecuteWasmEvaluator execute a Wasm Evaluator module on a given call frame.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-executeWasmEvaluator
parameters:
callFrameID - WebAssembly call frame identifier to evaluate on. evaluator - Code of the evaluator module.
func (*ExecuteWasmEvaluatorParams) Do ¶
func (p *ExecuteWasmEvaluatorParams) Do(ctx context.Context) (result *runtime.RemoteObject, exceptionDetails *runtime.ExceptionDetails, err error)
Do executes Debugger.executeWasmEvaluator against the provided context.
returns:
result - Object wrapper for the evaluation result. exceptionDetails - Exception details.
func (ExecuteWasmEvaluatorParams) MarshalEasyJSON ¶
func (v ExecuteWasmEvaluatorParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (ExecuteWasmEvaluatorParams) MarshalJSON ¶
func (v ExecuteWasmEvaluatorParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*ExecuteWasmEvaluatorParams) UnmarshalEasyJSON ¶
func (v *ExecuteWasmEvaluatorParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*ExecuteWasmEvaluatorParams) UnmarshalJSON ¶
func (v *ExecuteWasmEvaluatorParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (ExecuteWasmEvaluatorParams) WithTimeout ¶
func (p ExecuteWasmEvaluatorParams) WithTimeout(timeout runtime.TimeDelta) *ExecuteWasmEvaluatorParams
WithTimeout terminate execution after timing out (number of milliseconds).
type ExecuteWasmEvaluatorReturns ¶
type ExecuteWasmEvaluatorReturns struct { Result *runtime.RemoteObject `json:"result,omitempty"` // Object wrapper for the evaluation result. ExceptionDetails *runtime.ExceptionDetails `json:"exceptionDetails,omitempty"` // Exception details. }
ExecuteWasmEvaluatorReturns return values.
func (ExecuteWasmEvaluatorReturns) MarshalEasyJSON ¶
func (v ExecuteWasmEvaluatorReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (ExecuteWasmEvaluatorReturns) MarshalJSON ¶
func (v ExecuteWasmEvaluatorReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*ExecuteWasmEvaluatorReturns) UnmarshalEasyJSON ¶
func (v *ExecuteWasmEvaluatorReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*ExecuteWasmEvaluatorReturns) UnmarshalJSON ¶
func (v *ExecuteWasmEvaluatorReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type GetPossibleBreakpointsParams ¶
type GetPossibleBreakpointsParams struct { Start *Location `json:"start"` // Start of range to search possible breakpoint locations in. End *Location `json:"end,omitempty"` // End of range to search possible breakpoint locations in (excluding). When not specified, end of scripts is used as end of range. RestrictToFunction bool `json:"restrictToFunction,omitempty"` // Only consider locations which are in the same (non-nested) function as start. }
GetPossibleBreakpointsParams returns possible locations for breakpoint. scriptId in start and end range locations should be the same.
func GetPossibleBreakpoints ¶
func GetPossibleBreakpoints(start *Location) *GetPossibleBreakpointsParams
GetPossibleBreakpoints returns possible locations for breakpoint. scriptId in start and end range locations should be the same.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-getPossibleBreakpoints
parameters:
start - Start of range to search possible breakpoint locations in.
func (*GetPossibleBreakpointsParams) Do ¶
func (p *GetPossibleBreakpointsParams) Do(ctx context.Context) (locations []*BreakLocation, err error)
Do executes Debugger.getPossibleBreakpoints against the provided context.
returns:
locations - List of the possible breakpoint locations.
func (GetPossibleBreakpointsParams) MarshalEasyJSON ¶
func (v GetPossibleBreakpointsParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (GetPossibleBreakpointsParams) MarshalJSON ¶
func (v GetPossibleBreakpointsParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*GetPossibleBreakpointsParams) UnmarshalEasyJSON ¶
func (v *GetPossibleBreakpointsParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*GetPossibleBreakpointsParams) UnmarshalJSON ¶
func (v *GetPossibleBreakpointsParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (GetPossibleBreakpointsParams) WithEnd ¶
func (p GetPossibleBreakpointsParams) WithEnd(end *Location) *GetPossibleBreakpointsParams
WithEnd end of range to search possible breakpoint locations in (excluding). When not specified, end of scripts is used as end of range.
func (GetPossibleBreakpointsParams) WithRestrictToFunction ¶
func (p GetPossibleBreakpointsParams) WithRestrictToFunction(restrictToFunction bool) *GetPossibleBreakpointsParams
WithRestrictToFunction only consider locations which are in the same (non-nested) function as start.
type GetPossibleBreakpointsReturns ¶
type GetPossibleBreakpointsReturns struct {
Locations []*BreakLocation `json:"locations,omitempty"` // List of the possible breakpoint locations.
}
GetPossibleBreakpointsReturns return values.
func (GetPossibleBreakpointsReturns) MarshalEasyJSON ¶
func (v GetPossibleBreakpointsReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (GetPossibleBreakpointsReturns) MarshalJSON ¶
func (v GetPossibleBreakpointsReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*GetPossibleBreakpointsReturns) UnmarshalEasyJSON ¶
func (v *GetPossibleBreakpointsReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*GetPossibleBreakpointsReturns) UnmarshalJSON ¶
func (v *GetPossibleBreakpointsReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type GetScriptSourceParams ¶
type GetScriptSourceParams struct {
ScriptID runtime.ScriptID `json:"scriptId"` // Id of the script to get source for.
}
GetScriptSourceParams returns source for the script with given id.
func GetScriptSource ¶
func GetScriptSource(scriptID runtime.ScriptID) *GetScriptSourceParams
GetScriptSource returns source for the script with given id.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-getScriptSource
parameters:
scriptID - Id of the script to get source for.
func (*GetScriptSourceParams) Do ¶
func (p *GetScriptSourceParams) Do(ctx context.Context) (scriptSource string, bytecode []byte, err error)
Do executes Debugger.getScriptSource against the provided context.
returns:
scriptSource - Script source (empty in case of Wasm bytecode). bytecode - Wasm bytecode.
func (GetScriptSourceParams) MarshalEasyJSON ¶
func (v GetScriptSourceParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (GetScriptSourceParams) MarshalJSON ¶
func (v GetScriptSourceParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*GetScriptSourceParams) UnmarshalEasyJSON ¶
func (v *GetScriptSourceParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*GetScriptSourceParams) UnmarshalJSON ¶
func (v *GetScriptSourceParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type GetScriptSourceReturns ¶
type GetScriptSourceReturns struct { ScriptSource string `json:"scriptSource,omitempty"` // Script source (empty in case of Wasm bytecode). Bytecode string `json:"bytecode,omitempty"` // Wasm bytecode. }
GetScriptSourceReturns return values.
func (GetScriptSourceReturns) MarshalEasyJSON ¶
func (v GetScriptSourceReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (GetScriptSourceReturns) MarshalJSON ¶
func (v GetScriptSourceReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*GetScriptSourceReturns) UnmarshalEasyJSON ¶
func (v *GetScriptSourceReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*GetScriptSourceReturns) UnmarshalJSON ¶
func (v *GetScriptSourceReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type GetStackTraceParams ¶
type GetStackTraceParams struct {
StackTraceID *runtime.StackTraceID `json:"stackTraceId"`
}
GetStackTraceParams returns stack trace with given stackTraceId.
func GetStackTrace ¶
func GetStackTrace(stackTraceID *runtime.StackTraceID) *GetStackTraceParams
GetStackTrace returns stack trace with given stackTraceId.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-getStackTrace
parameters:
stackTraceID
func (*GetStackTraceParams) Do ¶
func (p *GetStackTraceParams) Do(ctx context.Context) (stackTrace *runtime.StackTrace, err error)
Do executes Debugger.getStackTrace against the provided context.
returns:
stackTrace
func (GetStackTraceParams) MarshalEasyJSON ¶
func (v GetStackTraceParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (GetStackTraceParams) MarshalJSON ¶
func (v GetStackTraceParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*GetStackTraceParams) UnmarshalEasyJSON ¶
func (v *GetStackTraceParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*GetStackTraceParams) UnmarshalJSON ¶
func (v *GetStackTraceParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type GetStackTraceReturns ¶
type GetStackTraceReturns struct {
StackTrace *runtime.StackTrace `json:"stackTrace,omitempty"`
}
GetStackTraceReturns return values.
func (GetStackTraceReturns) MarshalEasyJSON ¶
func (v GetStackTraceReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (GetStackTraceReturns) MarshalJSON ¶
func (v GetStackTraceReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*GetStackTraceReturns) UnmarshalEasyJSON ¶
func (v *GetStackTraceReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*GetStackTraceReturns) UnmarshalJSON ¶
func (v *GetStackTraceReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type Location ¶
type Location struct { ScriptID runtime.ScriptID `json:"scriptId"` // Script identifier as reported in the Debugger.scriptParsed. LineNumber int64 `json:"lineNumber"` // Line number in the script (0-based). ColumnNumber int64 `json:"columnNumber,omitempty"` // Column number in the script (0-based). }
Location location in the source code.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-Location
func (Location) MarshalEasyJSON ¶
MarshalEasyJSON supports easyjson.Marshaler interface
func (Location) MarshalJSON ¶
MarshalJSON supports json.Marshaler interface
func (*Location) UnmarshalEasyJSON ¶
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*Location) UnmarshalJSON ¶
UnmarshalJSON supports json.Unmarshaler interface
type PauseParams ¶
type PauseParams struct{}
PauseParams stops on the next JavaScript statement.
func Pause ¶
func Pause() *PauseParams
Pause stops on the next JavaScript statement.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-pause
func (*PauseParams) Do ¶
func (p *PauseParams) Do(ctx context.Context) (err error)
Do executes Debugger.pause against the provided context.
func (PauseParams) MarshalEasyJSON ¶
func (v PauseParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (PauseParams) MarshalJSON ¶
func (v PauseParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*PauseParams) UnmarshalEasyJSON ¶
func (v *PauseParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*PauseParams) UnmarshalJSON ¶
func (v *PauseParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type PausedReason ¶
type PausedReason string
PausedReason pause reason.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#event-paused
const ( PausedReasonAmbiguous PausedReason = "ambiguous" PausedReasonAssert PausedReason = "assert" PausedReasonDebugCommand PausedReason = "debugCommand" PausedReasonDOM PausedReason = "DOM" PausedReasonEventListener PausedReason = "EventListener" PausedReasonException PausedReason = "exception" PausedReasonInstrumentation PausedReason = "instrumentation" PausedReasonOOM PausedReason = "OOM" PausedReasonOther PausedReason = "other" PausedReasonPromiseRejection PausedReason = "promiseRejection" PausedReasonXHR PausedReason = "XHR" )
PausedReason values.
func (PausedReason) MarshalEasyJSON ¶
func (t PausedReason) MarshalEasyJSON(out *jwriter.Writer)
MarshalEasyJSON satisfies easyjson.Marshaler.
func (PausedReason) MarshalJSON ¶
func (t PausedReason) MarshalJSON() ([]byte, error)
MarshalJSON satisfies json.Marshaler.
func (PausedReason) String ¶
func (t PausedReason) String() string
String returns the PausedReason as string value.
func (*PausedReason) UnmarshalEasyJSON ¶
func (t *PausedReason) UnmarshalEasyJSON(in *jlexer.Lexer)
UnmarshalEasyJSON satisfies easyjson.Unmarshaler.
func (*PausedReason) UnmarshalJSON ¶
func (t *PausedReason) UnmarshalJSON(buf []byte) error
UnmarshalJSON satisfies json.Unmarshaler.
type RemoveBreakpointParams ¶
type RemoveBreakpointParams struct {
BreakpointID BreakpointID `json:"breakpointId"`
}
RemoveBreakpointParams removes JavaScript breakpoint.
func RemoveBreakpoint ¶
func RemoveBreakpoint(breakpointID BreakpointID) *RemoveBreakpointParams
RemoveBreakpoint removes JavaScript breakpoint.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-removeBreakpoint
parameters:
breakpointID
func (*RemoveBreakpointParams) Do ¶
func (p *RemoveBreakpointParams) Do(ctx context.Context) (err error)
Do executes Debugger.removeBreakpoint against the provided context.
func (RemoveBreakpointParams) MarshalEasyJSON ¶
func (v RemoveBreakpointParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (RemoveBreakpointParams) MarshalJSON ¶
func (v RemoveBreakpointParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*RemoveBreakpointParams) UnmarshalEasyJSON ¶
func (v *RemoveBreakpointParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*RemoveBreakpointParams) UnmarshalJSON ¶
func (v *RemoveBreakpointParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type RestartFrameParams ¶
type RestartFrameParams struct {
CallFrameID CallFrameID `json:"callFrameId"` // Call frame identifier to evaluate on.
}
RestartFrameParams restarts particular call frame from the beginning.
func RestartFrame ¶
func RestartFrame(callFrameID CallFrameID) *RestartFrameParams
RestartFrame restarts particular call frame from the beginning.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-restartFrame
parameters:
callFrameID - Call frame identifier to evaluate on.
func (*RestartFrameParams) Do ¶
func (p *RestartFrameParams) Do(ctx context.Context) (callFrames []*CallFrame, asyncStackTrace *runtime.StackTrace, asyncStackTraceID *runtime.StackTraceID, err error)
Do executes Debugger.restartFrame against the provided context.
returns:
callFrames - New stack trace. asyncStackTrace - Async stack trace, if any. asyncStackTraceID - Async stack trace, if any.
func (RestartFrameParams) MarshalEasyJSON ¶
func (v RestartFrameParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (RestartFrameParams) MarshalJSON ¶
func (v RestartFrameParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*RestartFrameParams) UnmarshalEasyJSON ¶
func (v *RestartFrameParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*RestartFrameParams) UnmarshalJSON ¶
func (v *RestartFrameParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type RestartFrameReturns ¶
type RestartFrameReturns struct { CallFrames []*CallFrame `json:"callFrames,omitempty"` // New stack trace. AsyncStackTrace *runtime.StackTrace `json:"asyncStackTrace,omitempty"` // Async stack trace, if any. AsyncStackTraceID *runtime.StackTraceID `json:"asyncStackTraceId,omitempty"` // Async stack trace, if any. }
RestartFrameReturns return values.
func (RestartFrameReturns) MarshalEasyJSON ¶
func (v RestartFrameReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (RestartFrameReturns) MarshalJSON ¶
func (v RestartFrameReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*RestartFrameReturns) UnmarshalEasyJSON ¶
func (v *RestartFrameReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*RestartFrameReturns) UnmarshalJSON ¶
func (v *RestartFrameReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type ResumeParams ¶
type ResumeParams struct {
TerminateOnResume bool `json:"terminateOnResume,omitempty"` // Set to true to terminate execution upon resuming execution. In contrast to Runtime.terminateExecution, this will allows to execute further JavaScript (i.e. via evaluation) until execution of the paused code is actually resumed, at which point termination is triggered. If execution is currently not paused, this parameter has no effect.
}
ResumeParams resumes JavaScript execution.
func Resume ¶
func Resume() *ResumeParams
Resume resumes JavaScript execution.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-resume
parameters:
func (*ResumeParams) Do ¶
func (p *ResumeParams) Do(ctx context.Context) (err error)
Do executes Debugger.resume against the provided context.
func (ResumeParams) MarshalEasyJSON ¶
func (v ResumeParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (ResumeParams) MarshalJSON ¶
func (v ResumeParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*ResumeParams) UnmarshalEasyJSON ¶
func (v *ResumeParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*ResumeParams) UnmarshalJSON ¶
func (v *ResumeParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (ResumeParams) WithTerminateOnResume ¶
func (p ResumeParams) WithTerminateOnResume(terminateOnResume bool) *ResumeParams
WithTerminateOnResume set to true to terminate execution upon resuming execution. In contrast to Runtime.terminateExecution, this will allows to execute further JavaScript (i.e. via evaluation) until execution of the paused code is actually resumed, at which point termination is triggered. If execution is currently not paused, this parameter has no effect.
type Scope ¶
type Scope struct { Type ScopeType `json:"type"` // Scope type. Object *runtime.RemoteObject `json:"object"` // Object representing the scope. For global and with scopes it represents the actual object; for the rest of the scopes, it is artificial transient object enumerating scope variables as its properties. Name string `json:"name,omitempty"` StartLocation *Location `json:"startLocation,omitempty"` // Location in the source code where scope starts EndLocation *Location `json:"endLocation,omitempty"` // Location in the source code where scope ends }
Scope scope description.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-Scope
func (Scope) MarshalEasyJSON ¶
MarshalEasyJSON supports easyjson.Marshaler interface
func (Scope) MarshalJSON ¶
MarshalJSON supports json.Marshaler interface
func (*Scope) UnmarshalEasyJSON ¶
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*Scope) UnmarshalJSON ¶
UnmarshalJSON supports json.Unmarshaler interface
type ScopeType ¶
type ScopeType string
ScopeType scope type.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-Scope
const ( ScopeTypeGlobal ScopeType = "global" ScopeTypeLocal ScopeType = "local" ScopeTypeWith ScopeType = "with" ScopeTypeClosure ScopeType = "closure" ScopeTypeCatch ScopeType = "catch" ScopeTypeBlock ScopeType = "block" ScopeTypeScript ScopeType = "script" ScopeTypeEval ScopeType = "eval" ScopeTypeModule ScopeType = "module" ScopeTypeWasmExpressionStack ScopeType = "wasm-expression-stack" )
ScopeType values.
func (ScopeType) MarshalEasyJSON ¶
MarshalEasyJSON satisfies easyjson.Marshaler.
func (ScopeType) MarshalJSON ¶
MarshalJSON satisfies json.Marshaler.
func (*ScopeType) UnmarshalEasyJSON ¶
UnmarshalEasyJSON satisfies easyjson.Unmarshaler.
func (*ScopeType) UnmarshalJSON ¶
UnmarshalJSON satisfies json.Unmarshaler.
type ScriptLanguage ¶
type ScriptLanguage string
ScriptLanguage enum of possible script languages.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-ScriptLanguage
const ( ScriptLanguageJavaScript ScriptLanguage = "JavaScript" ScriptLanguageWebAssembly ScriptLanguage = "WebAssembly" )
ScriptLanguage values.
func (ScriptLanguage) MarshalEasyJSON ¶
func (t ScriptLanguage) MarshalEasyJSON(out *jwriter.Writer)
MarshalEasyJSON satisfies easyjson.Marshaler.
func (ScriptLanguage) MarshalJSON ¶
func (t ScriptLanguage) MarshalJSON() ([]byte, error)
MarshalJSON satisfies json.Marshaler.
func (ScriptLanguage) String ¶
func (t ScriptLanguage) String() string
String returns the ScriptLanguage as string value.
func (*ScriptLanguage) UnmarshalEasyJSON ¶
func (t *ScriptLanguage) UnmarshalEasyJSON(in *jlexer.Lexer)
UnmarshalEasyJSON satisfies easyjson.Unmarshaler.
func (*ScriptLanguage) UnmarshalJSON ¶
func (t *ScriptLanguage) UnmarshalJSON(buf []byte) error
UnmarshalJSON satisfies json.Unmarshaler.
type ScriptPosition ¶
type ScriptPosition struct { LineNumber int64 `json:"lineNumber"` ColumnNumber int64 `json:"columnNumber"` }
ScriptPosition location in the source code.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-ScriptPosition
func (ScriptPosition) MarshalEasyJSON ¶
func (v ScriptPosition) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (ScriptPosition) MarshalJSON ¶
func (v ScriptPosition) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*ScriptPosition) UnmarshalEasyJSON ¶
func (v *ScriptPosition) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*ScriptPosition) UnmarshalJSON ¶
func (v *ScriptPosition) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SearchInContentParams ¶
type SearchInContentParams struct { ScriptID runtime.ScriptID `json:"scriptId"` // Id of the script to search in. Query string `json:"query"` // String to search for. CaseSensitive bool `json:"caseSensitive,omitempty"` // If true, search is case sensitive. IsRegex bool `json:"isRegex,omitempty"` // If true, treats string parameter as regex. }
SearchInContentParams searches for given string in script content.
func SearchInContent ¶
func SearchInContent(scriptID runtime.ScriptID, query string) *SearchInContentParams
SearchInContent searches for given string in script content.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-searchInContent
parameters:
scriptID - Id of the script to search in. query - String to search for.
func (*SearchInContentParams) Do ¶
func (p *SearchInContentParams) Do(ctx context.Context) (result []*SearchMatch, err error)
Do executes Debugger.searchInContent against the provided context.
returns:
result - List of search matches.
func (SearchInContentParams) MarshalEasyJSON ¶
func (v SearchInContentParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SearchInContentParams) MarshalJSON ¶
func (v SearchInContentParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SearchInContentParams) UnmarshalEasyJSON ¶
func (v *SearchInContentParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SearchInContentParams) UnmarshalJSON ¶
func (v *SearchInContentParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (SearchInContentParams) WithCaseSensitive ¶
func (p SearchInContentParams) WithCaseSensitive(caseSensitive bool) *SearchInContentParams
WithCaseSensitive if true, search is case sensitive.
func (SearchInContentParams) WithIsRegex ¶
func (p SearchInContentParams) WithIsRegex(isRegex bool) *SearchInContentParams
WithIsRegex if true, treats string parameter as regex.
type SearchInContentReturns ¶
type SearchInContentReturns struct {
Result []*SearchMatch `json:"result,omitempty"` // List of search matches.
}
SearchInContentReturns return values.
func (SearchInContentReturns) MarshalEasyJSON ¶
func (v SearchInContentReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SearchInContentReturns) MarshalJSON ¶
func (v SearchInContentReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SearchInContentReturns) UnmarshalEasyJSON ¶
func (v *SearchInContentReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SearchInContentReturns) UnmarshalJSON ¶
func (v *SearchInContentReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SearchMatch ¶
type SearchMatch struct { LineNumber float64 `json:"lineNumber"` // Line number in resource content. LineContent string `json:"lineContent"` // Line with match content. }
SearchMatch search match for resource.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#type-SearchMatch
func (SearchMatch) MarshalEasyJSON ¶
func (v SearchMatch) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SearchMatch) MarshalJSON ¶
func (v SearchMatch) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SearchMatch) UnmarshalEasyJSON ¶
func (v *SearchMatch) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SearchMatch) UnmarshalJSON ¶
func (v *SearchMatch) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetAsyncCallStackDepthParams ¶
type SetAsyncCallStackDepthParams struct {
MaxDepth int64 `json:"maxDepth"` // Maximum depth of async call stacks. Setting to 0 will effectively disable collecting async call stacks (default).
}
SetAsyncCallStackDepthParams enables or disables async call stacks tracking.
func SetAsyncCallStackDepth ¶
func SetAsyncCallStackDepth(maxDepth int64) *SetAsyncCallStackDepthParams
SetAsyncCallStackDepth enables or disables async call stacks tracking.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setAsyncCallStackDepth
parameters:
maxDepth - Maximum depth of async call stacks. Setting to 0 will effectively disable collecting async call stacks (default).
func (*SetAsyncCallStackDepthParams) Do ¶
func (p *SetAsyncCallStackDepthParams) Do(ctx context.Context) (err error)
Do executes Debugger.setAsyncCallStackDepth against the provided context.
func (SetAsyncCallStackDepthParams) MarshalEasyJSON ¶
func (v SetAsyncCallStackDepthParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetAsyncCallStackDepthParams) MarshalJSON ¶
func (v SetAsyncCallStackDepthParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetAsyncCallStackDepthParams) UnmarshalEasyJSON ¶
func (v *SetAsyncCallStackDepthParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetAsyncCallStackDepthParams) UnmarshalJSON ¶
func (v *SetAsyncCallStackDepthParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetBlackboxPatternsParams ¶
type SetBlackboxPatternsParams struct {
Patterns []string `json:"patterns"` // Array of regexps that will be used to check script url for blackbox state.
}
SetBlackboxPatternsParams replace previous blackbox patterns with passed ones. Forces backend to skip stepping/pausing in scripts with url matching one of the patterns. VM will try to leave blackboxed script by performing 'step in' several times, finally resorting to 'step out' if unsuccessful.
func SetBlackboxPatterns ¶
func SetBlackboxPatterns(patterns []string) *SetBlackboxPatternsParams
SetBlackboxPatterns replace previous blackbox patterns with passed ones. Forces backend to skip stepping/pausing in scripts with url matching one of the patterns. VM will try to leave blackboxed script by performing 'step in' several times, finally resorting to 'step out' if unsuccessful.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setBlackboxPatterns
parameters:
patterns - Array of regexps that will be used to check script url for blackbox state.
func (*SetBlackboxPatternsParams) Do ¶
func (p *SetBlackboxPatternsParams) Do(ctx context.Context) (err error)
Do executes Debugger.setBlackboxPatterns against the provided context.
func (SetBlackboxPatternsParams) MarshalEasyJSON ¶
func (v SetBlackboxPatternsParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBlackboxPatternsParams) MarshalJSON ¶
func (v SetBlackboxPatternsParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBlackboxPatternsParams) UnmarshalEasyJSON ¶
func (v *SetBlackboxPatternsParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBlackboxPatternsParams) UnmarshalJSON ¶
func (v *SetBlackboxPatternsParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetBlackboxedRangesParams ¶
type SetBlackboxedRangesParams struct { ScriptID runtime.ScriptID `json:"scriptId"` // Id of the script. Positions []*ScriptPosition `json:"positions"` }
SetBlackboxedRangesParams makes backend skip steps in the script in blackboxed ranges. VM will try leave blacklisted scripts by performing 'step in' several times, finally resorting to 'step out' if unsuccessful. Positions array contains positions where blackbox state is changed. First interval isn't blackboxed. Array should be sorted.
func SetBlackboxedRanges ¶
func SetBlackboxedRanges(scriptID runtime.ScriptID, positions []*ScriptPosition) *SetBlackboxedRangesParams
SetBlackboxedRanges makes backend skip steps in the script in blackboxed ranges. VM will try leave blacklisted scripts by performing 'step in' several times, finally resorting to 'step out' if unsuccessful. Positions array contains positions where blackbox state is changed. First interval isn't blackboxed. Array should be sorted.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setBlackboxedRanges
parameters:
scriptID - Id of the script. positions
func (*SetBlackboxedRangesParams) Do ¶
func (p *SetBlackboxedRangesParams) Do(ctx context.Context) (err error)
Do executes Debugger.setBlackboxedRanges against the provided context.
func (SetBlackboxedRangesParams) MarshalEasyJSON ¶
func (v SetBlackboxedRangesParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBlackboxedRangesParams) MarshalJSON ¶
func (v SetBlackboxedRangesParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBlackboxedRangesParams) UnmarshalEasyJSON ¶
func (v *SetBlackboxedRangesParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBlackboxedRangesParams) UnmarshalJSON ¶
func (v *SetBlackboxedRangesParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetBreakpointByURLParams ¶
type SetBreakpointByURLParams struct { LineNumber int64 `json:"lineNumber"` // Line number to set breakpoint at. URL string `json:"url,omitempty"` // URL of the resources to set breakpoint on. URLRegex string `json:"urlRegex,omitempty"` // Regex pattern for the URLs of the resources to set breakpoints on. Either url or urlRegex must be specified. ScriptHash string `json:"scriptHash,omitempty"` // Script hash of the resources to set breakpoint on. ColumnNumber int64 `json:"columnNumber,omitempty"` // Offset in the line to set breakpoint at. Condition string `json:"condition,omitempty"` // Expression to use as a breakpoint condition. When specified, debugger will only stop on the breakpoint if this expression evaluates to true. }
SetBreakpointByURLParams sets JavaScript breakpoint at given location specified either by URL or URL regex. Once this command is issued, all existing parsed scripts will have breakpoints resolved and returned in locations property. Further matching script parsing will result in subsequent breakpointResolved events issued. This logical breakpoint will survive page reloads.
func SetBreakpointByURL ¶
func SetBreakpointByURL(lineNumber int64) *SetBreakpointByURLParams
SetBreakpointByURL sets JavaScript breakpoint at given location specified either by URL or URL regex. Once this command is issued, all existing parsed scripts will have breakpoints resolved and returned in locations property. Further matching script parsing will result in subsequent breakpointResolved events issued. This logical breakpoint will survive page reloads.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setBreakpointByUrl
parameters:
lineNumber - Line number to set breakpoint at.
func (*SetBreakpointByURLParams) Do ¶
func (p *SetBreakpointByURLParams) Do(ctx context.Context) (breakpointID BreakpointID, locations []*Location, err error)
Do executes Debugger.setBreakpointByUrl against the provided context.
returns:
breakpointID - Id of the created breakpoint for further reference. locations - List of the locations this breakpoint resolved into upon addition.
func (SetBreakpointByURLParams) MarshalEasyJSON ¶
func (v SetBreakpointByURLParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBreakpointByURLParams) MarshalJSON ¶
func (v SetBreakpointByURLParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBreakpointByURLParams) UnmarshalEasyJSON ¶
func (v *SetBreakpointByURLParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBreakpointByURLParams) UnmarshalJSON ¶
func (v *SetBreakpointByURLParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (SetBreakpointByURLParams) WithColumnNumber ¶
func (p SetBreakpointByURLParams) WithColumnNumber(columnNumber int64) *SetBreakpointByURLParams
WithColumnNumber offset in the line to set breakpoint at.
func (SetBreakpointByURLParams) WithCondition ¶
func (p SetBreakpointByURLParams) WithCondition(condition string) *SetBreakpointByURLParams
WithCondition expression to use as a breakpoint condition. When specified, debugger will only stop on the breakpoint if this expression evaluates to true.
func (SetBreakpointByURLParams) WithScriptHash ¶
func (p SetBreakpointByURLParams) WithScriptHash(scriptHash string) *SetBreakpointByURLParams
WithScriptHash script hash of the resources to set breakpoint on.
func (SetBreakpointByURLParams) WithURL ¶
func (p SetBreakpointByURLParams) WithURL(url string) *SetBreakpointByURLParams
WithURL URL of the resources to set breakpoint on.
func (SetBreakpointByURLParams) WithURLRegex ¶
func (p SetBreakpointByURLParams) WithURLRegex(urlRegex string) *SetBreakpointByURLParams
WithURLRegex regex pattern for the URLs of the resources to set breakpoints on. Either url or urlRegex must be specified.
type SetBreakpointByURLReturns ¶
type SetBreakpointByURLReturns struct { BreakpointID BreakpointID `json:"breakpointId,omitempty"` // Id of the created breakpoint for further reference. Locations []*Location `json:"locations,omitempty"` // List of the locations this breakpoint resolved into upon addition. }
SetBreakpointByURLReturns return values.
func (SetBreakpointByURLReturns) MarshalEasyJSON ¶
func (v SetBreakpointByURLReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBreakpointByURLReturns) MarshalJSON ¶
func (v SetBreakpointByURLReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBreakpointByURLReturns) UnmarshalEasyJSON ¶
func (v *SetBreakpointByURLReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBreakpointByURLReturns) UnmarshalJSON ¶
func (v *SetBreakpointByURLReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetBreakpointOnFunctionCallParams ¶
type SetBreakpointOnFunctionCallParams struct { ObjectID runtime.RemoteObjectID `json:"objectId"` // Function object id. Condition string `json:"condition,omitempty"` // Expression to use as a breakpoint condition. When specified, debugger will stop on the breakpoint if this expression evaluates to true. }
SetBreakpointOnFunctionCallParams sets JavaScript breakpoint before each call to the given function. If another function was created from the same source as a given one, calling it will also trigger the breakpoint.
func SetBreakpointOnFunctionCall ¶
func SetBreakpointOnFunctionCall(objectID runtime.RemoteObjectID) *SetBreakpointOnFunctionCallParams
SetBreakpointOnFunctionCall sets JavaScript breakpoint before each call to the given function. If another function was created from the same source as a given one, calling it will also trigger the breakpoint.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setBreakpointOnFunctionCall
parameters:
objectID - Function object id.
func (*SetBreakpointOnFunctionCallParams) Do ¶
func (p *SetBreakpointOnFunctionCallParams) Do(ctx context.Context) (breakpointID BreakpointID, err error)
Do executes Debugger.setBreakpointOnFunctionCall against the provided context.
returns:
breakpointID - Id of the created breakpoint for further reference.
func (SetBreakpointOnFunctionCallParams) MarshalEasyJSON ¶
func (v SetBreakpointOnFunctionCallParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBreakpointOnFunctionCallParams) MarshalJSON ¶
func (v SetBreakpointOnFunctionCallParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBreakpointOnFunctionCallParams) UnmarshalEasyJSON ¶
func (v *SetBreakpointOnFunctionCallParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBreakpointOnFunctionCallParams) UnmarshalJSON ¶
func (v *SetBreakpointOnFunctionCallParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (SetBreakpointOnFunctionCallParams) WithCondition ¶
func (p SetBreakpointOnFunctionCallParams) WithCondition(condition string) *SetBreakpointOnFunctionCallParams
WithCondition expression to use as a breakpoint condition. When specified, debugger will stop on the breakpoint if this expression evaluates to true.
type SetBreakpointOnFunctionCallReturns ¶
type SetBreakpointOnFunctionCallReturns struct {
BreakpointID BreakpointID `json:"breakpointId,omitempty"` // Id of the created breakpoint for further reference.
}
SetBreakpointOnFunctionCallReturns return values.
func (SetBreakpointOnFunctionCallReturns) MarshalEasyJSON ¶
func (v SetBreakpointOnFunctionCallReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBreakpointOnFunctionCallReturns) MarshalJSON ¶
func (v SetBreakpointOnFunctionCallReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBreakpointOnFunctionCallReturns) UnmarshalEasyJSON ¶
func (v *SetBreakpointOnFunctionCallReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBreakpointOnFunctionCallReturns) UnmarshalJSON ¶
func (v *SetBreakpointOnFunctionCallReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetBreakpointParams ¶
type SetBreakpointParams struct { Location *Location `json:"location"` // Location to set breakpoint in. Condition string `json:"condition,omitempty"` // Expression to use as a breakpoint condition. When specified, debugger will only stop on the breakpoint if this expression evaluates to true. }
SetBreakpointParams sets JavaScript breakpoint at a given location.
func SetBreakpoint ¶
func SetBreakpoint(location *Location) *SetBreakpointParams
SetBreakpoint sets JavaScript breakpoint at a given location.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setBreakpoint
parameters:
location - Location to set breakpoint in.
func (*SetBreakpointParams) Do ¶
func (p *SetBreakpointParams) Do(ctx context.Context) (breakpointID BreakpointID, actualLocation *Location, err error)
Do executes Debugger.setBreakpoint against the provided context.
returns:
breakpointID - Id of the created breakpoint for further reference. actualLocation - Location this breakpoint resolved into.
func (SetBreakpointParams) MarshalEasyJSON ¶
func (v SetBreakpointParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBreakpointParams) MarshalJSON ¶
func (v SetBreakpointParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBreakpointParams) UnmarshalEasyJSON ¶
func (v *SetBreakpointParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBreakpointParams) UnmarshalJSON ¶
func (v *SetBreakpointParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (SetBreakpointParams) WithCondition ¶
func (p SetBreakpointParams) WithCondition(condition string) *SetBreakpointParams
WithCondition expression to use as a breakpoint condition. When specified, debugger will only stop on the breakpoint if this expression evaluates to true.
type SetBreakpointReturns ¶
type SetBreakpointReturns struct { BreakpointID BreakpointID `json:"breakpointId,omitempty"` // Id of the created breakpoint for further reference. ActualLocation *Location `json:"actualLocation,omitempty"` // Location this breakpoint resolved into. }
SetBreakpointReturns return values.
func (SetBreakpointReturns) MarshalEasyJSON ¶
func (v SetBreakpointReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBreakpointReturns) MarshalJSON ¶
func (v SetBreakpointReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBreakpointReturns) UnmarshalEasyJSON ¶
func (v *SetBreakpointReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBreakpointReturns) UnmarshalJSON ¶
func (v *SetBreakpointReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetBreakpointsActiveParams ¶
type SetBreakpointsActiveParams struct {
Active bool `json:"active"` // New value for breakpoints active state.
}
SetBreakpointsActiveParams activates / deactivates all breakpoints on the page.
func SetBreakpointsActive ¶
func SetBreakpointsActive(active bool) *SetBreakpointsActiveParams
SetBreakpointsActive activates / deactivates all breakpoints on the page.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setBreakpointsActive
parameters:
active - New value for breakpoints active state.
func (*SetBreakpointsActiveParams) Do ¶
func (p *SetBreakpointsActiveParams) Do(ctx context.Context) (err error)
Do executes Debugger.setBreakpointsActive against the provided context.
func (SetBreakpointsActiveParams) MarshalEasyJSON ¶
func (v SetBreakpointsActiveParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetBreakpointsActiveParams) MarshalJSON ¶
func (v SetBreakpointsActiveParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetBreakpointsActiveParams) UnmarshalEasyJSON ¶
func (v *SetBreakpointsActiveParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetBreakpointsActiveParams) UnmarshalJSON ¶
func (v *SetBreakpointsActiveParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetInstrumentationBreakpointInstrumentation ¶
type SetInstrumentationBreakpointInstrumentation string
SetInstrumentationBreakpointInstrumentation instrumentation name.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setInstrumentationBreakpoint
const ( SetInstrumentationBreakpointInstrumentationBeforeScriptExecution SetInstrumentationBreakpointInstrumentation = "beforeScriptExecution" SetInstrumentationBreakpointInstrumentationBeforeScriptWithSourceMapExecution SetInstrumentationBreakpointInstrumentation = "beforeScriptWithSourceMapExecution" )
SetInstrumentationBreakpointInstrumentation values.
func (SetInstrumentationBreakpointInstrumentation) MarshalEasyJSON ¶
func (t SetInstrumentationBreakpointInstrumentation) MarshalEasyJSON(out *jwriter.Writer)
MarshalEasyJSON satisfies easyjson.Marshaler.
func (SetInstrumentationBreakpointInstrumentation) MarshalJSON ¶
func (t SetInstrumentationBreakpointInstrumentation) MarshalJSON() ([]byte, error)
MarshalJSON satisfies json.Marshaler.
func (SetInstrumentationBreakpointInstrumentation) String ¶
func (t SetInstrumentationBreakpointInstrumentation) String() string
String returns the SetInstrumentationBreakpointInstrumentation as string value.
func (*SetInstrumentationBreakpointInstrumentation) UnmarshalEasyJSON ¶
func (t *SetInstrumentationBreakpointInstrumentation) UnmarshalEasyJSON(in *jlexer.Lexer)
UnmarshalEasyJSON satisfies easyjson.Unmarshaler.
func (*SetInstrumentationBreakpointInstrumentation) UnmarshalJSON ¶
func (t *SetInstrumentationBreakpointInstrumentation) UnmarshalJSON(buf []byte) error
UnmarshalJSON satisfies json.Unmarshaler.
type SetInstrumentationBreakpointParams ¶
type SetInstrumentationBreakpointParams struct {
Instrumentation SetInstrumentationBreakpointInstrumentation `json:"instrumentation"` // Instrumentation name.
}
SetInstrumentationBreakpointParams sets instrumentation breakpoint.
func SetInstrumentationBreakpoint ¶
func SetInstrumentationBreakpoint(instrumentation SetInstrumentationBreakpointInstrumentation) *SetInstrumentationBreakpointParams
SetInstrumentationBreakpoint sets instrumentation breakpoint.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setInstrumentationBreakpoint
parameters:
instrumentation - Instrumentation name.
func (*SetInstrumentationBreakpointParams) Do ¶
func (p *SetInstrumentationBreakpointParams) Do(ctx context.Context) (breakpointID BreakpointID, err error)
Do executes Debugger.setInstrumentationBreakpoint against the provided context.
returns:
breakpointID - Id of the created breakpoint for further reference.
func (SetInstrumentationBreakpointParams) MarshalEasyJSON ¶
func (v SetInstrumentationBreakpointParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetInstrumentationBreakpointParams) MarshalJSON ¶
func (v SetInstrumentationBreakpointParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetInstrumentationBreakpointParams) UnmarshalEasyJSON ¶
func (v *SetInstrumentationBreakpointParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetInstrumentationBreakpointParams) UnmarshalJSON ¶
func (v *SetInstrumentationBreakpointParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetInstrumentationBreakpointReturns ¶
type SetInstrumentationBreakpointReturns struct {
BreakpointID BreakpointID `json:"breakpointId,omitempty"` // Id of the created breakpoint for further reference.
}
SetInstrumentationBreakpointReturns return values.
func (SetInstrumentationBreakpointReturns) MarshalEasyJSON ¶
func (v SetInstrumentationBreakpointReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetInstrumentationBreakpointReturns) MarshalJSON ¶
func (v SetInstrumentationBreakpointReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetInstrumentationBreakpointReturns) UnmarshalEasyJSON ¶
func (v *SetInstrumentationBreakpointReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetInstrumentationBreakpointReturns) UnmarshalJSON ¶
func (v *SetInstrumentationBreakpointReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetPauseOnExceptionsParams ¶
type SetPauseOnExceptionsParams struct {
State ExceptionsState `json:"state"` // Pause on exceptions mode.
}
SetPauseOnExceptionsParams defines pause on exceptions state. Can be set to stop on all exceptions, uncaught exceptions or no exceptions. Initial pause on exceptions state is none.
func SetPauseOnExceptions ¶
func SetPauseOnExceptions(state ExceptionsState) *SetPauseOnExceptionsParams
SetPauseOnExceptions defines pause on exceptions state. Can be set to stop on all exceptions, uncaught exceptions or no exceptions. Initial pause on exceptions state is none.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setPauseOnExceptions
parameters:
state - Pause on exceptions mode.
func (*SetPauseOnExceptionsParams) Do ¶
func (p *SetPauseOnExceptionsParams) Do(ctx context.Context) (err error)
Do executes Debugger.setPauseOnExceptions against the provided context.
func (SetPauseOnExceptionsParams) MarshalEasyJSON ¶
func (v SetPauseOnExceptionsParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetPauseOnExceptionsParams) MarshalJSON ¶
func (v SetPauseOnExceptionsParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetPauseOnExceptionsParams) UnmarshalEasyJSON ¶
func (v *SetPauseOnExceptionsParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetPauseOnExceptionsParams) UnmarshalJSON ¶
func (v *SetPauseOnExceptionsParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetReturnValueParams ¶
type SetReturnValueParams struct {
NewValue *runtime.CallArgument `json:"newValue"` // New return value.
}
SetReturnValueParams changes return value in top frame. Available only at return break position.
func SetReturnValue ¶
func SetReturnValue(newValue *runtime.CallArgument) *SetReturnValueParams
SetReturnValue changes return value in top frame. Available only at return break position.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setReturnValue
parameters:
newValue - New return value.
func (*SetReturnValueParams) Do ¶
func (p *SetReturnValueParams) Do(ctx context.Context) (err error)
Do executes Debugger.setReturnValue against the provided context.
func (SetReturnValueParams) MarshalEasyJSON ¶
func (v SetReturnValueParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetReturnValueParams) MarshalJSON ¶
func (v SetReturnValueParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetReturnValueParams) UnmarshalEasyJSON ¶
func (v *SetReturnValueParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetReturnValueParams) UnmarshalJSON ¶
func (v *SetReturnValueParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetScriptSourceParams ¶
type SetScriptSourceParams struct { ScriptID runtime.ScriptID `json:"scriptId"` // Id of the script to edit. ScriptSource string `json:"scriptSource"` // New content of the script. DryRun bool `json:"dryRun,omitempty"` // If true the change will not actually be applied. Dry run may be used to get result description without actually modifying the code. }
SetScriptSourceParams edits JavaScript source live.
func SetScriptSource ¶
func SetScriptSource(scriptID runtime.ScriptID, scriptSource string) *SetScriptSourceParams
SetScriptSource edits JavaScript source live.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setScriptSource
parameters:
scriptID - Id of the script to edit. scriptSource - New content of the script.
func (*SetScriptSourceParams) Do ¶
func (p *SetScriptSourceParams) Do(ctx context.Context) (callFrames []*CallFrame, stackChanged bool, asyncStackTrace *runtime.StackTrace, asyncStackTraceID *runtime.StackTraceID, exceptionDetails *runtime.ExceptionDetails, err error)
Do executes Debugger.setScriptSource against the provided context.
returns:
callFrames - New stack trace in case editing has happened while VM was stopped. stackChanged - Whether current call stack was modified after applying the changes. asyncStackTrace - Async stack trace, if any. asyncStackTraceID - Async stack trace, if any. exceptionDetails - Exception details if any.
func (SetScriptSourceParams) MarshalEasyJSON ¶
func (v SetScriptSourceParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetScriptSourceParams) MarshalJSON ¶
func (v SetScriptSourceParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetScriptSourceParams) UnmarshalEasyJSON ¶
func (v *SetScriptSourceParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetScriptSourceParams) UnmarshalJSON ¶
func (v *SetScriptSourceParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (SetScriptSourceParams) WithDryRun ¶
func (p SetScriptSourceParams) WithDryRun(dryRun bool) *SetScriptSourceParams
WithDryRun if true the change will not actually be applied. Dry run may be used to get result description without actually modifying the code.
type SetScriptSourceReturns ¶
type SetScriptSourceReturns struct { CallFrames []*CallFrame `json:"callFrames,omitempty"` // New stack trace in case editing has happened while VM was stopped. StackChanged bool `json:"stackChanged,omitempty"` // Whether current call stack was modified after applying the changes. AsyncStackTrace *runtime.StackTrace `json:"asyncStackTrace,omitempty"` // Async stack trace, if any. AsyncStackTraceID *runtime.StackTraceID `json:"asyncStackTraceId,omitempty"` // Async stack trace, if any. ExceptionDetails *runtime.ExceptionDetails `json:"exceptionDetails,omitempty"` // Exception details if any. }
SetScriptSourceReturns return values.
func (SetScriptSourceReturns) MarshalEasyJSON ¶
func (v SetScriptSourceReturns) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetScriptSourceReturns) MarshalJSON ¶
func (v SetScriptSourceReturns) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetScriptSourceReturns) UnmarshalEasyJSON ¶
func (v *SetScriptSourceReturns) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetScriptSourceReturns) UnmarshalJSON ¶
func (v *SetScriptSourceReturns) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetSkipAllPausesParams ¶
type SetSkipAllPausesParams struct {
Skip bool `json:"skip"` // New value for skip pauses state.
}
SetSkipAllPausesParams makes page not interrupt on any pauses (breakpoint, exception, dom exception etc).
func SetSkipAllPauses ¶
func SetSkipAllPauses(skip bool) *SetSkipAllPausesParams
SetSkipAllPauses makes page not interrupt on any pauses (breakpoint, exception, dom exception etc).
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setSkipAllPauses
parameters:
skip - New value for skip pauses state.
func (*SetSkipAllPausesParams) Do ¶
func (p *SetSkipAllPausesParams) Do(ctx context.Context) (err error)
Do executes Debugger.setSkipAllPauses against the provided context.
func (SetSkipAllPausesParams) MarshalEasyJSON ¶
func (v SetSkipAllPausesParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetSkipAllPausesParams) MarshalJSON ¶
func (v SetSkipAllPausesParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetSkipAllPausesParams) UnmarshalEasyJSON ¶
func (v *SetSkipAllPausesParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetSkipAllPausesParams) UnmarshalJSON ¶
func (v *SetSkipAllPausesParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type SetVariableValueParams ¶
type SetVariableValueParams struct { ScopeNumber int64 `json:"scopeNumber"` // 0-based number of scope as was listed in scope chain. Only 'local', 'closure' and 'catch' scope types are allowed. Other scopes could be manipulated manually. VariableName string `json:"variableName"` // Variable name. NewValue *runtime.CallArgument `json:"newValue"` // New variable value. CallFrameID CallFrameID `json:"callFrameId"` // Id of callframe that holds variable. }
SetVariableValueParams changes value of variable in a callframe. Object-based scopes are not supported and must be mutated manually.
func SetVariableValue ¶
func SetVariableValue(scopeNumber int64, variableName string, newValue *runtime.CallArgument, callFrameID CallFrameID) *SetVariableValueParams
SetVariableValue changes value of variable in a callframe. Object-based scopes are not supported and must be mutated manually.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-setVariableValue
parameters:
scopeNumber - 0-based number of scope as was listed in scope chain. Only 'local', 'closure' and 'catch' scope types are allowed. Other scopes could be manipulated manually. variableName - Variable name. newValue - New variable value. callFrameID - Id of callframe that holds variable.
func (*SetVariableValueParams) Do ¶
func (p *SetVariableValueParams) Do(ctx context.Context) (err error)
Do executes Debugger.setVariableValue against the provided context.
func (SetVariableValueParams) MarshalEasyJSON ¶
func (v SetVariableValueParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (SetVariableValueParams) MarshalJSON ¶
func (v SetVariableValueParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*SetVariableValueParams) UnmarshalEasyJSON ¶
func (v *SetVariableValueParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*SetVariableValueParams) UnmarshalJSON ¶
func (v *SetVariableValueParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type StepIntoParams ¶
type StepIntoParams struct {
BreakOnAsyncCall bool `json:"breakOnAsyncCall,omitempty"` // Debugger will pause on the execution of the first async task which was scheduled before next pause.
}
StepIntoParams steps into the function call.
func StepInto ¶
func StepInto() *StepIntoParams
StepInto steps into the function call.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-stepInto
parameters:
func (*StepIntoParams) Do ¶
func (p *StepIntoParams) Do(ctx context.Context) (err error)
Do executes Debugger.stepInto against the provided context.
func (StepIntoParams) MarshalEasyJSON ¶
func (v StepIntoParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (StepIntoParams) MarshalJSON ¶
func (v StepIntoParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*StepIntoParams) UnmarshalEasyJSON ¶
func (v *StepIntoParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*StepIntoParams) UnmarshalJSON ¶
func (v *StepIntoParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
func (StepIntoParams) WithBreakOnAsyncCall ¶
func (p StepIntoParams) WithBreakOnAsyncCall(breakOnAsyncCall bool) *StepIntoParams
WithBreakOnAsyncCall debugger will pause on the execution of the first async task which was scheduled before next pause.
type StepOutParams ¶
type StepOutParams struct{}
StepOutParams steps out of the function call.
func StepOut ¶
func StepOut() *StepOutParams
StepOut steps out of the function call.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-stepOut
func (*StepOutParams) Do ¶
func (p *StepOutParams) Do(ctx context.Context) (err error)
Do executes Debugger.stepOut against the provided context.
func (StepOutParams) MarshalEasyJSON ¶
func (v StepOutParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (StepOutParams) MarshalJSON ¶
func (v StepOutParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*StepOutParams) UnmarshalEasyJSON ¶
func (v *StepOutParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*StepOutParams) UnmarshalJSON ¶
func (v *StepOutParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface
type StepOverParams ¶
type StepOverParams struct{}
StepOverParams steps over the statement.
func StepOver ¶
func StepOver() *StepOverParams
StepOver steps over the statement.
See: https://chromedevtools.github.io/devtools-protocol/tot/Debugger#method-stepOver
func (*StepOverParams) Do ¶
func (p *StepOverParams) Do(ctx context.Context) (err error)
Do executes Debugger.stepOver against the provided context.
func (StepOverParams) MarshalEasyJSON ¶
func (v StepOverParams) MarshalEasyJSON(w *jwriter.Writer)
MarshalEasyJSON supports easyjson.Marshaler interface
func (StepOverParams) MarshalJSON ¶
func (v StepOverParams) MarshalJSON() ([]byte, error)
MarshalJSON supports json.Marshaler interface
func (*StepOverParams) UnmarshalEasyJSON ¶
func (v *StepOverParams) UnmarshalEasyJSON(l *jlexer.Lexer)
UnmarshalEasyJSON supports easyjson.Unmarshaler interface
func (*StepOverParams) UnmarshalJSON ¶
func (v *StepOverParams) UnmarshalJSON(data []byte) error
UnmarshalJSON supports json.Unmarshaler interface