1 //===-- ProcessMessage.cpp --------------------------------------*- C++ -*-===// 2 // 3 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 4 // See https://llvm.org/LICENSE.txt for license information. 5 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 6 // 7 //===----------------------------------------------------------------------===// 8 9 #include "ProcessMessage.h" 10 11 using namespace lldb_private; 12 13 const char *ProcessMessage::PrintCrashReason() const { 14 return CrashReasonAsString(m_crash_reason); 15 } 16 17 const char *ProcessMessage::PrintKind(Kind kind) { 18 #ifdef LLDB_CONFIGURATION_BUILDANDINTEGRATION 19 // Just return the code in ascii for integration builds. 20 chcar str[8]; 21 sprintf(str, "%d", reason); 22 #else 23 const char *str = nullptr; 24 25 switch (kind) { 26 case eInvalidMessage: 27 str = "eInvalidMessage"; 28 break; 29 case eAttachMessage: 30 str = "eAttachMessage"; 31 break; 32 case eExitMessage: 33 str = "eExitMessage"; 34 break; 35 case eLimboMessage: 36 str = "eLimboMessage"; 37 break; 38 case eSignalMessage: 39 str = "eSignalMessage"; 40 break; 41 case eSignalDeliveredMessage: 42 str = "eSignalDeliveredMessage"; 43 break; 44 case eTraceMessage: 45 str = "eTraceMessage"; 46 break; 47 case eBreakpointMessage: 48 str = "eBreakpointMessage"; 49 break; 50 case eWatchpointMessage: 51 str = "eWatchpointMessage"; 52 break; 53 case eCrashMessage: 54 str = "eCrashMessage"; 55 break; 56 case eNewThreadMessage: 57 str = "eNewThreadMessage"; 58 break; 59 case eExecMessage: 60 str = "eExecMessage"; 61 break; 62 } 63 #endif 64 65 return str; 66 } 67 68 const char *ProcessMessage::PrintKind() const { return PrintKind(m_kind); } 69