1 //===-- MICmdCmdSupportList.h -----------------------------------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 // Overview: CMICmdCmdSupportListFeatures interface. 11 // 12 // To implement new MI commands derive a new command class from the 13 // command base 14 // class. To enable the new command for interpretation add the new 15 // command class 16 // to the command factory. The files of relevance are: 17 // MICmdCommands.cpp 18 // MICmdBase.h / .cpp 19 // MICmdCmd.h / .cpp 20 // For an introduction to adding a new command see 21 // CMICmdCmdSupportInfoMiCmdQuery 22 // command class as an example. 23 24 #pragma once 25 26 // In-house headers: 27 #include "MICmdBase.h" 28 29 //++ 30 //============================================================================ 31 // Details: MI command class. MI commands derived from the command base class. 32 // *this class implements MI command "list-features". 33 // This command does not follow the MI documentation exactly. 34 //-- 35 class CMICmdCmdSupportListFeatures : public CMICmdBase { 36 // Statics: 37 public: 38 // Required by the CMICmdFactory when registering *this command 39 static CMICmdBase *CreateSelf(); 40 41 // Methods: 42 public: 43 /* ctor */ CMICmdCmdSupportListFeatures(); 44 45 // Overridden: 46 public: 47 // From CMICmdInvoker::ICmd 48 bool Execute() override; 49 bool Acknowledge() override; 50 // From CMICmnBase 51 /* dtor */ ~CMICmdCmdSupportListFeatures() override; 52 }; 53