1//===-- SWIG Interface for SBTypeFormat----------------------------*- 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
9namespace lldb {
10
11    %feature("docstring",
12             "Represents a format that can be associated to one or more types.") SBTypeFormat;
13
14    class SBTypeFormat
15    {
16    public:
17
18        SBTypeFormat();
19
20        SBTypeFormat (lldb::Format format, uint32_t options = 0);
21
22        SBTypeFormat (const char* type, uint32_t options = 0);
23
24        SBTypeFormat (const lldb::SBTypeFormat &rhs);
25
26        ~SBTypeFormat ();
27
28        bool
29        IsValid() const;
30
31        explicit operator bool() const;
32
33        bool
34        IsEqualTo (lldb::SBTypeFormat &rhs);
35
36        lldb::Format
37        GetFormat ();
38
39        const char*
40        GetTypeName ();
41
42        uint32_t
43        GetOptions();
44
45        void
46        SetFormat (lldb::Format);
47
48        void
49        SetTypeName (const char*);
50
51        void
52        SetOptions (uint32_t);
53
54        bool
55        GetDescription (lldb::SBStream &description,
56                        lldb::DescriptionLevel description_level);
57
58        bool
59        operator == (lldb::SBTypeFormat &rhs);
60
61        bool
62        operator != (lldb::SBTypeFormat &rhs);
63
64        STRING_EXTENSION_LEVEL(SBTypeFormat, lldb::eDescriptionLevelBrief)
65
66#ifdef SWIGPYTHON
67        %pythoncode %{
68            format = property(GetFormat, SetFormat)
69            options = property(GetOptions, SetOptions)
70        %}
71#endif
72
73    };
74
75
76} // namespace lldb
77
78