aboutsummaryrefslogtreecommitdiff
path: root/tools/lldb-mi/MICmnMIValueConst.cpp
diff options
context:
space:
mode:
authorEd Maste <emaste@FreeBSD.org>2014-11-25 21:00:58 +0000
committerEd Maste <emaste@FreeBSD.org>2014-11-25 21:00:58 +0000
commit0cac4ca3916ac24ab6139d03cbfd18db9e715bfe (patch)
treec94307da318be46e5aeea1a325c1e91749506e4f /tools/lldb-mi/MICmnMIValueConst.cpp
parent03b99097822ca3ac69252d9afae716a584ed56c4 (diff)
downloadsrc-0cac4ca3916ac24ab6139d03cbfd18db9e715bfe.tar.gz
src-0cac4ca3916ac24ab6139d03cbfd18db9e715bfe.zip
Import LLDB as of upstream SVN r216948 (git 50f7fe44)vendor/lldb/lldb-r216948
This corresponds with the branchpoint for the 3.5 release. A number of files not required for the FreeBSD build have been removed. Sponsored by: DARPA, AFRL
Notes
Notes: svn path=/vendor/lldb/dist/; revision=275072 svn path=/vendor/lldb/lldb-r216948/; revision=275074; tag=vendor/lldb/lldb-r216948
Diffstat (limited to 'tools/lldb-mi/MICmnMIValueConst.cpp')
-rw-r--r--tools/lldb-mi/MICmnMIValueConst.cpp98
1 files changed, 98 insertions, 0 deletions
diff --git a/tools/lldb-mi/MICmnMIValueConst.cpp b/tools/lldb-mi/MICmnMIValueConst.cpp
new file mode 100644
index 000000000000..afac8df07d78
--- /dev/null
+++ b/tools/lldb-mi/MICmnMIValueConst.cpp
@@ -0,0 +1,98 @@
+//===-- Platform.cpp --------------------------------------------*- C++ -*-===//
+//
+// The LLVM Compiler Infrastructure
+//
+// This file is distributed under the University of Illinois Open Source
+// License. See LICENSE.TXT for details.
+//
+//===----------------------------------------------------------------------===//
+
+//++
+// File: MICmnMIValueConst.h
+//
+// Overview: CMICmnMIValueConst implementation.
+//
+// Environment: Compilers: Visual C++ 12.
+// gcc (Ubuntu/Linaro 4.8.1-10ubuntu9) 4.8.1
+// Libraries: See MIReadmetxt.
+//
+// Copyright: None.
+//--
+
+// In-house headers:
+#include "MICmnMIValueConst.h"
+
+// Instantiations:
+const CMIUtilString CMICmnMIValueConst::ms_constStrDblQuote( "\"" );
+
+//++ ------------------------------------------------------------------------------------
+// Details: CMICmnMIValueConst constructor.
+// Type: Method.
+// Args: vString - (R) MI Const c-string value.
+// Return: None.
+// Throws: None.
+//--
+CMICmnMIValueConst::CMICmnMIValueConst( const CMIUtilString & vString )
+: m_strPartConst( vString )
+, m_bNoQuotes( false )
+{
+ BuildConst();
+}
+
+//++ ------------------------------------------------------------------------------------
+// Details: CMICmnMIValueConst constructor.
+// Type: Method.
+// Args: vString - (R) MI Const c-string value.
+// vbNoQuotes - (R) True = return string not surrounded with quotes, false = use quotes.
+// Return: None.
+// Throws: None.
+//--
+CMICmnMIValueConst::CMICmnMIValueConst( const CMIUtilString & vString, const bool vbNoQuotes )
+: m_strPartConst( vString )
+, m_bNoQuotes( vbNoQuotes )
+{
+ BuildConst();
+}
+
+//++ ------------------------------------------------------------------------------------
+// Details: CMICmnMIValueConst destructor.
+// Type: Overrideable.
+// Args: None.
+// Return: None.
+// Throws: None.
+//--
+CMICmnMIValueConst::~CMICmnMIValueConst( void )
+{
+}
+
+//++ ------------------------------------------------------------------------------------
+// Details: Build the Value Const data.
+// Type: Method.
+// Args: None.
+// Return: MIstatus::success - Functional succeeded.
+// MIstatus::failure - Functional failed.
+// Throws: None.
+//--
+bool CMICmnMIValueConst::BuildConst( void )
+{
+ if( m_strPartConst.length() != 0 )
+ {
+ const CMIUtilString strValue( m_strPartConst.StripCREndOfLine() );
+ if( m_bNoQuotes )
+ {
+ m_strValue = strValue;
+ }
+ else
+ {
+ const MIchar * pFormat = "%s%s%s";
+ m_strValue = CMIUtilString::Format( pFormat, ms_constStrDblQuote.c_str(), strValue.c_str(), ms_constStrDblQuote.c_str() );
+ }
+ }
+ else
+ {
+ const MIchar * pFormat = "%s%s";
+ m_strValue = CMIUtilString::Format( pFormat, ms_constStrDblQuote.c_str(), ms_constStrDblQuote.c_str() );
+ }
+
+ return MIstatus::success;
+} \ No newline at end of file