| //===-- MICmdData.h ---------------------------------------------*- C++ -*-===// |
| // |
| // The LLVM Compiler Infrastructure |
| // |
| // This file is distributed under the University of Illinois Open Source |
| // License. See LICENSE.TXT for details. |
| // |
| //===----------------------------------------------------------------------===// |
| |
| //++ |
| // File: MICmdData.h |
| // |
| // Overview: SMICmdData interface. |
| // |
| // Environment: Compilers: Visual C++ 12. |
| // gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1 |
| // Libraries: See MIReadmetxt. |
| // |
| // Copyright: None. |
| //-- |
| |
| #pragma once |
| |
| // In-house headers: |
| #include "MICmnResources.h" |
| |
| //++ ============================================================================ |
| // Details: MI command metadata. Holds the command's name, MI number and options |
| // as found on stdin. Holds the command's MI output (written to stdout). |
| // Gotchas: None. |
| // Authors: Illya Rudkin 18/02/2014. |
| // Changes: None. |
| //-- |
| struct SMICmdData |
| { |
| SMICmdData( void ) |
| : id( 0 ) |
| , bCmdValid( false ) |
| , bCmdExecutedSuccessfully( false ) |
| , bMIOldStyle( false ) |
| , bHasResultRecordExtra( false ) |
| { |
| }; |
| |
| 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 |
| |
| void Clear( void ) |
| { |
| 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; |
| } |
| }; |
| |