The Pedigree Project 0.1
Public Member Functions | List of all members
DebuggerCommand Class Referenceabstract

#include <DebuggerCommand.h>

+ Inheritance diagram for DebuggerCommand:
+ Collaboration diagram for DebuggerCommand:

Public Member Functions

virtual void autocomplete (const HugeStaticString &input, HugeStaticString &output)=0
 
virtual bool execute (const HugeStaticString &input, HugeStaticString &output, InterruptState &state, DebuggerIO *screen)=0
 
virtual const NormalStaticString getString ()=0
 

Detailed Description

Abstract class defining the interface for a DebuggerCommand. Class Debugger has a set of these DebuggerCommands, and calls the getString and autocomplete functions to augment the command line interface with visual prompts.

Definition at line 37 of file DebuggerCommand.h.

Member Function Documentation

◆ autocomplete()

virtual void DebuggerCommand::autocomplete ( const HugeStaticString &  input,
HugeStaticString &  output 
)
pure virtual

Return an autocomplete string, given an input string. The string put into *output must not exceed len in length.

Implemented in AllocationCommand, Backtracer, BreakpointCommand, CpuInfoCommand, DevicesCommand, DisassembleCommand, DumpCommand, HelpCommand, IoCommand, IrqsCommand, LocksCommand, LogViewer, LookupCommand, MappingCommand, MemoryInspector, ModulesCommand, PanicCommand, QuitCommand, SlamCommand, StepCommand, SyscallTracerCommand, ThreadsCommand, and TraceCommand.

Referenced by Debugger::start().

+ Here is the caller graph for this function:

◆ execute()

virtual bool DebuggerCommand::execute ( const HugeStaticString &  input,
HugeStaticString &  output,
InterruptState &  state,
DebuggerIO *  screen 
)
pure virtual

Execute the command with the given screen. The command can take over the screen while executing, but must return it to CLI mode (via enableCLI) before returning.

Returns
True if the debugger should continue accepting commands, false if it should return control to the kernel.

Implemented in SyscallTracerCommand, AllocationCommand, Backtracer, BreakpointCommand, CpuInfoCommand, DevicesCommand, DisassembleCommand, DumpCommand, HelpCommand, IoCommand, IrqsCommand, LocksCommand, LogViewer, LookupCommand, MappingCommand, MemoryInspector, ModulesCommand, QuitCommand, SlamCommand, StepCommand, ThreadsCommand, TraceCommand, and PanicCommand.

Referenced by Debugger::start().

+ Here is the caller graph for this function:

◆ getString()

virtual const NormalStaticString DebuggerCommand::getString ( )
pure virtual

The documentation for this class was generated from the following files: