1 //===-- VectorIterator.h ----------------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
10 #ifndef liblldb_VectorIterator_h_
11 #define liblldb_VectorIterator_h_
13 #include "lldb/lldb-forward.h"
15 #include "lldb/Core/ConstString.h"
16 #include "lldb/Target/ExecutionContext.h"
18 namespace lldb_private {
21 class VectorIteratorSyntheticFrontEnd : public SyntheticChildrenFrontEnd
24 VectorIteratorSyntheticFrontEnd (lldb::ValueObjectSP valobj_sp,
25 ConstString item_name);
28 CalculateNumChildren() override;
31 GetChildAtIndex(size_t idx) override;
37 MightHaveChildren() override;
40 GetIndexOfChildWithName(const ConstString &name) override;
42 ~VectorIteratorSyntheticFrontEnd() override;
45 ExecutionContextRef m_exe_ctx_ref;
46 ConstString m_item_name;
47 lldb::ValueObjectSP m_item_sp;
50 } // namespace formatters
51 } // namespace lldb_private
53 #endif // liblldb_CF_h_