yaze 0.3.2
Link to the Past ROM Editor
 
Loading...
Searching...
No Matches
music_commands.cc
Go to the documentation of this file.
2
3#include "absl/strings/str_format.h"
4
5namespace yaze {
6namespace cli {
7namespace handlers {
8
10 resources::OutputFormatter& formatter) {
11 formatter.BeginObject("Music Tracks");
12 formatter.AddField("total_tracks", 0);
13 formatter.AddField("status", "not_implemented");
14 formatter.AddField("message", "Music listing requires music system integration");
15
16 formatter.BeginArray("tracks");
17 formatter.EndArray();
18 formatter.EndObject();
19
20 return absl::OkStatus();
21}
22
24 resources::OutputFormatter& formatter) {
25 auto track_id = parser.GetString("id").value();
26
27 formatter.BeginObject("Music Track Info");
28 formatter.AddField("track_id", track_id);
29 formatter.AddField("status", "not_implemented");
30 formatter.AddField("message", "Music info requires music system integration");
31 formatter.EndObject();
32
33 return absl::OkStatus();
34}
35
37 resources::OutputFormatter& formatter) {
38 auto category = parser.GetString("category").value_or("all");
39
40 formatter.BeginObject("Music Track Data");
41 formatter.AddField("category", category);
42 formatter.AddField("total_tracks", 0);
43 formatter.AddField("status", "not_implemented");
44 formatter.AddField("message", "Music track data requires music system integration");
45
46 formatter.BeginArray("tracks");
47 formatter.EndArray();
48 formatter.EndObject();
49
50 return absl::OkStatus();
51}
52
53} // namespace handlers
54} // namespace cli
55} // namespace yaze
The Rom class is used to load, save, and modify Rom data.
Definition rom.h:71
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
absl::Status Execute(Rom *rom, const resources::ArgumentParser &parser, resources::OutputFormatter &formatter) override
Execute the command business logic.
Utility for parsing common CLI argument patterns.
std::optional< std::string > GetString(const std::string &name) const
Parse a named argument (e.g., –format=json or –format json)
Utility for consistent output formatting across commands.
void BeginArray(const std::string &key)
Begin an array.
void BeginObject(const std::string &title="")
Start a JSON object or text section.
void EndObject()
End a JSON object or text section.
void AddField(const std::string &key, const std::string &value)
Add a key-value pair.
Main namespace for the application.