116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata//===-- SWIG Interface for SBTypeSummary---------------------------*- C++ -*-===//
216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata//
316376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata//                     The LLVM Compiler Infrastructure
416376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata//
516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata// This file is distributed under the University of Illinois Open Source
616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata// License. See LICENSE.TXT for details.
716376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata//
816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata//===----------------------------------------------------------------------===//
916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
1016376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granatanamespace lldb {
1116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
1216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata    %feature("docstring",
1316376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata    "Represents a summary that can be associated to one or more types.
1416376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata    ") SBTypeSummary;
1516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
1616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata    class SBTypeSummary
1716376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata    {
1816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata    public:
1916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
2016376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        SBTypeSummary();
2116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
2216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        static SBTypeSummary
2316376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        CreateWithSummaryString (const char* data, uint32_t options = 0);
2416376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
2516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        static SBTypeSummary
2616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        CreateWithFunctionName (const char* data, uint32_t options = 0);
2716376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
2816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        static SBTypeSummary
2916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        CreateWithScriptCode (const char* data, uint32_t options = 0);
3016376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
3116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        SBTypeSummary (const lldb::SBTypeSummary &rhs);
3216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
3316376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        ~SBTypeSummary ();
3416376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
3516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        bool
3616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        IsValid() const;
3716376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
3816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        bool
3916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        IsEqualTo (lldb::SBTypeSummary &rhs);
4016376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
4116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        bool
4216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        IsFunctionCode();
4316376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
4416376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        bool
4516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        IsFunctionName();
4616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
4716376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        bool
4816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        IsSummaryString();
4916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
5016376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        const char*
5116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        GetData ();
5216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
5316376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        void
5416376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        SetSummaryString (const char* data);
5516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
5616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        void
5716376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        SetFunctionName (const char* data);
5816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
5916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        void
6016376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        SetFunctionCode (const char* data);
6116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
6216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        uint32_t
6316376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        GetOptions ();
6416376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
6516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        void
6616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        SetOptions (uint32_t);
6716376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
6816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        bool
6916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        GetDescription (lldb::SBStream &description,
7016376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata                        lldb::DescriptionLevel description_level);
7116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
720765e3274aab0551fea7678bee565c7d68e0b786Enrico Granata        bool
730765e3274aab0551fea7678bee565c7d68e0b786Enrico Granata        operator == (lldb::SBTypeSummary &rhs);
740765e3274aab0551fea7678bee565c7d68e0b786Enrico Granata
750765e3274aab0551fea7678bee565c7d68e0b786Enrico Granata        bool
760765e3274aab0551fea7678bee565c7d68e0b786Enrico Granata        operator != (lldb::SBTypeSummary &rhs);
770765e3274aab0551fea7678bee565c7d68e0b786Enrico Granata
7816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        %pythoncode %{
7916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata            __swig_getmethods__["options"] = GetOptions
8016376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata            __swig_setmethods__["options"] = SetOptions
812a94be1aa46c90d6749d8c96ed396d5ebde452cdGreg Clayton            if _newclass: options = property(GetOptions, SetOptions)
8216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
8316376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata            __swig_getmethods__["is_summary_string"] = IsSummaryString
842a94be1aa46c90d6749d8c96ed396d5ebde452cdGreg Clayton            if _newclass: is_summary_string = property(IsSummaryString, None)
8516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
8616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata            __swig_getmethods__["is_function_name"] = IsFunctionName
872a94be1aa46c90d6749d8c96ed396d5ebde452cdGreg Clayton            if _newclass: is_function_name = property(IsFunctionName, None)
8816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
892a94be1aa46c90d6749d8c96ed396d5ebde452cdGreg Clayton            __swig_getmethods__["is_function_name"] = IsFunctionCode
902a94be1aa46c90d6749d8c96ed396d5ebde452cdGreg Clayton            if _newclass: is_function_name = property(IsFunctionCode, None)
9116376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
9216376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata            __swig_getmethods__["summary_data"] = GetData
932a94be1aa46c90d6749d8c96ed396d5ebde452cdGreg Clayton            if _newclass: summary_data = property(GetData, None)
9416376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata        %}
9516376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
9616376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata    };
9716376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
9816376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata} // namespace lldb
9916376ed044df3ee70fcf69e19f06af01e71a8e9aEnrico Granata
100