LLDB API Documentation

- Main Page
- Namespaces
- Classes
- Files

- File List

SBTypeFormat.h
Go to the documentation of this file.
1 //===-- SBTypeFormat.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_SBTypeFormat_h_
12 #define LLDB_SBTypeFormat_h_
13
14 #include "lldb/API/SBDefines.h"
15
16 namespace lldb {
17
18 class LLDB_API SBTypeFormat {
19 public:
20 SBTypeFormat();
21
22 SBTypeFormat(lldb::Format format,
23 uint32_t options = 0); // see lldb::eTypeOption values
24
25 SBTypeFormat(const char *type,
26 uint32_t options = 0); // see lldb::eTypeOption values
27
28 SBTypeFormat(const lldb::SBTypeFormat &rhs);
29
30 ~SBTypeFormat();
31
32 bool IsValid() const;
33
34 lldb::Format GetFormat();
35
36 const char *GetTypeName();
37
38 uint32_t GetOptions();
39
40 void SetFormat(lldb::Format);
41
42 void SetTypeName(const char *);
43
44 void SetOptions(uint32_t);
45
46 bool GetDescription(lldb::SBStream &description,
47 lldb::DescriptionLevel description_level);
48
49 lldb::SBTypeFormat &operator=(const lldb::SBTypeFormat &rhs);
50
51 bool IsEqualTo(lldb::SBTypeFormat &rhs);
52
53 bool operator==(lldb::SBTypeFormat &rhs);
54
55 bool operator!=(lldb::SBTypeFormat &rhs);
56
57 protected:
58 friend class SBDebugger;
59 friend class SBTypeCategory;
60 friend class SBValue;
61
62 lldb::TypeFormatImplSP GetSP();
63
64 void SetSP(const lldb::TypeFormatImplSP &typeformat_impl_sp);
65
66 lldb::TypeFormatImplSP m_opaque_sp;
67
68 SBTypeFormat(const lldb::TypeFormatImplSP &);
69
70 enum class Type { eTypeKeepSame, eTypeFormat, eTypeEnum };
71
72 bool CopyOnWrite_Impl(Type);
73 };
74
75 } // namespace lldb
76
77 #endif // LLDB_SBTypeFormat_h_
lldb::SBTypeCategory
Definition: SBTypeCategory.h:18
SBDefines.h
lldb::SBValue
Definition: SBValue.h:22
lldb::SBDebugger
Definition: SBDebugger.h:35
lldb::SBTypeFormat
class LLDB_API SBTypeFormat
Definition: SBDefines.h:87
lldb::SBTypeFormat::Type
Type
Definition: SBTypeFormat.h:70
lldb::SBStream
Definition: SBStream.h:19
lldb::SBTypeFormat::m_opaque_sp
lldb::TypeFormatImplSP m_opaque_sp
Definition: SBTypeFormat.h:66
lldb::SBTypeFormat
Definition: SBTypeFormat.h:18