zxdb/console/commands)//src/developer/debug/zxdb/console/commands implements individual console verb commands for zxdb. Each verb_*.h header exposes a Get*VerbRecord() factory returning a VerbRecord with command aliases, help text, switches, and execution callbacks.
Public headers group verb records and helpers into these functional areas:
verb_attach.h, verb_connect.h, verb_detach.h, verb_new.h, verb_rm.h, verb_run.h, verb_run_test.h, verb_status.h, verb_help.h): zxdb::kZirconMaxNameLength, zxdb::GetAttachVerbRecord(), zxdb::GetConnectVerbRecord(), zxdb::GetDetachVerbRecord(), and zxdb::GetNewVerbRecord(). Also exposes zxdb::GetRmVerbRecord(), zxdb::GetRunVerbRecord(), zxdb::GetRunTestVerbRecord(), zxdb::GetHelpVerbRecord(), and zxdb::GetStatusVerbRecord(). Also exposes zxdb::GetConnectionStatus, zxdb::GetFilterStatus, zxdb::GetJobStatus, zxdb::GetProcessStatus, and zxdb::GetLimboStatus.verb_continue.h, verb_pause.h, verb_step.h, verb_stepi.h, verb_next.h, verb_nexti.h, verb_finish.h, verb_until.h): zxdb::GetContinueVerbRecord(), zxdb::GetPauseVerbRecord(), zxdb::GetStepVerbRecord(), zxdb::GetStepiVerbRecord(), zxdb::GetNextVerbRecord(), zxdb::GetNextiVerbRecord(), zxdb::GetFinishVerbRecord(), and zxdb::GetUntilVerbRecord().verb_break.h, verb_watch.h): zxdb::GetBreakVerbRecord() and zxdb::GetWatchVerbRecord().verb_backtrace.h, verb_async_backtrace.h, verb_down.h, verb_stack_data.h, verb_stack_usage.h): zxdb::GetBacktraceVerbRecord(), zxdb::GetAsyncBacktraceVerbRecord(), zxdb::GetDownVerbRecord(), zxdb::OutputFrameInfoForChange, zxdb::GetStackDataVerbRecord(), and zxdb::GetStackUsageVerbRecord(). Also exposes zxdb::OneStackUsage, zxdb::ThreadStackUsage, and zxdb::GetThreadStackUsage.verb_disassemble.h, verb_mem_analyze.h, verb_mem_read.h, verb_regs.h): zxdb::GetDisassembleVerbRecord(), zxdb::GetMemAnalyzeVerbRecord(), zxdb::kMemAnalyzeSizeSwitch, zxdb::kMemAnalyzeNumSwitch, zxdb::ReadAnalyzeNumAndSizeSwitches(const Command&, std::optional<uint32_t>*), zxdb::kDefaultAnalyzeByteSize, zxdb::GetMemReadVerbRecord(), and zxdb::GetRegsVerbRecord().verb_locals.h, verb_print.h, verb_libs.h, verb_sym_info.h, verb_sym_near.h, verb_sym_stat.h): zxdb::GetLocalsVerbRecord(), zxdb::GetPrintVerbRecord(), zxdb::GetLibsVerbRecord(), zxdb::GetSymInfoVerbRecord(), zxdb::GetSymNearVerbRecord(), and zxdb::GetSymStatVerbRecord().Verb implementations must preserve these invariants:
kZirconMaxNameLength is 31 (matching ZX_MAX_NAME_LEN - 1).Noun combinations via Command::ValidateNouns before acting on targets, threads, frames, or breakpoints.step) require a stopped thread with a valid stack frame via AssertStoppedThreadWithFrameCommand.run verb supports only Linux targets (debug::Platform::kLinux) and returns an error on Fuchsia targets.System::ProcessFromKoid and rejects filter switches (--job, --exact). Attaching via filters forbids the process noun.Executing console verbs produces these session and console side effects:
ThreadController instances.CommandContext::Output and CommandContext::ReportError.ConsoleContext selections (such as selecting newly created breakpoints or active stack frames).Run these commands to build and test zxdb/console/commands:
fx build //src/developer/debug/zxdb/consolefx test zxdb_tests