2014-05-16 18:51:01 +08:00
|
|
|
//===-- MICmdData.h ---------------------------------------------*- C++ -*-===//
|
|
|
|
//
|
2019-01-19 16:50:56 +08:00
|
|
|
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
|
|
|
|
// See https://llvm.org/LICENSE.txt for license information.
|
|
|
|
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
|
2014-05-16 18:51:01 +08:00
|
|
|
//
|
|
|
|
//===----------------------------------------------------------------------===//
|
|
|
|
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
// In-house headers:
|
|
|
|
#include "MICmnResources.h"
|
|
|
|
|
2016-09-07 04:57:50 +08:00
|
|
|
//++
|
|
|
|
//============================================================================
|
2014-11-18 02:06:21 +08:00
|
|
|
// Details: MI command metadata. Holds the command's name, MI number and options
|
2016-09-07 04:57:50 +08:00
|
|
|
// as found on stdin. Holds the command's MI output (written to
|
|
|
|
// stdout).
|
2014-05-16 18:51:01 +08:00
|
|
|
//--
|
2016-09-07 04:57:50 +08:00
|
|
|
struct SMICmdData {
|
|
|
|
SMICmdData()
|
|
|
|
: id(0), bCmdValid(false), bCmdExecutedSuccessfully(false),
|
|
|
|
bMIOldStyle(false), bHasResultRecordExtra(false) {}
|
2014-05-16 18:51:01 +08:00
|
|
|
|
2016-09-07 04:57:50 +08:00
|
|
|
MIuint id; // A command's unique ID i.e. GUID
|
|
|
|
CMIUtilString strMiCmdToken; // The command's MI token (a number)
|
|
|
|
CMIUtilString strMiCmd; // The command's name
|
|
|
|
CMIUtilString strMiCmdOption; // The command's arguments or options
|
|
|
|
CMIUtilString strMiCmdAll; // The text as received from the client
|
|
|
|
CMIUtilString
|
|
|
|
strMiCmdResultRecord; // Each command forms 1 response to its input
|
|
|
|
CMIUtilString strMiCmdResultRecordExtra; // Hack command produce more response
|
|
|
|
// text to help the client because of
|
|
|
|
// using LLDB
|
|
|
|
bool bCmdValid; // True = Valid MI format command, false = invalid
|
|
|
|
bool bCmdExecutedSuccessfully; // True = Command finished successfully, false
|
|
|
|
// = Did not start/did not complete
|
|
|
|
CMIUtilString strErrorDescription; // Command failed this is why
|
|
|
|
bool bMIOldStyle; // True = format "3thread", false = format "3-thread"
|
|
|
|
bool bHasResultRecordExtra; // True = Yes command produced additional MI
|
|
|
|
// output to its 1 line response, false = no extra
|
|
|
|
// MI output formed
|
2014-05-16 18:51:01 +08:00
|
|
|
|
2016-09-07 04:57:50 +08:00
|
|
|
void Clear() {
|
|
|
|
id = 0;
|
|
|
|
strMiCmdToken.clear();
|
|
|
|
strMiCmd = MIRSRC(IDS_CMD_ERR_CMD_RUN_BUT_NO_ACTION);
|
|
|
|
strMiCmdOption.clear();
|
|
|
|
strMiCmdAll.clear();
|
|
|
|
strMiCmdResultRecord.clear();
|
|
|
|
strMiCmdResultRecordExtra.clear();
|
|
|
|
bCmdValid = false;
|
|
|
|
bCmdExecutedSuccessfully = false;
|
|
|
|
strErrorDescription.clear();
|
|
|
|
bMIOldStyle = false;
|
|
|
|
bHasResultRecordExtra = false;
|
|
|
|
}
|
2014-05-16 18:51:01 +08:00
|
|
|
};
|