xref: /openbsd-src/gnu/llvm/lldb/bindings/interface/SBTypeSummary.i (revision 061da546b983eb767bad15e67af1174fb0bcf31c)
1 //===-- SWIG Interface for SBTypeSummary---------------------------*- 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 namespace lldb {
10     class SBTypeSummaryOptions
11     {
12     public:
13         SBTypeSummaryOptions();
14 
15         SBTypeSummaryOptions (const lldb::SBTypeSummaryOptions &rhs);
16 
17         ~SBTypeSummaryOptions ();
18 
19         bool
20         IsValid ();
21 
22         explicit operator bool() const;
23 
24         lldb::LanguageType
25         GetLanguage ();
26 
27         lldb::TypeSummaryCapping
28         GetCapping ();
29 
30         void
31         SetLanguage (lldb::LanguageType);
32 
33         void
34         SetCapping (lldb::TypeSummaryCapping);
35     };
36 
37     %feature("docstring",
38     "Represents a summary that can be associated to one or more types.") SBTypeSummary;
39 
40     class SBTypeSummary
41     {
42     public:
43 
44         SBTypeSummary();
45 
46         static SBTypeSummary
47         CreateWithSummaryString (const char* data, uint32_t options = 0);
48 
49         static SBTypeSummary
50         CreateWithFunctionName (const char* data, uint32_t options = 0);
51 
52         static SBTypeSummary
53         CreateWithScriptCode (const char* data, uint32_t options = 0);
54 
55         SBTypeSummary (const lldb::SBTypeSummary &rhs);
56 
57         ~SBTypeSummary ();
58 
59         bool
60         IsValid() const;
61 
62         explicit operator bool() const;
63 
64         bool
65         IsEqualTo (lldb::SBTypeSummary &rhs);
66 
67         bool
68         IsFunctionCode();
69 
70         bool
71         IsFunctionName();
72 
73         bool
74         IsSummaryString();
75 
76         const char*
77         GetData ();
78 
79         void
80         SetSummaryString (const char* data);
81 
82         void
83         SetFunctionName (const char* data);
84 
85         void
86         SetFunctionCode (const char* data);
87 
88         uint32_t
89         GetOptions ();
90 
91         void
92         SetOptions (uint32_t);
93 
94         bool
95         GetDescription (lldb::SBStream &description,
96                         lldb::DescriptionLevel description_level);
97 
98         bool
99         operator == (lldb::SBTypeSummary &rhs);
100 
101         bool
102         operator != (lldb::SBTypeSummary &rhs);
103 
104         STRING_EXTENSION_LEVEL(SBTypeSummary, lldb::eDescriptionLevelBrief)
105 
106 #ifdef SWIGPYTHON
107         %pythoncode %{
108             options = property(GetOptions, SetOptions)
109             is_summary_string = property(IsSummaryString)
110             is_function_name = property(IsFunctionName)
111             is_function_name = property(IsFunctionCode)
112             summary_data = property(GetData)
113         %}
114 #endif
115 
116     };
117 
118 } // namespace lldb
119 
120