//===-- CommandObjectArgs.h -------------------------------------*- C++ -*-===// // // The LLVM Compiler Infrastructure // // This file is distributed under the University of Illinois Open Source // License. See LICENSE.TXT for details. // //===----------------------------------------------------------------------===// #ifndef liblldb_CommandObjectArgs_h_ #define liblldb_CommandObjectArgs_h_ // C Includes // C++ Includes // Other libraries and framework includes // Project includes #include "lldb/Interpreter/CommandObject.h" #include "lldb/Interpreter/Options.h" namespace lldb_private { class CommandObjectArgs : public CommandObjectParsed { public: class CommandOptions : public Options { public: CommandOptions(CommandInterpreter &interpreter); ~CommandOptions() override; Status SetOptionValue(uint32_t option_idx, llvm::StringRef option_arg, ExecutionContext *execution_context) override; void OptionParsingStarting(ExecutionContext *execution_context) override; llvm::ArrayRef<OptionDefinition> GetDefinitions() override; }; CommandObjectArgs(CommandInterpreter &interpreter); ~CommandObjectArgs() override; Options *GetOptions() override; protected: CommandOptions m_options; bool DoExecute(Args &command, CommandReturnObject &result) override; }; } // namespace lldb_private #endif // liblldb_CommandObjectArgs_h_ |