1 //===-- SWIG Interface for SBTypeNameSpecifier---------------------------*- 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 11 %feature("docstring", 12 "Represents a general way to provide a type name to LLDB APIs.") SBTypeNameSpecifier; 13 14 class SBTypeNameSpecifier 15 { 16 public: 17 18 SBTypeNameSpecifier(); 19 20 SBTypeNameSpecifier (const char* name, 21 bool is_regex = false); 22 23 SBTypeNameSpecifier (SBType type); 24 25 SBTypeNameSpecifier (const lldb::SBTypeNameSpecifier &rhs); 26 27 ~SBTypeNameSpecifier (); 28 29 bool 30 IsValid() const; 31 32 explicit operator bool() const; 33 34 bool 35 IsEqualTo (lldb::SBTypeNameSpecifier &rhs); 36 37 const char* 38 GetName(); 39 40 lldb::SBType 41 GetType (); 42 43 bool 44 IsRegex(); 45 46 bool 47 GetDescription (lldb::SBStream &description, 48 lldb::DescriptionLevel description_level); 49 50 bool 51 operator == (lldb::SBTypeNameSpecifier &rhs); 52 53 bool 54 operator != (lldb::SBTypeNameSpecifier &rhs); 55 56 STRING_EXTENSION_LEVEL(SBTypeNameSpecifier, lldb::eDescriptionLevelBrief) 57 58 #ifdef SWIGPYTHON 59 %pythoncode %{ 60 name = property(GetName) 61 is_regex = property(IsRegex) 62 %} 63 #endif 64 65 66 }; 67 68 } // namespace lldb 69 70