1 //===-- OptionValueBoolean.h ------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef liblldb_OptionValueChar_h_
11 #define liblldb_OptionValueChar_h_
15 // Other libraries and framework includes
17 #include "lldb/Interpreter/OptionValue.h"
19 namespace lldb_private {
21 class OptionValueChar : public OptionValue
24 OptionValueChar (char value) :
26 m_current_value (value),
27 m_default_value (value)
30 OptionValueChar (char current_value,
33 m_current_value (current_value),
34 m_default_value (default_value)
43 //---------------------------------------------------------------------
44 // Virtual subclass pure virtual overrides
45 //---------------------------------------------------------------------
47 virtual OptionValue::Type
54 DumpValue (const ExecutionContext *exe_ctx, Stream &strm, uint32_t dump_mask);
57 SetValueFromCString (const char *value,
58 VarSetOperationType op = eVarSetOperationAssign);
63 m_current_value = m_default_value;
64 m_value_was_set = false;
68 //---------------------------------------------------------------------
69 // Subclass specific functions
70 //---------------------------------------------------------------------
76 return m_current_value;
80 GetCurrentValue() const
82 return m_current_value;
86 GetDefaultValue() const
88 return m_default_value;
92 SetCurrentValue (char value)
94 m_current_value = value;
98 SetDefaultValue (char value)
100 m_default_value = value;
103 virtual lldb::OptionValueSP
107 char m_current_value;
108 char m_default_value;
111 } // namespace lldb_private
113 #endif // liblldb_OptionValueChar_h_