LLDB API Documentation

SBTypeSynthetic.h
Go to the documentation of this file.
1 //===-- SBTypeSynthetic.h -----------------------------------------*- C++
2 //-*-===//
3 //
4 // The LLVM Compiler Infrastructure
5 //
6 // This file is distributed under the University of Illinois Open Source
7 // License. See LICENSE.TXT for details.
8 //
9 //===----------------------------------------------------------------------===//
10 
11 #ifndef LLDB_SBTypeSynthetic_h_
12 #define LLDB_SBTypeSynthetic_h_
13 
14 #include "lldb/API/SBDefines.h"
15 
16 #ifndef LLDB_DISABLE_PYTHON
17 
18 namespace lldb {
19 
20 class LLDB_API SBTypeSynthetic {
21 public:
23 
24  static SBTypeSynthetic
25  CreateWithClassName(const char *data,
26  uint32_t options = 0); // see lldb::eTypeOption values
27 
28  static SBTypeSynthetic
29  CreateWithScriptCode(const char *data,
30  uint32_t options = 0); // see lldb::eTypeOption values
31 
33 
34  ~SBTypeSynthetic();
35 
36  bool IsValid() const;
37 
38  bool IsClassCode();
39 
40  bool IsClassName();
41 
42  const char *GetData();
43 
44  void SetClassName(const char *data);
45 
46  void SetClassCode(const char *data);
47 
48  uint32_t GetOptions();
49 
50  void SetOptions(uint32_t);
51 
52  bool GetDescription(lldb::SBStream &description,
53  lldb::DescriptionLevel description_level);
54 
55  lldb::SBTypeSynthetic &operator=(const lldb::SBTypeSynthetic &rhs);
56 
57  bool IsEqualTo(lldb::SBTypeSynthetic &rhs);
58 
59  bool operator==(lldb::SBTypeSynthetic &rhs);
60 
61  bool operator!=(lldb::SBTypeSynthetic &rhs);
62 
63 protected:
64  friend class SBDebugger;
65  friend class SBTypeCategory;
66  friend class SBValue;
67 
68  lldb::ScriptedSyntheticChildrenSP GetSP();
69 
70  void SetSP(const lldb::ScriptedSyntheticChildrenSP &typefilter_impl_sp);
71 
72  lldb::ScriptedSyntheticChildrenSP m_opaque_sp;
73 
74  SBTypeSynthetic(const lldb::ScriptedSyntheticChildrenSP &);
75 
76  bool CopyOnWrite_Impl();
77 };
78 
79 } // namespace lldb
80 
81 #endif // LLDB_DISABLE_PYTHON
82 
83 #endif // LLDB_SBTypeSynthetic_h_
lldb::ScriptedSyntheticChildrenSP m_opaque_sp
class LLDB_API SBTypeSynthetic
Definition: SBDefines.h:92