Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BreakpointManipulation ¶
type BreakpointManipulation interface {
Breakpoints() map[uint64]*proc.Breakpoint
SetBreakpoint(addr uint64, kind proc.BreakpointKind, cond ast.Expr) (*proc.Breakpoint, error)
ClearBreakpoint(addr uint64) (*proc.Breakpoint, error)
ClearInternalBreakpoints() error
}
BreakpointManipulation is an interface for managing breakpoints.
type GoroutineInfo ¶
type GoroutineInfo interface {
GoroutinesInfo() ([]*proc.G, error)
SelectedGoroutine() *proc.G
FindGoroutine(int) (*proc.G, error)
}
GoroutineInfo is an interface for getting information on running goroutines.
type Info ¶
type Info interface {
Pid() int
Exited() bool
Running() bool
BinInfo() *proc.BinaryInfo
ThreadInfo
GoroutineInfo
FindFileLocation(fileName string, lineNumber int) (uint64, error)
FirstPCAfterPrologue(fn *gosym.Func, sameline bool) (uint64, error)
FindFunctionLocation(funcName string, firstLine bool, lineOffset int) (uint64, error)
}
Info is an interface that provides general information on the target.
type Interface ¶
type Interface interface {
Info
ProcessManipulation
BreakpointManipulation
VariableEval
}
Target represents the target of the debugger. This target could be a system process, core file, etc.
type ProcessManipulation ¶
type ProcessManipulation interface {
Continue() error
Next() error
Step() error
StepOut() error
StepInstruction() error
SwitchThread(int) error
SwitchGoroutine(int) error
RequestManualStop() error
Halt() error
Kill() error
Detach(bool) error
}
ProcessManipulation is an interface for changing the execution state of a process.
type ThreadInfo ¶
ThreadInfo is an interface for getting information on active threads in the process.
Click to show internal directories.
Click to hide internal directories.