LLDB  mainline
OptionValue.h
Go to the documentation of this file.
1 //===-- OptionValue.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_OPTIONVALUE_H
10 #define LLDB_INTERPRETER_OPTIONVALUE_H
11 
12 #include "lldb/Core/FormatEntity.h"
13 #include "lldb/Utility/Cloneable.h"
16 #include "lldb/Utility/Status.h"
17 #include "lldb/lldb-defines.h"
20 
21 namespace lldb_private {
22 
23 // OptionValue
24 class OptionValue {
25 public:
26  enum Type {
48  };
49 
50  enum {
51  eDumpOptionName = (1u << 0),
52  eDumpOptionType = (1u << 1),
53  eDumpOptionValue = (1u << 2),
55  eDumpOptionRaw = (1u << 4),
56  eDumpOptionCommand = (1u << 5),
61  };
62 
63  OptionValue() = default;
64 
65  virtual ~OptionValue() = default;
66 
67  // Subclasses should override these functions
68  virtual Type GetType() const = 0;
69 
70  // If this value is always hidden, the avoid showing any info on this value,
71  // just show the info for the child values.
72  virtual bool ValueIsTransparent() const {
73  return GetType() == eTypeProperties;
74  }
75 
76  virtual const char *GetTypeAsCString() const {
78  }
79 
80  static const char *GetBuiltinTypeAsCString(Type t);
81 
82  virtual void DumpValue(const ExecutionContext *exe_ctx, Stream &strm,
83  uint32_t dump_mask) = 0;
84 
85  virtual Status
86  SetValueFromString(llvm::StringRef value,
88 
89  virtual void Clear() = 0;
90 
91  virtual lldb::OptionValueSP
92  DeepCopy(const lldb::OptionValueSP &new_parent) const;
93 
94  virtual void AutoComplete(CommandInterpreter &interpreter,
95  CompletionRequest &request);
96 
97  // Subclasses can override these functions
98  virtual lldb::OptionValueSP GetSubValue(const ExecutionContext *exe_ctx,
99  llvm::StringRef name,
100  bool will_modify,
101  Status &error) const {
102  error.SetErrorStringWithFormat("'%s' is not a value subvalue", name.str().c_str());
103  return lldb::OptionValueSP();
104  }
105 
106  virtual Status SetSubValue(const ExecutionContext *exe_ctx,
107  VarSetOperationType op, llvm::StringRef name,
108  llvm::StringRef value);
109 
110  virtual bool IsAggregateValue() const { return false; }
111 
112  virtual ConstString GetName() const { return ConstString(); }
113 
114  virtual bool DumpQualifiedName(Stream &strm) const;
115 
116  // Subclasses should NOT override these functions as they use the above
117  // functions to implement functionality
118  uint32_t GetTypeAsMask() { return 1u << GetType(); }
119 
121  return 1u << type;
122  }
123 
125  // If only one bit is set, then return an appropriate enumeration
126  switch (type_mask) {
127  case 1u << eTypeArch:
128  return eTypeArch;
129  case 1u << eTypeArgs:
130  return eTypeArgs;
131  case 1u << eTypeArray:
132  return eTypeArray;
133  case 1u << eTypeBoolean:
134  return eTypeBoolean;
135  case 1u << eTypeChar:
136  return eTypeChar;
137  case 1u << eTypeDictionary:
138  return eTypeDictionary;
139  case 1u << eTypeEnum:
140  return eTypeEnum;
141  case 1u << eTypeFileLineColumn:
142  return eTypeFileLineColumn;
143  case 1u << eTypeFileSpec:
144  return eTypeFileSpec;
145  case 1u << eTypeFileSpecList:
146  return eTypeFileSpecList;
147  case 1u << eTypeFormat:
148  return eTypeFormat;
149  case 1u << eTypeLanguage:
150  return eTypeLanguage;
151  case 1u << eTypePathMap:
152  return eTypePathMap;
153  case 1u << eTypeProperties:
154  return eTypeProperties;
155  case 1u << eTypeRegex:
156  return eTypeRegex;
157  case 1u << eTypeSInt64:
158  return eTypeSInt64;
159  case 1u << eTypeString:
160  return eTypeString;
161  case 1u << eTypeUInt64:
162  return eTypeUInt64;
163  case 1u << eTypeUUID:
164  return eTypeUUID;
165  }
166  // Else return invalid
167  return eTypeInvalid;
168  }
169 
170  static lldb::OptionValueSP
171  CreateValueFromCStringForTypeMask(const char *value_cstr, uint32_t type_mask,
172  Status &error);
173 
174  // Get this value as a uint64_t value if it is encoded as a boolean, uint64_t
175  // or int64_t. Other types will cause "fail_value" to be returned
176  uint64_t GetUInt64Value(uint64_t fail_value, bool *success_ptr);
177 
179 
180  const OptionValueArch *GetAsArch() const;
181 
183 
184  const OptionValueArray *GetAsArray() const;
185 
187 
188  const OptionValueArgs *GetAsArgs() const;
189 
191 
193 
194  const OptionValueBoolean *GetAsBoolean() const;
195 
196  const OptionValueChar *GetAsChar() const;
197 
199 
200  const OptionValueDictionary *GetAsDictionary() const;
201 
203 
205 
207 
208  const OptionValueFileSpec *GetAsFileSpec() const;
209 
211 
213 
215 
216  const OptionValueFormat *GetAsFormat() const;
217 
219 
220  const OptionValueLanguage *GetAsLanguage() const;
221 
223 
225 
227 
228  const OptionValueProperties *GetAsProperties() const;
229 
231 
232  const OptionValueRegex *GetAsRegex() const;
233 
235 
236  const OptionValueSInt64 *GetAsSInt64() const;
237 
239 
240  const OptionValueString *GetAsString() const;
241 
243 
244  const OptionValueUInt64 *GetAsUInt64() const;
245 
247 
248  const OptionValueUUID *GetAsUUID() const;
249 
251 
253 
254  bool GetBooleanValue(bool fail_value = false) const;
255 
256  bool SetBooleanValue(bool new_value);
257 
258  char GetCharValue(char fail_value) const;
259 
260  char SetCharValue(char new_value);
261 
262  int64_t GetEnumerationValue(int64_t fail_value = -1) const;
263 
264  bool SetEnumerationValue(int64_t value);
265 
266  FileSpec GetFileSpecValue() const;
267 
268  bool SetFileSpecValue(const FileSpec &file_spec);
269 
270  FileSpecList GetFileSpecListValue() const;
271 
274 
275  bool SetFormatValue(lldb::Format new_value);
276 
279 
280  bool SetLanguageValue(lldb::LanguageType new_language);
281 
282  const FormatEntity::Entry *GetFormatEntity() const;
283 
284  const RegularExpression *GetRegexValue() const;
285 
286  int64_t GetSInt64Value(int64_t fail_value = 0) const;
287 
288  bool SetSInt64Value(int64_t new_value);
289 
290  llvm::StringRef GetStringValue(llvm::StringRef fail_value) const;
291  llvm::StringRef GetStringValue() const { return GetStringValue(llvm::StringRef()); }
292 
293  bool SetStringValue(llvm::StringRef new_value);
294 
295  uint64_t GetUInt64Value(uint64_t fail_value = 0) const;
296 
297  bool SetUInt64Value(uint64_t new_value);
298 
299  UUID GetUUIDValue() const;
300 
301  bool SetUUIDValue(const UUID &uuid);
302 
303  bool OptionWasSet() const { return m_value_was_set; }
304 
305  void SetOptionWasSet() { m_value_was_set = true; }
306 
307  void SetParent(const lldb::OptionValueSP &parent_sp) {
308  m_parent_wp = parent_sp;
309  }
310 
311  lldb::OptionValueSP GetParent() const { return m_parent_wp.lock(); }
312 
313  void SetValueChangedCallback(std::function<void()> callback) {
314  assert(!m_callback);
315  m_callback = std::move(callback);
316  }
317 
319  if (m_callback)
320  m_callback();
321  }
322 
323 protected:
325 
326  // Must be overriden by a derived class for correct downcasting the result of
327  // DeepCopy to it. Inherit from Cloneable to avoid doing this manually.
328  virtual lldb::OptionValueSP Clone() const = 0;
329 
330  lldb::OptionValueWP m_parent_wp;
331  std::function<void()> m_callback;
332  bool m_value_was_set = false; // This can be used to see if a value has been
333  // set by a call to SetValueFromCString(). It is
334  // often handy to know if an option value was
335  // set from the command line or as a setting,
336  // versus if we just have the default value that
337  // was already populated in the option value.
338 };
339 
340 } // namespace lldb_private
341 
342 #endif // LLDB_INTERPRETER_OPTIONVALUE_H
lldb_private::OptionValueArgs
Definition: OptionValueArgs.h:16
lldb_private::OptionValue::SetStringValue
bool SetStringValue(llvm::StringRef new_value)
Definition: OptionValue.cpp:415
lldb_private::OptionValue::DeepCopy
virtual lldb::OptionValueSP DeepCopy(const lldb::OptionValueSP &new_parent) const
Definition: OptionValue.cpp:570
lldb_private::UUID
Definition: UUID.h:23
lldb_private::OptionValue::GetName
virtual ConstString GetName() const
Definition: OptionValue.h:112
lldb_private::ExecutionContext
Definition: ExecutionContext.h:292
lldb_private::OptionValue::GetFormatValue
lldb::Format GetFormatValue(lldb::Format fail_value=lldb::eFormatDefault) const
Definition: OptionValue.cpp:345
lldb_private::OptionValue::GetAsDictionary
OptionValueDictionary * GetAsDictionary()
Definition: OptionValue.cpp:130
lldb_private::OptionValue::SetOptionWasSet
void SetOptionWasSet()
Definition: OptionValue.h:305
lldb_private::RegularExpression
Definition: RegularExpression.h:18
lldb_private::OptionValue::OptionWasSet
bool OptionWasSet() const
Definition: OptionValue.h:303
lldb_private::OptionValue::OptionValue
OptionValue()=default
lldb::Format
Format
Display format definitions.
Definition: lldb-enumerations.h:155
lldb_private::OptionValue::eDumpGroupExport
@ eDumpGroupExport
Definition: OptionValue.h:60
lldb-private-interfaces.h
lldb-defines.h
lldb_private::OptionValueBoolean
Definition: OptionValueBoolean.h:16
lldb_private::OptionValue::eTypeInvalid
@ eTypeInvalid
Definition: OptionValue.h:27
lldb_private::OptionValue::eTypeBoolean
@ eTypeBoolean
Definition: OptionValue.h:31
lldb_private::OptionValue::GetType
virtual Type GetType() const =0
lldb_private::OptionValue::eTypeFileSpecList
@ eTypeFileSpecList
Definition: OptionValue.h:37
lldb_private::OptionValue::GetAsChar
OptionValueChar * GetAsChar()
Definition: OptionValue.cpp:58
lldb_private::OptionValue::GetAsFormatEntity
OptionValueFormatEntity * GetAsFormatEntity()
Definition: OptionValue.cpp:178
lldb_private::OptionValue::GetFileSpecListValue
FileSpecList GetFileSpecListValue() const
Definition: OptionValue.cpp:338
lldb_private::OptionValue::eTypePathMap
@ eTypePathMap
Definition: OptionValue.h:40
lldb_private::OptionValue::GetParent
lldb::OptionValueSP GetParent() const
Definition: OptionValue.h:311
lldb_private::OptionValue::SetLanguageValue
bool SetLanguageValue(lldb::LanguageType new_language)
Definition: OptionValue.cpp:369
lldb::LanguageType
LanguageType
Programming language type.
Definition: lldb-enumerations.h:436
lldb_private::OptionValue::eTypeUInt64
@ eTypeUInt64
Definition: OptionValue.h:45
lldb_private::OptionValueArch
Definition: OptionValueArch.h:18
lldb_private::OptionValue::GetFileSpecValue
FileSpec GetFileSpecValue() const
Definition: OptionValue.cpp:322
lldb_private::OptionValue::GetUInt64Value
uint64_t GetUInt64Value(uint64_t fail_value, bool *success_ptr)
Definition: OptionValue.cpp:20
lldb_private::OptionValue::eTypeSInt64
@ eTypeSInt64
Definition: OptionValue.h:43
lldb_private::OptionValue::eDumpGroupHelp
@ eDumpGroupHelp
Definition: OptionValue.h:58
lldb_private::Stream
Definition: Stream.h:28
lldb_private::OptionValue::GetStringValue
llvm::StringRef GetStringValue() const
Definition: OptionValue.h:291
lldb_private::OptionValue::GetAsUUID
OptionValueUUID * GetAsUUID()
Definition: OptionValue.cpp:262
lldb_private::OptionValue::SetParent
void SetParent(const lldb::OptionValueSP &parent_sp)
Definition: OptionValue.h:307
lldb_private::OptionValue::GetAsFileSpecList
OptionValueFileSpecList * GetAsFileSpecList()
Definition: OptionValue.cpp:82
lldb_private::OptionValue::GetAsArray
OptionValueArray * GetAsArray()
Definition: OptionValue.cpp:106
lldb-private-enumerations.h
CompletionRequest.h
lldb_private::OptionValueEnumeration
Definition: OptionValueEnumeration.h:22
lldb_private::OptionValue::eTypeRegex
@ eTypeRegex
Definition: OptionValue.h:42
lldb_private::OptionValue::eDumpGroupValue
@ eDumpGroupValue
Definition: OptionValue.h:57
lldb_private::OptionValueFileSpec
Definition: OptionValueFileSpec.h:20
lldb_private::OptionValue::GetFormatEntity
const FormatEntity::Entry * GetFormatEntity() const
Definition: OptionValue.cpp:378
lldb_private::OptionValue::GetAsSInt64
OptionValueSInt64 * GetAsSInt64()
Definition: OptionValue.cpp:226
lldb_private::FileSpec
Definition: FileSpec.h:56
error
static llvm::raw_ostream & error(Stream &strm)
Definition: CommandReturnObject.cpp:17
lldb_private::VarSetOperationType
VarSetOperationType
Settable state variable types.
Definition: lldb-private-enumerations.h:83
lldb_private::OptionValue::eDumpOptionName
@ eDumpOptionName
Definition: OptionValue.h:51
lldb_private::OptionValueLanguage
Definition: OptionValueLanguage.h:18
lldb_private::OptionValue::GetAsEnumeration
OptionValueEnumeration * GetAsEnumeration()
Definition: OptionValue.cpp:142
lldb_private::OptionValue::eTypeFileSpec
@ eTypeFileSpec
Definition: OptionValue.h:36
lldb_private::OptionValue::eTypeFileLineColumn
@ eTypeFileLineColumn
Definition: OptionValue.h:35
lldb_private::OptionValue::NotifyValueChanged
void NotifyValueChanged()
Definition: OptionValue.h:318
lldb_private::OptionValue::AutoComplete
virtual void AutoComplete(CommandInterpreter &interpreter, CompletionRequest &request)
Definition: OptionValue.cpp:576
lldb_private::OptionValueFormat
Definition: OptionValueFormat.h:16
lldb_private::OptionValue::eDumpOptionCommand
@ eDumpOptionCommand
Definition: OptionValue.h:56
lldb_private::OptionValue::SetValueFromString
virtual Status SetValueFromString(llvm::StringRef value, VarSetOperationType op=eVarSetOperationAssign)
Definition: OptionValue.cpp:579
lldb_private::OptionValue::GetSubValue
virtual lldb::OptionValueSP GetSubValue(const ExecutionContext *exe_ctx, llvm::StringRef name, bool will_modify, Status &error) const
Definition: OptionValue.h:98
lldb_private::OptionValue::GetUUIDValue
UUID GetUUIDValue() const
Definition: OptionValue.cpp:440
Cloneable.h
lldb_private::OptionValue::SetUUIDValue
bool SetUUIDValue(const UUID &uuid)
Definition: OptionValue.cpp:447
lldb_private::OptionValueProperties
Definition: OptionValueProperties.h:23
lldb_private::OptionValue::GetAsArch
OptionValueArch * GetAsArch()
Definition: OptionValue.cpp:94
lldb_private::ConstString
Definition: ConstString.h:40
lldb_private::OptionValue::SetCharValue
char SetCharValue(char new_value)
Definition: OptionValue.cpp:297
lldb_private::OptionValue::GetBooleanValue
bool GetBooleanValue(bool fail_value=false) const
Definition: OptionValue.cpp:274
lldb_private::OptionValue::GetRegexValue
const RegularExpression * GetRegexValue() const
Definition: OptionValue.cpp:385
lldb_private::OptionValue::GetAsUInt64
OptionValueUInt64 * GetAsUInt64()
Definition: OptionValue.cpp:250
lldb_private::OptionValue::eTypeUUID
@ eTypeUUID
Definition: OptionValue.h:46
lldb_private::OptionValueUUID
Definition: OptionValueUUID.h:17
lldb_private::CommandInterpreter
Definition: CommandInterpreter.h:214
lldb_private::OptionValueSInt64
Definition: OptionValueSInt64.h:17
lldb_private::OptionValue::ConvertTypeToMask
static uint32_t ConvertTypeToMask(OptionValue::Type type)
Definition: OptionValue.h:120
lldb_private::OptionValue::eDumpOptionValue
@ eDumpOptionValue
Definition: OptionValue.h:53
lldb_private::OptionValue::eDumpOptionRaw
@ eDumpOptionRaw
Definition: OptionValue.h:55
lldb_private::OptionValueString
Definition: OptionValueString.h:20
lldb_private::OptionValue::SetBooleanValue
bool SetBooleanValue(bool new_value)
Definition: OptionValue.cpp:281
lldb_private::OptionValueChar
Definition: OptionValueChar.h:16
lldb_private::OptionValue::SetUInt64Value
bool SetUInt64Value(uint64_t new_value)
Definition: OptionValue.cpp:431
lldb_private::OptionValue::Clone
virtual lldb::OptionValueSP Clone() const =0
lldb_private::OptionValue::eTypeFormat
@ eTypeFormat
Definition: OptionValue.h:38
lldb_private::OptionValue::SetSubValue
virtual Status SetSubValue(const ExecutionContext *exe_ctx, VarSetOperationType op, llvm::StringRef name, llvm::StringRef value)
Definition: OptionValue.cpp:38
lldb_private::OptionValue::ConvertTypeMaskToType
static OptionValue::Type ConvertTypeMaskToType(uint32_t type_mask)
Definition: OptionValue.h:124
lldb_private::OptionValue::eDumpOptionDescription
@ eDumpOptionDescription
Definition: OptionValue.h:54
lldb_private::OptionValue::GetTypeAsCString
virtual const char * GetTypeAsCString() const
Definition: OptionValue.h:76
lldb_private::OptionValue::SetFormatValue
bool SetFormatValue(lldb::Format new_value)
Definition: OptionValue.cpp:352
lldb_private::OptionValue::GetTypeAsMask
uint32_t GetTypeAsMask()
Definition: OptionValue.h:118
lldb_private::OptionValue::eTypeArch
@ eTypeArch
Definition: OptionValue.h:28
lldb_private::OptionValue::eTypeArray
@ eTypeArray
Definition: OptionValue.h:30
lldb_private::OptionValue::Clear
virtual void Clear()=0
lldb_private::OptionValue::ValueIsTransparent
virtual bool ValueIsTransparent() const
Definition: OptionValue.h:72
lldb_private::Status
Definition: Status.h:44
lldb_private::OptionValue::Type
Type
Definition: OptionValue.h:26
lldb_private::OptionValue::eTypeDictionary
@ eTypeDictionary
Definition: OptionValue.h:33
lldb::eLanguageTypeUnknown
@ eLanguageTypeUnknown
Unknown or invalid language value.
Definition: lldb-enumerations.h:437
lldb_private::OptionValue::eTypeChar
@ eTypeChar
Definition: OptionValue.h:32
lldb_private::OptionValue::GetAsPathMappings
OptionValuePathMappings * GetAsPathMappings()
Definition: OptionValue.cpp:190
uint32_t
lldb_private::OptionValue::m_value_was_set
bool m_value_was_set
Definition: OptionValue.h:332
lldb_private::OptionValue::eTypeString
@ eTypeString
Definition: OptionValue.h:44
lldb_private::OptionValue::eDumpOptionType
@ eDumpOptionType
Definition: OptionValue.h:52
lldb_private::OptionValue::GetAsArgs
OptionValueArgs * GetAsArgs()
Definition: OptionValue.cpp:118
lldb_private::OptionValue::GetAsRegex
OptionValueRegex * GetAsRegex()
Definition: OptionValue.cpp:214
lldb_private::Type
Definition: Type.h:66
lldb_private::OptionValue::~OptionValue
virtual ~OptionValue()=default
lldb_private::FormatEntity::Entry
Definition: FormatEntity.h:40
lldb_private::OptionValue::SetValueChangedCallback
void SetValueChangedCallback(std::function< void()> callback)
Definition: OptionValue.h:313
FormatEntity.h
lldb_private::OptionValue::DumpValue
virtual void DumpValue(const ExecutionContext *exe_ctx, Stream &strm, uint32_t dump_mask)=0
lldb_private::OptionValuePathMappings
Definition: OptionValuePathMappings.h:17
lldb_private::OptionValueFileSpecList
Definition: OptionValueFileSpecList.h:19
Status.h
lldb_private::OptionValue::GetAsBoolean
OptionValueBoolean * GetAsBoolean()
Definition: OptionValue.cpp:46
lldb_private::OptionValue::GetAsString
OptionValueString * GetAsString()
Definition: OptionValue.cpp:238
lldb_private
A class that represents a running process on the host machine.
Definition: SBCommandInterpreterRunOptions.h:16
lldb_private::OptionValue::IsAggregateValue
virtual bool IsAggregateValue() const
Definition: OptionValue.h:110
lldb_private::OptionValue::GetAsProperties
OptionValueProperties * GetAsProperties()
Definition: OptionValue.cpp:202
lldb_private::OptionValueUInt64
Definition: OptionValueUInt64.h:17
lldb_private::OptionValue::GetLanguageValue
lldb::LanguageType GetLanguageValue(lldb::LanguageType fail_value=lldb::eLanguageTypeUnknown) const
Definition: OptionValue.cpp:362
lldb_private::OptionValueDictionary
Definition: OptionValueDictionary.h:18
lldb_private::OptionValueFormatEntity
Definition: OptionValueFormatEntity.h:17
ConstString.h
lldb_private::OptionValue::GetEnumerationValue
int64_t GetEnumerationValue(int64_t fail_value=-1) const
Definition: OptionValue.cpp:306
lldb_private::OptionValue::GetBuiltinTypeAsCString
static const char * GetBuiltinTypeAsCString(Type t)
Definition: OptionValue.cpp:456
lldb_private::OptionValue::SetEnumerationValue
bool SetEnumerationValue(int64_t value)
Definition: OptionValue.cpp:313
lldb_private::OptionValue::eTypeFormatEntity
@ eTypeFormatEntity
Definition: OptionValue.h:47
lldb_private::OptionValue::eTypeLanguage
@ eTypeLanguage
Definition: OptionValue.h:39
lldb_private::OptionValue
Definition: OptionValue.h:24
lldb_private::OptionValue::eTypeProperties
@ eTypeProperties
Definition: OptionValue.h:41
lldb_private::OptionValue::m_parent_wp
lldb::OptionValueWP m_parent_wp
Definition: OptionValue.h:330
lldb_private::OptionValue::CreateValueFromCStringForTypeMask
static lldb::OptionValueSP CreateValueFromCStringForTypeMask(const char *value_cstr, uint32_t type_mask, Status &error)
Definition: OptionValue.cpp:504
lldb_private::OptionValue::DumpQualifiedName
virtual bool DumpQualifiedName(Stream &strm) const
Definition: OptionValue.cpp:552
lldb_private::OptionValue::GetAsFormat
OptionValueFormat * GetAsFormat()
Definition: OptionValue.cpp:154
lldb_private::OptionValue::GetCharValue
char GetCharValue(char fail_value) const
Definition: OptionValue.cpp:290
lldb_private::OptionValue::GetSInt64Value
int64_t GetSInt64Value(int64_t fail_value=0) const
Definition: OptionValue.cpp:392
lldb_private::OptionValue::SetSInt64Value
bool SetSInt64Value(int64_t new_value)
Definition: OptionValue.cpp:399
lldb_private::OptionValue::GetAsLanguage
OptionValueLanguage * GetAsLanguage()
Definition: OptionValue.cpp:166
lldb::eFormatDefault
@ eFormatDefault
Definition: lldb-enumerations.h:156
lldb_private::OptionValue::GetAsFileSpec
OptionValueFileSpec * GetAsFileSpec()
Definition: OptionValue.cpp:70
lldb_private::OptionValue::eTypeEnum
@ eTypeEnum
Definition: OptionValue.h:34
lldb_private::OptionValue::m_callback
std::function< void()> m_callback
Definition: OptionValue.h:331
lldb_private::CompletionRequest
Definition: CompletionRequest.h:100
lldb_private::OptionValueRegex
Definition: OptionValueRegex.h:17
lldb_private::OptionValue::SetFileSpecValue
bool SetFileSpecValue(const FileSpec &file_spec)
Definition: OptionValue.cpp:329
lldb_private::eVarSetOperationAssign
@ eVarSetOperationAssign
Definition: lldb-private-enumerations.h:90
lldb_private::OptionValueArray
Definition: OptionValueArray.h:18
lldb_private::OptionValue::eTypeArgs
@ eTypeArgs
Definition: OptionValue.h:29