11#include "llvm/Support/FormattedStream.h"
12#include "llvm/Support/raw_ostream.h"
31 m_types.insert(std::make_pair(type_sp->GetID(), type_sp));
39 for (pos =
m_types.find(type_uid);
40 pos != end && pos->second->GetID() == type_uid; ++pos) {
41 if (pos->second.get() == type_sp.get())
86 for (pos =
m_types.begin(), end =
m_types.end(); pos != end; ++pos) {
101 std::function<
bool(
const lldb::TypeSP &type_sp)>
const &callback)
const {
102 for (
auto pos =
m_types.begin(), end =
m_types.end(); pos != end; ++pos) {
103 if (!callback(pos->second))
109 std::function<
bool(
lldb::TypeSP &type_sp)>
const &callback) {
110 for (
auto pos =
m_types.begin(), end =
m_types.end(); pos != end; ++pos) {
111 if (!callback(pos->second))
120 pos != end && pos->first == uid; ++pos) {
121 if (pos->second == type_sp) {
132 for (
const auto &pair :
m_types)
133 pair.second->Dump(s, show_context, level);
A stream class that can stream formatted output to a file.
lldb::TypeSP FirstType() const
void Insert(const lldb::TypeSP &type)
bool Remove(const lldb::TypeSP &type_sp)
bool InsertUnique(const lldb::TypeSP &type)
void ForEach(std::function< bool(const lldb::TypeSP &type_sp)> const &callback) const
void Dump(Stream *s, bool show_context, lldb::DescriptionLevel level=lldb::eDescriptionLevelFull) const
collection::iterator iterator
lldb::TypeSP GetTypeAtIndex(uint32_t idx)
A class that represents a running process on the host machine.
DescriptionLevel
Description levels for "void GetDescription(Stream *, DescriptionLevel)" calls.
std::shared_ptr< lldb_private::Type > TypeSP