SBStringList.h revision 5f81547fd786584b10999c087528b323b5945896
1//===-- SBStringList.h ------------------------------------------*- C++ -*-===// 2// 3// The LLVM Compiler Infrastructure 4// 5// This file is distributed under the University of Illinois Open Source 6// License. See LICENSE.TXT for details. 7// 8//===----------------------------------------------------------------------===// 9 10#ifndef LLDB_SBStringList_h_ 11#define LLDB_SBStringList_h_ 12 13#include "lldb/API/SBDefines.h" 14 15namespace lldb { 16 17class SBStringList 18{ 19public: 20 21 SBStringList (); 22 23 SBStringList (const lldb_private::StringList *lldb_strings); 24 25 SBStringList (const lldb::SBStringList &rhs); 26 27 ~SBStringList (); 28 29 bool 30 IsValid() const; 31 32 void 33 AppendString (const char *str); 34 35 void 36 AppendList (const char **strv, int strc); 37 38 void 39 AppendList (lldb::SBStringList strings); 40 41 uint32_t 42 GetSize () const; 43 44 const char * 45 GetStringAtIndex (size_t idx); 46 47 void 48 Clear (); 49 50#ifndef SWIG 51 52 const lldb_private::StringList * 53 operator->() const; 54 55 const lldb_private::StringList & 56 operator*() const; 57 58 const lldb::SBStringList & 59 operator = (const lldb::SBStringList &rhs); 60 61#endif 62 63private: 64 65 std::auto_ptr<lldb_private::StringList> m_lldb_object_ap; 66 67}; 68 69} // namespace lldb 70 71#endif // LLDB_SBStringList_h_ 72