LLDB
mainline
llvm-project
lldb
include
lldb
Interpreter
OptionValueFormat.h
Go to the documentation of this file.
1
//===-- OptionValueFormat.h -------------------------------------*- 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
#ifndef LLDB_INTERPRETER_OPTIONVALUEFORMAT_H
10
#define LLDB_INTERPRETER_OPTIONVALUEFORMAT_H
11
12
#include "
lldb/Interpreter/OptionValue.h
"
13
14
namespace
lldb_private
{
15
16
class
OptionValueFormat
17
:
public
Cloneable
<OptionValueFormat, OptionValue> {
18
public
:
19
OptionValueFormat
(
lldb::Format
value)
20
:
m_current_value
(value),
m_default_value
(value) {}
21
22
OptionValueFormat
(
lldb::Format
current_value,
lldb::Format
default_value)
23
:
m_current_value
(current_value),
m_default_value
(default_value) {}
24
25
~OptionValueFormat
()
override
=
default
;
26
27
// Virtual subclass pure virtual overrides
28
29
OptionValue::Type
GetType
()
const override
{
return
eTypeFormat
; }
30
31
void
DumpValue
(
const
ExecutionContext
*exe_ctx,
Stream
&strm,
32
uint32_t dump_mask)
override
;
33
34
llvm::json::Value
ToJSON
(
const
ExecutionContext
*exe_ctx)
override
;
35
36
Status
37
SetValueFromString
(llvm::StringRef value,
38
VarSetOperationType
op =
eVarSetOperationAssign
)
override
;
39
40
void
Clear
()
override
{
41
m_current_value
=
m_default_value
;
42
m_value_was_set
=
false
;
43
}
44
45
// Subclass specific functions
46
47
lldb::Format
GetCurrentValue
()
const
{
return
m_current_value
; }
48
49
lldb::Format
GetDefaultValue
()
const
{
return
m_default_value
; }
50
51
void
SetCurrentValue
(
lldb::Format
value) {
m_current_value
= value; }
52
53
void
SetDefaultValue
(
lldb::Format
value) {
m_default_value
= value; }
54
55
protected
:
56
lldb::Format
m_current_value
;
57
lldb::Format
m_default_value
;
58
};
59
60
}
// namespace lldb_private
61
62
#endif
// LLDB_INTERPRETER_OPTIONVALUEFORMAT_H
OptionValue.h
lldb_private::Cloneable
A class that implements CRTP-based "virtual constructor" idiom.
Definition:
Cloneable.h:40
lldb_private::ExecutionContext
"lldb/Target/ExecutionContext.h" A class that contains an execution context.
Definition:
ExecutionContext.h:292
lldb_private::OptionValueFormat
Definition:
OptionValueFormat.h:17
lldb_private::OptionValueFormat::m_current_value
lldb::Format m_current_value
Definition:
OptionValueFormat.h:56
lldb_private::OptionValueFormat::ToJSON
llvm::json::Value ToJSON(const ExecutionContext *exe_ctx) override
Definition:
OptionValueFormat.cpp:29
lldb_private::OptionValueFormat::OptionValueFormat
OptionValueFormat(lldb::Format value)
Definition:
OptionValueFormat.h:19
lldb_private::OptionValueFormat::SetValueFromString
Status SetValueFromString(llvm::StringRef value, VarSetOperationType op=eVarSetOperationAssign) override
Definition:
OptionValueFormat.cpp:33
lldb_private::OptionValueFormat::DumpValue
void DumpValue(const ExecutionContext *exe_ctx, Stream &strm, uint32_t dump_mask) override
Definition:
OptionValueFormat.cpp:18
lldb_private::OptionValueFormat::~OptionValueFormat
~OptionValueFormat() override=default
lldb_private::OptionValueFormat::Clear
void Clear() override
Definition:
OptionValueFormat.h:40
lldb_private::OptionValueFormat::GetType
OptionValue::Type GetType() const override
Definition:
OptionValueFormat.h:29
lldb_private::OptionValueFormat::SetCurrentValue
void SetCurrentValue(lldb::Format value)
Definition:
OptionValueFormat.h:51
lldb_private::OptionValueFormat::GetDefaultValue
lldb::Format GetDefaultValue() const
Definition:
OptionValueFormat.h:49
lldb_private::OptionValueFormat::m_default_value
lldb::Format m_default_value
Definition:
OptionValueFormat.h:57
lldb_private::OptionValueFormat::GetCurrentValue
lldb::Format GetCurrentValue() const
Definition:
OptionValueFormat.h:47
lldb_private::OptionValueFormat::OptionValueFormat
OptionValueFormat(lldb::Format current_value, lldb::Format default_value)
Definition:
OptionValueFormat.h:22
lldb_private::OptionValueFormat::SetDefaultValue
void SetDefaultValue(lldb::Format value)
Definition:
OptionValueFormat.h:53
lldb_private::OptionValue::m_value_was_set
bool m_value_was_set
Definition:
OptionValue.h:347
lldb_private::OptionValue::Type
Type
Definition:
OptionValue.h:33
lldb_private::OptionValue::eTypeFormat
@ eTypeFormat
Definition:
OptionValue.h:45
lldb_private::Status
An error handling class.
Definition:
Status.h:115
lldb_private::Stream
A stream class that can stream formatted output to a file.
Definition:
Stream.h:28
lldb_private
A class that represents a running process on the host machine.
Definition:
SBAddressRange.h:14
lldb_private::VarSetOperationType
VarSetOperationType
Settable state variable types.
Definition:
lldb-private-enumerations.h:86
lldb_private::eVarSetOperationAssign
@ eVarSetOperationAssign
Definition:
lldb-private-enumerations.h:93
lldb::Format
Format
Display format definitions.
Definition:
lldb-enumerations.h:156
Generated on Fri Dec 20 2024 17:26:47 for LLDB by
1.9.6