33 class Cmd final :
public Command {
36 void execute(std::span<const TclObject> tokens,
38 [[nodiscard]] std::string help(std::span<const TclObject> tokens)
const override;
39 void tabCompletion(std::vector<std::string>& tokens)
const override;
42 void create (std::span<const TclObject> tokens,
TclObject& result);
43 void destroy(std::span<const TclObject> tokens,
TclObject& result);
44 void info (std::span<const TclObject> tokens,
TclObject& result)
const;
46 [[nodiscard]]
Info createString (std::span<const TclObject> tokens)
const;
47 [[nodiscard]]
Info createBoolean(std::span<const TclObject> tokens)
const;
48 [[nodiscard]]
Info createInteger(std::span<const TclObject> tokens)
const;
49 [[nodiscard]]
Info createFloat (std::span<const TclObject> tokens)
const;
50 [[nodiscard]]
Info createEnum (std::span<const TclObject> tokens)
const;
52 [[nodiscard]]
auto getSettingNames()
const {
55 [](
const auto& info) {
return info.setting->getFullName(); });