]> CyberLeo.Net >> Repos - FreeBSD/FreeBSD.git/blob - contrib/llvm/tools/lldb/tools/lldb-mi/MICmdCmdSupportInfo.h
Update llvm, clang and lldb to 3.7.0 release.
[FreeBSD/FreeBSD.git] / contrib / llvm / tools / lldb / tools / lldb-mi / MICmdCmdSupportInfo.h
1 //===-- MICmdCmdSupportInfo.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:    CMICmdCmdSupportInfoMiCmdQuery          interface.
11 //
12 //              To implement new MI commands derive a new command class from the command base
13 //              class. To enable the new command for interpretation add the new command class
14 //              to the command factory. The files of relevance are:
15 //                  MICmdCommands.cpp
16 //                  MICmdBase.h / .cpp
17 //                  MICmdCmd.h / .cpp
18 //              For an introduction to adding a new command see CMICmdCmdSupportInfoMiCmdQuery
19 //              command class as an example.
20
21 #pragma once
22
23 // In-house headers:
24 #include "MICmdBase.h"
25
26 //++ ============================================================================
27 // Details: MI command class. MI commands derived from the command base class.
28 //          *this class implements MI command "info-gdb-mi-command".
29 //          This command does not follow the MI documentation exactly.
30 // Gotchas: None.
31 // Authors: Illya Rudkin 06/05/2014.
32 // Changes: None.
33 //--
34 class CMICmdCmdSupportInfoMiCmdQuery : public CMICmdBase
35 {
36     // Statics:
37   public:
38     // Required by the CMICmdFactory when registering *this command
39     static CMICmdBase *CreateSelf(void);
40
41     // Methods:
42   public:
43     /* ctor */ CMICmdCmdSupportInfoMiCmdQuery(void);
44
45     // Overridden:
46   public:
47     // From CMICmdInvoker::ICmd
48     bool Execute(void) override;
49     bool Acknowledge(void) override;
50     bool ParseArgs(void) override;
51     // From CMICmnBase
52     /* dtor */ ~CMICmdCmdSupportInfoMiCmdQuery(void) override;
53
54     // Attributes:
55   private:
56     bool m_bCmdFound; // True = query for the command in command factory found, false = not found not recognised
57     const CMIUtilString m_constStrArgCmdName;
58 };