yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
yaze::cli::resources::CommandHandler Class Referenceabstract

Base class for CLI command handlers. More...

#include <command_handler.h>

Inherited by yaze::cli::DungeonDoctorCommandHandler, yaze::cli::GraphicsDoctorCommandHandler, yaze::cli::HexAnnotateCommandHandler, yaze::cli::HexCompareCommandHandler, yaze::cli::HexDumpCommandHandler, yaze::cli::MessageDoctorCommandHandler, yaze::cli::OverworldDoctorCommandHandler, yaze::cli::OverworldValidateCommandHandler, yaze::cli::RomCompareCommandHandler, yaze::cli::RomDoctorCommandHandler, yaze::cli::SpriteDoctorCommandHandler, yaze::cli::TestListCommandHandler, yaze::cli::TestRunCommandHandler, yaze::cli::TestStatusCommandHandler, yaze::cli::agent::MetaToolsDescribeHandler, yaze::cli::agent::MetaToolsListHandler, yaze::cli::agent::MetaToolsSearchHandler, yaze::cli::agent::TUICommandHandler, yaze::cli::agent::tools::BuildCompileCommandHandler, yaze::cli::agent::tools::BuildConfigureCommandHandler, yaze::cli::agent::tools::BuildStatusCommandHandler, yaze::cli::agent::tools::BuildTestCommandHandler, yaze::cli::agent::tools::CodeGenToolBase, yaze::cli::agent::tools::FileSystemToolBase, yaze::cli::agent::tools::MemoryInspectorBase, yaze::cli::agent::tools::ProjectGraphTool, yaze::cli::agent::tools::ProjectToolBase, yaze::cli::agent::tools::RomChangesTool, yaze::cli::agent::tools::RomDiffTool, yaze::cli::agent::tools::ValidationToolBase, yaze::cli::agent::tools::VisualAnalysisBase, yaze::cli::handlers::DialogueListCommandHandler, yaze::cli::handlers::DialogueReadCommandHandler, yaze::cli::handlers::DialogueSearchCommandHandler, yaze::cli::handlers::DungeonDescribeRoomCommandHandler, yaze::cli::handlers::DungeonExportRoomCommandHandler, yaze::cli::handlers::DungeonGetRoomTilesCommandHandler, yaze::cli::handlers::DungeonListObjectsCommandHandler, yaze::cli::handlers::DungeonListSpritesCommandHandler, yaze::cli::handlers::DungeonSetRoomPropertyCommandHandler, yaze::cli::handlers::EmulatorClearBreakpointCommandHandler, yaze::cli::handlers::EmulatorGetMetricsCommandHandler, yaze::cli::handlers::EmulatorGetRegistersCommandHandler, yaze::cli::handlers::EmulatorGetStateCommandHandler, yaze::cli::handlers::EmulatorHoldButtonsCommandHandler, yaze::cli::handlers::EmulatorListBreakpointsCommandHandler, yaze::cli::handlers::EmulatorPauseCommandHandler, yaze::cli::handlers::EmulatorPressButtonsCommandHandler, yaze::cli::handlers::EmulatorReadMemoryCommandHandler, yaze::cli::handlers::EmulatorReleaseButtonsCommandHandler, yaze::cli::handlers::EmulatorResetCommandHandler, yaze::cli::handlers::EmulatorRunCommandHandler, yaze::cli::handlers::EmulatorSetBreakpointCommandHandler, yaze::cli::handlers::EmulatorStepCommandHandler, yaze::cli::handlers::EmulatorWriteMemoryCommandHandler, yaze::cli::handlers::GuiClickCommandHandler, yaze::cli::handlers::GuiDiscoverToolCommandHandler, yaze::cli::handlers::GuiPlaceTileCommandHandler, yaze::cli::handlers::GuiScreenshotCommandHandler, yaze::cli::handlers::HexReadCommandHandler, yaze::cli::handlers::HexSearchCommandHandler, yaze::cli::handlers::HexWriteCommandHandler, yaze::cli::handlers::MessageListCommandHandler, yaze::cli::handlers::MessageReadCommandHandler, yaze::cli::handlers::MessageSearchCommandHandler, yaze::cli::handlers::MusicInfoCommandHandler, yaze::cli::handlers::MusicListCommandHandler, yaze::cli::handlers::MusicTracksCommandHandler, yaze::cli::handlers::OverworldDescribeMapCommandHandler, yaze::cli::handlers::OverworldFindTileCommandHandler, yaze::cli::handlers::OverworldGetEntranceCommandHandler, yaze::cli::handlers::OverworldListSpritesCommandHandler, yaze::cli::handlers::OverworldListWarpsCommandHandler, yaze::cli::handlers::OverworldTileStatsCommandHandler, yaze::cli::handlers::PaletteAnalyzeCommandHandler, yaze::cli::handlers::PaletteGetColorsCommandHandler, yaze::cli::handlers::PaletteSetColorCommandHandler, yaze::cli::handlers::ProjectBuildCommandHandler, yaze::cli::handlers::ProjectInitCommandHandler, yaze::cli::handlers::ResourceListCommandHandler, yaze::cli::handlers::ResourceSearchCommandHandler, yaze::cli::handlers::RomDiffCommandHandler, yaze::cli::handlers::RomGenerateGoldenCommandHandler, yaze::cli::handlers::RomInfoCommandHandler, yaze::cli::handlers::RomValidateCommandHandler, yaze::cli::handlers::SimpleChatCommandHandler, yaze::cli::handlers::SpriteListCommandHandler, yaze::cli::handlers::SpritePaletteCommandHandler, yaze::cli::handlers::SpritePropertiesCommandHandler, yaze::cli::handlers::ToolsExtractGoldenCommandHandler, yaze::cli::handlers::ToolsExtractValuesCommandHandler, yaze::cli::handlers::ToolsHarnessStateCommandHandler, yaze::cli::handlers::ToolsListCommandHandler, and yaze::cli::handlers::ToolsPatchV3CommandHandler.

Collaboration diagram for yaze::cli::resources::CommandHandler:

Classes

struct  Descriptor
 
struct  DescriptorEntry
 

Public Member Functions

virtual ~CommandHandler ()=default
 
absl::Status Run (const std::vector< std::string > &args, Rom *rom_context, std::string *captured_output=nullptr)
 Execute the command.
 
virtual std::string GetName () const =0
 Get the command name.
 
virtual Descriptor Describe () const
 Provide metadata for TUI/help summaries.
 
virtual std::string GetUsage () const =0
 Get the command usage string.
 
virtual bool RequiresRom () const
 Check if the command requires a loaded ROM.
 
virtual bool RequiresLabels () const
 Check if the command requires ROM labels.
 
virtual void SetProjectContext (project::YazeProject *project)
 Set the YazeProject context. Default implementation does nothing, override if tool needs project info.
 
virtual void SetAsarWrapper (core::AsarWrapper *asar_wrapper)
 Set the AsarWrapper context. Default implementation does nothing, override if tool needs Asar access.
 
virtual void SetRomContext (Rom *rom)
 Set the ROM context for tools that need ROM access. Default implementation stores the ROM pointer for subclass use.
 

Protected Member Functions

virtual absl::Status ValidateArgs (const ArgumentParser &parser)=0
 Validate command arguments.
 
virtual absl::Status Execute (Rom *rom, const ArgumentParser &parser, OutputFormatter &formatter)=0
 Execute the command business logic.
 
virtual std::string GetDefaultFormat () const
 Get the default output format ("json" or "text")
 
virtual std::string GetOutputTitle () const
 Get the output title for formatting.
 

Protected Attributes

Romrom_ = nullptr
 
project::YazeProjectproject_ = nullptr
 
core::AsarWrapperasar_wrapper_ = nullptr
 

Detailed Description

Base class for CLI command handlers.

Provides a consistent structure for implementing CLI commands with:

  • Automatic argument parsing
  • ROM context management
  • Output formatting
  • Error handling

Example usage:

class MyCommandHandler : public CommandHandler {
protected:
absl::Status ValidateArgs(const ArgumentParser& parser) override {
return parser.RequireArgs({"required_arg"});
}
absl::Status Execute(Rom* rom, const ArgumentParser& parser,
OutputFormatter& formatter) override {
auto value = parser.GetString("required_arg").value();
// ... business logic ...
formatter.AddField("result", value);
return absl::OkStatus();
}
};
The Rom class is used to load, save, and modify Rom data. This is a generic SNES ROM container and do...
Definition rom.h:24
Utility for parsing common CLI argument patterns.
absl::Status RequireArgs(const std::vector< std::string > &required) const
Validate that required arguments are present.
Base class for CLI command handlers.

Definition at line 45 of file command_handler.h.

Constructor & Destructor Documentation

◆ ~CommandHandler()

virtual yaze::cli::resources::CommandHandler::~CommandHandler ( )
virtualdefault

Member Function Documentation

◆ Run()

◆ GetName()

virtual std::string yaze::cli::resources::CommandHandler::GetName ( ) const
pure virtual

Get the command name.

Override this to provide a unique identifier for the command. This is used for command registration and lookup.

Implemented in yaze::cli::handlers::SimpleChatCommandHandler, yaze::cli::handlers::DialogueListCommandHandler, yaze::cli::handlers::DialogueReadCommandHandler, yaze::cli::handlers::DialogueSearchCommandHandler, yaze::cli::handlers::DungeonListSpritesCommandHandler, yaze::cli::handlers::DungeonDescribeRoomCommandHandler, yaze::cli::handlers::DungeonExportRoomCommandHandler, yaze::cli::handlers::DungeonListObjectsCommandHandler, yaze::cli::handlers::DungeonGetRoomTilesCommandHandler, yaze::cli::handlers::DungeonSetRoomPropertyCommandHandler, yaze::cli::handlers::MessageListCommandHandler, yaze::cli::handlers::MessageReadCommandHandler, yaze::cli::handlers::MessageSearchCommandHandler, yaze::cli::handlers::MusicListCommandHandler, yaze::cli::handlers::MusicInfoCommandHandler, yaze::cli::handlers::MusicTracksCommandHandler, yaze::cli::handlers::OverworldFindTileCommandHandler, yaze::cli::handlers::OverworldDescribeMapCommandHandler, yaze::cli::handlers::OverworldListWarpsCommandHandler, yaze::cli::handlers::OverworldListSpritesCommandHandler, yaze::cli::handlers::OverworldGetEntranceCommandHandler, yaze::cli::handlers::OverworldTileStatsCommandHandler, yaze::cli::handlers::HexReadCommandHandler, yaze::cli::handlers::HexWriteCommandHandler, yaze::cli::handlers::HexSearchCommandHandler, yaze::cli::handlers::PaletteGetColorsCommandHandler, yaze::cli::handlers::PaletteSetColorCommandHandler, yaze::cli::handlers::PaletteAnalyzeCommandHandler, yaze::cli::handlers::SpriteListCommandHandler, yaze::cli::handlers::SpritePropertiesCommandHandler, yaze::cli::handlers::SpritePaletteCommandHandler, yaze::cli::handlers::ProjectInitCommandHandler, yaze::cli::handlers::ProjectBuildCommandHandler, yaze::cli::handlers::RomInfoCommandHandler, yaze::cli::handlers::RomValidateCommandHandler, yaze::cli::handlers::RomDiffCommandHandler, yaze::cli::handlers::RomGenerateGoldenCommandHandler, yaze::cli::handlers::EmulatorStepCommandHandler, yaze::cli::handlers::EmulatorRunCommandHandler, yaze::cli::handlers::EmulatorPauseCommandHandler, yaze::cli::handlers::EmulatorResetCommandHandler, yaze::cli::handlers::EmulatorGetStateCommandHandler, yaze::cli::handlers::EmulatorSetBreakpointCommandHandler, yaze::cli::handlers::EmulatorClearBreakpointCommandHandler, yaze::cli::handlers::EmulatorListBreakpointsCommandHandler, yaze::cli::handlers::EmulatorReadMemoryCommandHandler, yaze::cli::handlers::EmulatorWriteMemoryCommandHandler, yaze::cli::handlers::EmulatorGetRegistersCommandHandler, yaze::cli::handlers::EmulatorGetMetricsCommandHandler, yaze::cli::handlers::EmulatorPressButtonsCommandHandler, yaze::cli::handlers::EmulatorReleaseButtonsCommandHandler, yaze::cli::handlers::EmulatorHoldButtonsCommandHandler, yaze::cli::handlers::GuiPlaceTileCommandHandler, yaze::cli::handlers::GuiClickCommandHandler, yaze::cli::handlers::GuiDiscoverToolCommandHandler, yaze::cli::handlers::GuiScreenshotCommandHandler, yaze::cli::handlers::ResourceListCommandHandler, yaze::cli::handlers::ResourceSearchCommandHandler, yaze::cli::DungeonDoctorCommandHandler, yaze::cli::GraphicsDoctorCommandHandler, yaze::cli::HexDumpCommandHandler, yaze::cli::HexCompareCommandHandler, yaze::cli::HexAnnotateCommandHandler, yaze::cli::MessageDoctorCommandHandler, yaze::cli::OverworldDoctorCommandHandler, yaze::cli::OverworldValidateCommandHandler, yaze::cli::RomCompareCommandHandler, yaze::cli::RomDoctorCommandHandler, yaze::cli::SpriteDoctorCommandHandler, yaze::cli::TestListCommandHandler, yaze::cli::TestRunCommandHandler, yaze::cli::TestStatusCommandHandler, yaze::cli::handlers::ToolsHarnessStateCommandHandler, yaze::cli::handlers::ToolsExtractValuesCommandHandler, yaze::cli::handlers::ToolsExtractGoldenCommandHandler, yaze::cli::handlers::ToolsPatchV3CommandHandler, yaze::cli::handlers::ToolsListCommandHandler, yaze::cli::agent::MetaToolsListHandler, yaze::cli::agent::MetaToolsDescribeHandler, yaze::cli::agent::MetaToolsSearchHandler, yaze::cli::agent::tools::BuildConfigureCommandHandler, yaze::cli::agent::tools::BuildCompileCommandHandler, yaze::cli::agent::tools::BuildTestCommandHandler, yaze::cli::agent::tools::BuildStatusCommandHandler, yaze::cli::agent::tools::CodeGenAsmHookTool, yaze::cli::agent::tools::CodeGenFreespacePatchTool, yaze::cli::agent::tools::CodeGenSpriteTemplateTool, yaze::cli::agent::tools::CodeGenEventHandlerTool, yaze::cli::agent::tools::FileSystemListTool, yaze::cli::agent::tools::FileSystemReadTool, yaze::cli::agent::tools::FileSystemExistsTool, yaze::cli::agent::tools::FileSystemInfoTool, yaze::cli::agent::tools::MemoryAnalyzeTool, yaze::cli::agent::tools::MemorySearchTool, yaze::cli::agent::tools::MemoryCompareTool, yaze::cli::agent::tools::MemoryCheckTool, yaze::cli::agent::tools::MemoryRegionsTool, yaze::cli::agent::tools::ProjectGraphTool, yaze::cli::agent::tools::ProjectStatusTool, yaze::cli::agent::tools::ProjectSnapshotTool, yaze::cli::agent::tools::ProjectRestoreTool, yaze::cli::agent::tools::ProjectExportTool, yaze::cli::agent::tools::ProjectImportTool, yaze::cli::agent::tools::ProjectDiffTool, yaze::cli::agent::tools::RomDiffTool, yaze::cli::agent::tools::RomChangesTool, yaze::cli::agent::tools::RomValidateTool, yaze::cli::agent::tools::DataValidateTool, yaze::cli::agent::tools::PatchCheckTool, yaze::cli::agent::tools::ValidateAllTool, yaze::cli::agent::tools::TileSimilarityTool, yaze::cli::agent::tools::SpritesheetAnalysisTool, yaze::cli::agent::tools::PaletteUsageTool, and yaze::cli::agent::tools::TileHistogramTool.

Referenced by Describe().

◆ Describe()

◆ GetUsage()

virtual std::string yaze::cli::resources::CommandHandler::GetUsage ( ) const
pure virtual

Get the command usage string.

Implemented in yaze::cli::handlers::DialogueListCommandHandler, yaze::cli::handlers::DialogueReadCommandHandler, yaze::cli::handlers::DialogueSearchCommandHandler, yaze::cli::handlers::DungeonListSpritesCommandHandler, yaze::cli::handlers::DungeonDescribeRoomCommandHandler, yaze::cli::handlers::DungeonExportRoomCommandHandler, yaze::cli::handlers::DungeonListObjectsCommandHandler, yaze::cli::handlers::DungeonGetRoomTilesCommandHandler, yaze::cli::handlers::DungeonSetRoomPropertyCommandHandler, yaze::cli::handlers::MessageListCommandHandler, yaze::cli::handlers::MessageReadCommandHandler, yaze::cli::handlers::MessageSearchCommandHandler, yaze::cli::handlers::MusicListCommandHandler, yaze::cli::handlers::MusicInfoCommandHandler, yaze::cli::handlers::MusicTracksCommandHandler, yaze::cli::handlers::OverworldFindTileCommandHandler, yaze::cli::handlers::OverworldDescribeMapCommandHandler, yaze::cli::handlers::OverworldListWarpsCommandHandler, yaze::cli::handlers::OverworldListSpritesCommandHandler, yaze::cli::handlers::OverworldGetEntranceCommandHandler, yaze::cli::handlers::OverworldTileStatsCommandHandler, yaze::cli::handlers::HexReadCommandHandler, yaze::cli::handlers::HexWriteCommandHandler, yaze::cli::handlers::HexSearchCommandHandler, yaze::cli::handlers::PaletteGetColorsCommandHandler, yaze::cli::handlers::PaletteSetColorCommandHandler, yaze::cli::handlers::PaletteAnalyzeCommandHandler, yaze::cli::handlers::SpriteListCommandHandler, yaze::cli::handlers::SpritePropertiesCommandHandler, yaze::cli::handlers::SpritePaletteCommandHandler, yaze::cli::handlers::ProjectInitCommandHandler, yaze::cli::handlers::ProjectBuildCommandHandler, yaze::cli::handlers::RomInfoCommandHandler, yaze::cli::handlers::RomValidateCommandHandler, yaze::cli::handlers::RomDiffCommandHandler, yaze::cli::handlers::RomGenerateGoldenCommandHandler, yaze::cli::handlers::EmulatorStepCommandHandler, yaze::cli::handlers::EmulatorRunCommandHandler, yaze::cli::handlers::EmulatorPauseCommandHandler, yaze::cli::handlers::EmulatorResetCommandHandler, yaze::cli::handlers::EmulatorGetStateCommandHandler, yaze::cli::handlers::EmulatorSetBreakpointCommandHandler, yaze::cli::handlers::EmulatorClearBreakpointCommandHandler, yaze::cli::handlers::EmulatorListBreakpointsCommandHandler, yaze::cli::handlers::EmulatorReadMemoryCommandHandler, yaze::cli::handlers::EmulatorWriteMemoryCommandHandler, yaze::cli::handlers::EmulatorGetRegistersCommandHandler, yaze::cli::handlers::EmulatorGetMetricsCommandHandler, yaze::cli::handlers::EmulatorPressButtonsCommandHandler, yaze::cli::handlers::EmulatorReleaseButtonsCommandHandler, yaze::cli::handlers::EmulatorHoldButtonsCommandHandler, yaze::cli::handlers::GuiPlaceTileCommandHandler, yaze::cli::handlers::GuiClickCommandHandler, yaze::cli::handlers::GuiDiscoverToolCommandHandler, yaze::cli::handlers::GuiScreenshotCommandHandler, yaze::cli::handlers::ResourceListCommandHandler, yaze::cli::handlers::ResourceSearchCommandHandler, yaze::cli::handlers::SimpleChatCommandHandler, yaze::cli::DungeonDoctorCommandHandler, yaze::cli::GraphicsDoctorCommandHandler, yaze::cli::HexDumpCommandHandler, yaze::cli::HexCompareCommandHandler, yaze::cli::HexAnnotateCommandHandler, yaze::cli::MessageDoctorCommandHandler, yaze::cli::OverworldDoctorCommandHandler, yaze::cli::OverworldValidateCommandHandler, yaze::cli::RomCompareCommandHandler, yaze::cli::RomDoctorCommandHandler, yaze::cli::SpriteDoctorCommandHandler, yaze::cli::TestListCommandHandler, yaze::cli::TestRunCommandHandler, yaze::cli::TestStatusCommandHandler, yaze::cli::handlers::ToolsHarnessStateCommandHandler, yaze::cli::handlers::ToolsExtractValuesCommandHandler, yaze::cli::handlers::ToolsExtractGoldenCommandHandler, yaze::cli::handlers::ToolsPatchV3CommandHandler, yaze::cli::handlers::ToolsListCommandHandler, yaze::cli::agent::MetaToolsListHandler, yaze::cli::agent::MetaToolsDescribeHandler, yaze::cli::agent::MetaToolsSearchHandler, yaze::cli::agent::tools::BuildConfigureCommandHandler, yaze::cli::agent::tools::BuildCompileCommandHandler, yaze::cli::agent::tools::BuildTestCommandHandler, yaze::cli::agent::tools::BuildStatusCommandHandler, yaze::cli::agent::tools::CodeGenAsmHookTool, yaze::cli::agent::tools::CodeGenFreespacePatchTool, yaze::cli::agent::tools::CodeGenSpriteTemplateTool, yaze::cli::agent::tools::CodeGenEventHandlerTool, yaze::cli::agent::tools::FileSystemListTool, yaze::cli::agent::tools::FileSystemReadTool, yaze::cli::agent::tools::FileSystemExistsTool, yaze::cli::agent::tools::FileSystemInfoTool, yaze::cli::agent::tools::MemoryAnalyzeTool, yaze::cli::agent::tools::MemorySearchTool, yaze::cli::agent::tools::MemoryCompareTool, yaze::cli::agent::tools::MemoryCheckTool, yaze::cli::agent::tools::MemoryRegionsTool, yaze::cli::agent::tools::ProjectGraphTool, yaze::cli::agent::tools::ProjectStatusTool, yaze::cli::agent::tools::ProjectSnapshotTool, yaze::cli::agent::tools::ProjectRestoreTool, yaze::cli::agent::tools::ProjectExportTool, yaze::cli::agent::tools::ProjectImportTool, yaze::cli::agent::tools::ProjectDiffTool, yaze::cli::agent::tools::RomDiffTool, yaze::cli::agent::tools::RomChangesTool, yaze::cli::agent::tools::RomValidateTool, yaze::cli::agent::tools::DataValidateTool, yaze::cli::agent::tools::PatchCheckTool, yaze::cli::agent::tools::ValidateAllTool, yaze::cli::agent::tools::TileSimilarityTool, yaze::cli::agent::tools::SpritesheetAnalysisTool, yaze::cli::agent::tools::PaletteUsageTool, and yaze::cli::agent::tools::TileHistogramTool.

Referenced by Run().

◆ RequiresRom()

◆ RequiresLabels()

◆ SetProjectContext()

virtual void yaze::cli::resources::CommandHandler::SetProjectContext ( project::YazeProject * project)
inlinevirtual

Set the YazeProject context. Default implementation does nothing, override if tool needs project info.

Reimplemented in yaze::cli::agent::tools::ProjectGraphTool.

Definition at line 111 of file command_handler.h.

References project_.

◆ SetAsarWrapper()

virtual void yaze::cli::resources::CommandHandler::SetAsarWrapper ( core::AsarWrapper * asar_wrapper)
inlinevirtual

Set the AsarWrapper context. Default implementation does nothing, override if tool needs Asar access.

Reimplemented in yaze::cli::agent::tools::ProjectGraphTool.

Definition at line 117 of file command_handler.h.

References asar_wrapper_.

◆ SetRomContext()

virtual void yaze::cli::resources::CommandHandler::SetRomContext ( Rom * rom)
inlinevirtual

Set the ROM context for tools that need ROM access. Default implementation stores the ROM pointer for subclass use.

Definition at line 123 of file command_handler.h.

References rom_.

◆ ValidateArgs()

virtual absl::Status yaze::cli::resources::CommandHandler::ValidateArgs ( const ArgumentParser & parser)
protectedpure virtual

Validate command arguments.

Override this to check required arguments and perform custom validation. Called before Execute().

Implemented in yaze::cli::handlers::ToolsListCommandHandler, yaze::cli::agent::MetaToolsListHandler, yaze::cli::agent::MetaToolsDescribeHandler, yaze::cli::agent::MetaToolsSearchHandler, yaze::cli::agent::tools::ProjectStatusTool, yaze::cli::agent::tools::ValidateAllTool, yaze::cli::handlers::SimpleChatCommandHandler, yaze::cli::handlers::DialogueListCommandHandler, yaze::cli::handlers::DialogueReadCommandHandler, yaze::cli::handlers::DialogueSearchCommandHandler, yaze::cli::handlers::DungeonListSpritesCommandHandler, yaze::cli::handlers::DungeonDescribeRoomCommandHandler, yaze::cli::handlers::DungeonExportRoomCommandHandler, yaze::cli::handlers::DungeonListObjectsCommandHandler, yaze::cli::handlers::DungeonGetRoomTilesCommandHandler, yaze::cli::handlers::DungeonSetRoomPropertyCommandHandler, yaze::cli::handlers::MessageListCommandHandler, yaze::cli::handlers::MessageReadCommandHandler, yaze::cli::handlers::MessageSearchCommandHandler, yaze::cli::handlers::MusicListCommandHandler, yaze::cli::handlers::MusicInfoCommandHandler, yaze::cli::handlers::MusicTracksCommandHandler, yaze::cli::handlers::OverworldFindTileCommandHandler, yaze::cli::handlers::OverworldDescribeMapCommandHandler, yaze::cli::handlers::OverworldListWarpsCommandHandler, yaze::cli::handlers::OverworldListSpritesCommandHandler, yaze::cli::handlers::OverworldGetEntranceCommandHandler, yaze::cli::handlers::OverworldTileStatsCommandHandler, yaze::cli::handlers::HexReadCommandHandler, yaze::cli::handlers::HexWriteCommandHandler, yaze::cli::handlers::HexSearchCommandHandler, yaze::cli::handlers::PaletteGetColorsCommandHandler, yaze::cli::handlers::PaletteSetColorCommandHandler, yaze::cli::handlers::PaletteAnalyzeCommandHandler, yaze::cli::handlers::SpriteListCommandHandler, yaze::cli::handlers::SpritePropertiesCommandHandler, yaze::cli::handlers::SpritePaletteCommandHandler, yaze::cli::handlers::ProjectInitCommandHandler, yaze::cli::handlers::ProjectBuildCommandHandler, yaze::cli::handlers::RomInfoCommandHandler, yaze::cli::handlers::RomValidateCommandHandler, yaze::cli::handlers::RomDiffCommandHandler, yaze::cli::handlers::RomGenerateGoldenCommandHandler, yaze::cli::DungeonDoctorCommandHandler, yaze::cli::handlers::EmulatorStepCommandHandler, yaze::cli::handlers::EmulatorRunCommandHandler, yaze::cli::handlers::EmulatorPauseCommandHandler, yaze::cli::handlers::EmulatorResetCommandHandler, yaze::cli::handlers::EmulatorGetStateCommandHandler, yaze::cli::handlers::EmulatorSetBreakpointCommandHandler, yaze::cli::handlers::EmulatorClearBreakpointCommandHandler, yaze::cli::handlers::EmulatorListBreakpointsCommandHandler, yaze::cli::handlers::EmulatorReadMemoryCommandHandler, yaze::cli::handlers::EmulatorWriteMemoryCommandHandler, yaze::cli::handlers::EmulatorGetRegistersCommandHandler, yaze::cli::handlers::EmulatorGetMetricsCommandHandler, yaze::cli::handlers::EmulatorPressButtonsCommandHandler, yaze::cli::handlers::EmulatorReleaseButtonsCommandHandler, yaze::cli::handlers::EmulatorHoldButtonsCommandHandler, yaze::cli::GraphicsDoctorCommandHandler, yaze::cli::handlers::GuiPlaceTileCommandHandler, yaze::cli::handlers::GuiClickCommandHandler, yaze::cli::handlers::GuiDiscoverToolCommandHandler, yaze::cli::handlers::GuiScreenshotCommandHandler, yaze::cli::HexDumpCommandHandler, yaze::cli::HexCompareCommandHandler, yaze::cli::HexAnnotateCommandHandler, yaze::cli::MessageDoctorCommandHandler, yaze::cli::OverworldDoctorCommandHandler, yaze::cli::OverworldValidateCommandHandler, yaze::cli::handlers::ResourceListCommandHandler, yaze::cli::handlers::ResourceSearchCommandHandler, yaze::cli::RomCompareCommandHandler, yaze::cli::RomDoctorCommandHandler, yaze::cli::SpriteDoctorCommandHandler, yaze::cli::TestListCommandHandler, yaze::cli::TestRunCommandHandler, yaze::cli::TestStatusCommandHandler, yaze::cli::handlers::ToolsHarnessStateCommandHandler, yaze::cli::handlers::ToolsExtractValuesCommandHandler, yaze::cli::handlers::ToolsExtractGoldenCommandHandler, yaze::cli::handlers::ToolsPatchV3CommandHandler, yaze::cli::agent::tools::BuildConfigureCommandHandler, yaze::cli::agent::tools::BuildCompileCommandHandler, yaze::cli::agent::tools::BuildTestCommandHandler, yaze::cli::agent::tools::BuildStatusCommandHandler, yaze::cli::agent::tools::CodeGenAsmHookTool, yaze::cli::agent::tools::CodeGenFreespacePatchTool, yaze::cli::agent::tools::CodeGenSpriteTemplateTool, yaze::cli::agent::tools::CodeGenEventHandlerTool, yaze::cli::agent::tools::FileSystemListTool, yaze::cli::agent::tools::FileSystemReadTool, yaze::cli::agent::tools::FileSystemExistsTool, yaze::cli::agent::tools::FileSystemInfoTool, yaze::cli::agent::tools::MemoryAnalyzeTool, yaze::cli::agent::tools::MemorySearchTool, yaze::cli::agent::tools::MemoryCompareTool, yaze::cli::agent::tools::MemoryCheckTool, yaze::cli::agent::tools::MemoryRegionsTool, yaze::cli::agent::tools::ProjectGraphTool, yaze::cli::agent::tools::ProjectSnapshotTool, yaze::cli::agent::tools::ProjectRestoreTool, yaze::cli::agent::tools::ProjectExportTool, yaze::cli::agent::tools::ProjectImportTool, yaze::cli::agent::tools::ProjectDiffTool, yaze::cli::agent::tools::RomDiffTool, yaze::cli::agent::tools::RomChangesTool, yaze::cli::agent::tools::RomValidateTool, yaze::cli::agent::tools::DataValidateTool, yaze::cli::agent::tools::PatchCheckTool, yaze::cli::agent::tools::TileSimilarityTool, yaze::cli::agent::tools::SpritesheetAnalysisTool, yaze::cli::agent::tools::PaletteUsageTool, and yaze::cli::agent::tools::TileHistogramTool.

Referenced by Run().

◆ Execute()

virtual absl::Status yaze::cli::resources::CommandHandler::Execute ( Rom * rom,
const ArgumentParser & parser,
OutputFormatter & formatter )
protectedpure virtual

Execute the command business logic.

Override this to implement command-specific functionality. The ROM is guaranteed to be loaded and labels initialized.

Implemented in yaze::cli::agent::MetaToolsListHandler, yaze::cli::agent::MetaToolsDescribeHandler, yaze::cli::agent::MetaToolsSearchHandler, yaze::cli::MessageDoctorCommandHandler, yaze::cli::handlers::SimpleChatCommandHandler, yaze::cli::handlers::DialogueListCommandHandler, yaze::cli::handlers::DialogueReadCommandHandler, yaze::cli::handlers::DialogueSearchCommandHandler, yaze::cli::handlers::DungeonListSpritesCommandHandler, yaze::cli::handlers::DungeonDescribeRoomCommandHandler, yaze::cli::handlers::DungeonExportRoomCommandHandler, yaze::cli::handlers::DungeonListObjectsCommandHandler, yaze::cli::handlers::DungeonGetRoomTilesCommandHandler, yaze::cli::handlers::DungeonSetRoomPropertyCommandHandler, yaze::cli::handlers::MessageListCommandHandler, yaze::cli::handlers::MessageReadCommandHandler, yaze::cli::handlers::MessageSearchCommandHandler, yaze::cli::handlers::MusicListCommandHandler, yaze::cli::handlers::MusicInfoCommandHandler, yaze::cli::handlers::MusicTracksCommandHandler, yaze::cli::handlers::OverworldFindTileCommandHandler, yaze::cli::handlers::OverworldDescribeMapCommandHandler, yaze::cli::handlers::OverworldListWarpsCommandHandler, yaze::cli::handlers::OverworldListSpritesCommandHandler, yaze::cli::handlers::OverworldGetEntranceCommandHandler, yaze::cli::handlers::OverworldTileStatsCommandHandler, yaze::cli::handlers::HexReadCommandHandler, yaze::cli::handlers::HexWriteCommandHandler, yaze::cli::handlers::HexSearchCommandHandler, yaze::cli::handlers::PaletteGetColorsCommandHandler, yaze::cli::handlers::PaletteSetColorCommandHandler, yaze::cli::handlers::PaletteAnalyzeCommandHandler, yaze::cli::handlers::SpriteListCommandHandler, yaze::cli::handlers::SpritePropertiesCommandHandler, yaze::cli::handlers::SpritePaletteCommandHandler, yaze::cli::handlers::ProjectInitCommandHandler, yaze::cli::handlers::ProjectBuildCommandHandler, yaze::cli::handlers::RomInfoCommandHandler, yaze::cli::handlers::RomValidateCommandHandler, yaze::cli::handlers::RomDiffCommandHandler, yaze::cli::handlers::RomGenerateGoldenCommandHandler, yaze::cli::DungeonDoctorCommandHandler, yaze::cli::handlers::EmulatorStepCommandHandler, yaze::cli::handlers::EmulatorRunCommandHandler, yaze::cli::handlers::EmulatorPauseCommandHandler, yaze::cli::handlers::EmulatorResetCommandHandler, yaze::cli::handlers::EmulatorGetStateCommandHandler, yaze::cli::handlers::EmulatorSetBreakpointCommandHandler, yaze::cli::handlers::EmulatorClearBreakpointCommandHandler, yaze::cli::handlers::EmulatorListBreakpointsCommandHandler, yaze::cli::handlers::EmulatorReadMemoryCommandHandler, yaze::cli::handlers::EmulatorWriteMemoryCommandHandler, yaze::cli::handlers::EmulatorGetRegistersCommandHandler, yaze::cli::handlers::EmulatorGetMetricsCommandHandler, yaze::cli::handlers::EmulatorPressButtonsCommandHandler, yaze::cli::handlers::EmulatorReleaseButtonsCommandHandler, yaze::cli::handlers::EmulatorHoldButtonsCommandHandler, yaze::cli::GraphicsDoctorCommandHandler, yaze::cli::handlers::GuiPlaceTileCommandHandler, yaze::cli::handlers::GuiClickCommandHandler, yaze::cli::handlers::GuiDiscoverToolCommandHandler, yaze::cli::handlers::GuiScreenshotCommandHandler, yaze::cli::HexDumpCommandHandler, yaze::cli::HexCompareCommandHandler, yaze::cli::HexAnnotateCommandHandler, yaze::cli::OverworldDoctorCommandHandler, yaze::cli::OverworldValidateCommandHandler, yaze::cli::handlers::ResourceListCommandHandler, yaze::cli::handlers::ResourceSearchCommandHandler, yaze::cli::RomCompareCommandHandler, yaze::cli::RomDoctorCommandHandler, yaze::cli::SpriteDoctorCommandHandler, yaze::cli::TestListCommandHandler, yaze::cli::TestRunCommandHandler, yaze::cli::TestStatusCommandHandler, yaze::cli::handlers::ToolsHarnessStateCommandHandler, yaze::cli::handlers::ToolsExtractValuesCommandHandler, yaze::cli::handlers::ToolsExtractGoldenCommandHandler, yaze::cli::handlers::ToolsPatchV3CommandHandler, yaze::cli::handlers::ToolsListCommandHandler, yaze::cli::agent::tools::BuildConfigureCommandHandler, yaze::cli::agent::tools::BuildCompileCommandHandler, yaze::cli::agent::tools::BuildTestCommandHandler, yaze::cli::agent::tools::BuildStatusCommandHandler, yaze::cli::agent::tools::CodeGenAsmHookTool, yaze::cli::agent::tools::CodeGenFreespacePatchTool, yaze::cli::agent::tools::CodeGenSpriteTemplateTool, yaze::cli::agent::tools::CodeGenEventHandlerTool, yaze::cli::agent::tools::FileSystemListTool, yaze::cli::agent::tools::FileSystemReadTool, yaze::cli::agent::tools::FileSystemExistsTool, yaze::cli::agent::tools::FileSystemInfoTool, yaze::cli::agent::tools::MemoryAnalyzeTool, yaze::cli::agent::tools::MemorySearchTool, yaze::cli::agent::tools::MemoryCompareTool, yaze::cli::agent::tools::MemoryCheckTool, yaze::cli::agent::tools::MemoryRegionsTool, yaze::cli::agent::tools::ProjectGraphTool, yaze::cli::agent::tools::ProjectStatusTool, yaze::cli::agent::tools::ProjectSnapshotTool, yaze::cli::agent::tools::ProjectRestoreTool, yaze::cli::agent::tools::ProjectExportTool, yaze::cli::agent::tools::ProjectImportTool, yaze::cli::agent::tools::ProjectDiffTool, yaze::cli::agent::tools::RomDiffTool, yaze::cli::agent::tools::RomChangesTool, yaze::cli::agent::tools::RomValidateTool, yaze::cli::agent::tools::DataValidateTool, yaze::cli::agent::tools::PatchCheckTool, yaze::cli::agent::tools::ValidateAllTool, yaze::cli::agent::tools::TileSimilarityTool, yaze::cli::agent::tools::SpritesheetAnalysisTool, yaze::cli::agent::tools::PaletteUsageTool, and yaze::cli::agent::tools::TileHistogramTool.

Referenced by Run().

◆ GetDefaultFormat()

◆ GetOutputTitle()

Member Data Documentation

◆ rom_

Rom* yaze::cli::resources::CommandHandler::rom_ = nullptr
protected

Definition at line 153 of file command_handler.h.

Referenced by SetRomContext().

◆ project_

◆ asar_wrapper_


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