diff options
author | Chris Lattner <sabre@nondot.org> | 2010-06-08 16:52:24 +0000 |
---|---|---|
committer | Chris Lattner <sabre@nondot.org> | 2010-06-08 16:52:24 +0000 |
commit | 24943d2ee8bfaa7cf5893e4709143924157a5c1e (patch) | |
tree | dcbf999766d64934ee81a5c8ae90dfa92342e7b1 /include/lldb/API/SBValueList.h | |
parent | bc2e491a7e08efa3be819f3e51b83507c32b16e8 (diff) |
Initial checkin of lldb code from internal Apple repo.
git-svn-id: https://llvm.org/svn/llvm-project/llvdb/trunk@105619 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'include/lldb/API/SBValueList.h')
-rw-r--r-- | include/lldb/API/SBValueList.h | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/include/lldb/API/SBValueList.h b/include/lldb/API/SBValueList.h new file mode 100644 index 000000000..49b5fef10 --- /dev/null +++ b/include/lldb/API/SBValueList.h @@ -0,0 +1,79 @@ +//===-- SBValueList.h -------------------------------------------*- C++ -*-===// +// +// The LLVM Compiler Infrastructure +// +// This file is distributed under the University of Illinois Open Source +// License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// + +#ifndef LLDB_SBValueList_h_ +#define LLDB_SBValueList_h_ + +#include <LLDB/SBDefines.h> + +class lldb_private::ValueObjectList; + +namespace lldb { + +class SBValueList +{ +public: + + SBValueList (); + + SBValueList (const lldb::SBValueList &rhs); + + ~SBValueList(); + + bool + IsValid() const; + + void + Append (const lldb::SBValue &val_obj); + + uint32_t + GetSize() const; + + lldb::SBValue + GetValueAtIndex (uint32_t idx) const; + + lldb::SBValue + FindValueObjectByUID (lldb::user_id_t uid); + + +#ifndef SWIG + const lldb::SBValueList & + operator = (const lldb::SBValueList &rhs); + + lldb_private::ValueObjectList * + operator -> (); + + lldb_private::ValueObjectList & + operator* (); + + const lldb_private::ValueObjectList * + operator -> () const; + + const lldb_private::ValueObjectList & + operator* () const; +#endif + +private: + friend class SBFrame; + + SBValueList (const lldb_private::ValueObjectList *lldb_object_ptr); + + void + Append (lldb::ValueObjectSP& val_obj_sp); + + void + CreateIfNeeded (); + + std::auto_ptr<lldb_private::ValueObjectList> m_lldb_object_ap; +}; + + +} // namespace lldb + +#endif // LLDB_SBValueList_h_ |