LLDB
mainline
llvm-project
lldb
include
lldb
Interpreter
OptionValueUUID.h
Go to the documentation of this file.
1
//===-- OptionValueUUID.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_OPTIONVALUEUUID_H
10
#define LLDB_INTERPRETER_OPTIONVALUEUUID_H
11
12
#include "
lldb/Utility/UUID.h
"
13
#include "
lldb/Interpreter/OptionValue.h
"
14
15
namespace
lldb_private
{
16
17
class
OptionValueUUID
:
public
Cloneable
<OptionValueUUID, OptionValue> {
18
public
:
19
OptionValueUUID
() =
default
;
20
21
OptionValueUUID
(
const
UUID
&uuid) :
m_uuid
(uuid) {}
22
23
~OptionValueUUID
()
override
=
default
;
24
25
// Virtual subclass pure virtual overrides
26
27
OptionValue::Type
GetType
()
const override
{
return
eTypeUUID
; }
28
29
void
DumpValue
(
const
ExecutionContext
*exe_ctx,
Stream
&strm,
30
uint32_t dump_mask)
override
;
31
32
llvm::json::Value
ToJSON
(
const
ExecutionContext
*exe_ctx)
const override
{
33
return
m_uuid
.GetAsString();
34
}
35
36
Status
37
SetValueFromString
(llvm::StringRef value,
38
VarSetOperationType
op =
eVarSetOperationAssign
)
override
;
39
40
void
Clear
()
override
{
41
m_uuid
.Clear();
42
m_value_was_set
=
false
;
43
}
44
45
// Subclass specific functions
46
47
UUID
&
GetCurrentValue
() {
return
m_uuid
; }
48
49
const
UUID
&
GetCurrentValue
()
const
{
return
m_uuid
; }
50
51
void
SetCurrentValue
(
const
UUID
&value) {
m_uuid
= value; }
52
53
void
AutoComplete
(
CommandInterpreter
&interpreter,
54
CompletionRequest
&request)
override
;
55
56
protected
:
57
UUID
m_uuid
;
58
};
59
60
}
// namespace lldb_private
61
62
#endif
// LLDB_INTERPRETER_OPTIONVALUEUUID_H
OptionValue.h
UUID.h
lldb_private::Cloneable
A class that implements CRTP-based "virtual constructor" idiom.
Definition
Cloneable.h:40
lldb_private::CommandInterpreter
Definition
CommandInterpreter.h:231
lldb_private::CompletionRequest
"lldb/Utility/ArgCompletionRequest.h"
Definition
CompletionRequest.h:100
lldb_private::ExecutionContext
"lldb/Target/ExecutionContext.h" A class that contains an execution context.
Definition
ExecutionContext.h:293
lldb_private::OptionValueUUID::SetCurrentValue
void SetCurrentValue(const UUID &value)
Definition
OptionValueUUID.h:51
lldb_private::OptionValueUUID::OptionValueUUID
OptionValueUUID(const UUID &uuid)
Definition
OptionValueUUID.h:21
lldb_private::OptionValueUUID::GetCurrentValue
UUID & GetCurrentValue()
Definition
OptionValueUUID.h:47
lldb_private::OptionValueUUID::OptionValueUUID
OptionValueUUID()=default
lldb_private::OptionValueUUID::~OptionValueUUID
~OptionValueUUID() override=default
lldb_private::OptionValueUUID::GetCurrentValue
const UUID & GetCurrentValue() const
Definition
OptionValueUUID.h:49
lldb_private::OptionValueUUID::ToJSON
llvm::json::Value ToJSON(const ExecutionContext *exe_ctx) const override
Definition
OptionValueUUID.h:32
lldb_private::OptionValueUUID::SetValueFromString
Status SetValueFromString(llvm::StringRef value, VarSetOperationType op=eVarSetOperationAssign) override
Definition
OptionValueUUID.cpp:30
lldb_private::OptionValueUUID::Clear
void Clear() override
Definition
OptionValueUUID.h:40
lldb_private::OptionValueUUID::m_uuid
UUID m_uuid
Definition
OptionValueUUID.h:57
lldb_private::OptionValueUUID::DumpValue
void DumpValue(const ExecutionContext *exe_ctx, Stream &strm, uint32_t dump_mask) override
Definition
OptionValueUUID.cpp:19
lldb_private::OptionValueUUID::GetType
OptionValue::Type GetType() const override
Definition
OptionValueUUID.h:27
lldb_private::OptionValueUUID::AutoComplete
void AutoComplete(CommandInterpreter &interpreter, CompletionRequest &request) override
Definition
OptionValueUUID.cpp:61
lldb_private::OptionValue::m_value_was_set
bool m_value_was_set
Definition
OptionValue.h:359
lldb_private::OptionValue::Type
Type
Definition
OptionValue.h:34
lldb_private::OptionValue::eTypeUUID
@ eTypeUUID
Definition
OptionValue.h:54
lldb_private::Status
An error handling class.
Definition
Status.h:118
lldb_private::Stream
A stream class that can stream formatted output to a file.
Definition
Stream.h:28
lldb_private::UUID
Represents UUID's of various sizes.
Definition
UUID.h:27
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
Generated on
for LLDB by
1.14.0