File indexing completed on 2024-04-28 04:38:57

0001 /*
0002     SPDX-FileCopyrightText: 2016 Aetf <aetf@unlimitedcodeworks.xyz>
0003 
0004     SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 
0007 #ifndef LLDBCOMMAND_H
0008 #define LLDBCOMMAND_H
0009 
0010 #include "mi/micommand.h"
0011 
0012 namespace KDevMI { namespace LLDB {
0013 
0014 /**
0015  * LLDB specific version of MICommand, when LLDB-MI implements all
0016  * needed mi command, this class would be no longer needed.
0017  */
0018 class DebugSession;
0019 class LldbCommand : public MI::MICommand
0020 {
0021 protected:
0022     explicit LldbCommand(MI::CommandType type, const QString& arguments = QString(),
0023                 MI::CommandFlags flags = {});
0024     friend class KDevMI::LLDB::DebugSession;
0025 public:
0026     ~LldbCommand() override;
0027 
0028     QString cmdToSend() override;
0029     QString miCommand() const override;
0030 
0031 private:
0032     QString overrideCmd;
0033 };
0034 
0035 } // end of namespace LLDB
0036 } // end of namespace KDevMI
0037 
0038 #endif // LLDBCOMMAND_H