LLDB API Documentation

- Main Page
- Namespaces
- Classes
- Files

- File List

SBValueList.h
Go to the documentation of this file.
1 //===-- SBValueList.h -------------------------------------------*- C++ -*-===//
2 //
3 // The LLVM Compiler Infrastructure
4 //
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
7 //
8 //===----------------------------------------------------------------------===//
9
10 #ifndef LLDB_SBValueList_h_
11 #define LLDB_SBValueList_h_
12
13 #include "lldb/API/SBDefines.h"
14
15 class ValueListImpl;
16
17 namespace lldb {
18
19 class LLDB_API SBValueList {
20 public:
21 SBValueList();
22
23 SBValueList(const lldb::SBValueList &rhs);
24
25 ~SBValueList();
26
27 bool IsValid() const;
28
29 void Clear();
30
31 void Append(const lldb::SBValue &val_obj);
32
33 void Append(const lldb::SBValueList &value_list);
34
35 uint32_t GetSize() const;
36
37 lldb::SBValue GetValueAtIndex(uint32_t idx) const;
38
39 lldb::SBValue GetFirstValueByName(const char *name) const;
40
41 lldb::SBValue FindValueObjectByUID(lldb::user_id_t uid);
42
43 const lldb::SBValueList &operator=(const lldb::SBValueList &rhs);
44
45 protected:
46 // only useful for visualizing the pointer or comparing two SBValueLists
47 // to see if they are backed by the same underlying Impl.
48 void *opaque_ptr();
49
50 private:
51 friend class SBFrame;
52
53 SBValueList(const ValueListImpl *lldb_object_ptr);
54
55 void Append(lldb::ValueObjectSP &val_obj_sp);
56
57 void CreateIfNeeded();
58
59 ValueListImpl *operator->();
60
61 ValueListImpl &operator*();
62
63 const ValueListImpl *operator->() const;
64
65 const ValueListImpl &operator*() const;
66
67 ValueListImpl &ref();
68
69 std::unique_ptr<ValueListImpl> m_opaque_ap;
70 };
71
72 } // namespace lldb
73
74 #endif // LLDB_SBValueList_h_
lldb::SBFrame
Definition: SBFrame.h:18
SBDefines.h
lldb::SBValueList
class LLDB_API SBValueList
Definition: SBDefines.h:95
lldb::SBValue
Definition: SBValue.h:22
lldb::SBValueList
Definition: SBValueList.h:19