9#ifndef LLDB_DATAFORMATTERS_TYPECATEGORYMAP_H
10#define LLDB_DATAFORMATTERS_TYPECATEGORYMAP_H
34 typedef std::map<KeyType, ValueSP>
MapType;
76 bool only_enabled =
true,
const char **matching_category =
nullptr,
85 lldb::TypeCategoryImplSP
ptr;
89 :
ptr(std::move(p)) {}
92 return ptr.get() == other.get();
A uniqued constant string class.
static const uint16_t ALL_ITEM_TYPES
std::shared_ptr< TypeCategoryImpl > SharedPointer
delete_matching_categories(lldb::TypeCategoryImplSP p)
lldb::TypeCategoryImplSP ptr
bool operator()(const lldb::TypeCategoryImplSP &other)
bool Get(KeyType name, ValueSP &entry)
ValueType::SharedPointer ValueSP
bool Delete(KeyType name)
void Add(KeyType name, const ValueSP &entry)
static const Position Last
std::function< bool(const ValueSP &)> ForEachCallback
std::recursive_mutex & mutex()
bool AnyMatches(const FormattersMatchCandidate &candidate_type, TypeCategoryImpl::FormatCategoryItems items=TypeCategoryImpl::ALL_ITEM_TYPES, bool only_enabled=true, const char **matching_category=nullptr, TypeCategoryImpl::FormatCategoryItems *matching_type=nullptr)
bool Enable(KeyType category_name, Position pos=Default)
std::map< KeyType, ValueSP > MapType
lldb::TypeCategoryImplSP GetAtIndex(uint32_t)
std::recursive_mutex m_map_mutex
ActiveCategoriesList m_active_categories
TypeCategoryImpl ValueType
ActiveCategoriesList::iterator ActiveCategoriesIterator
bool Disable(KeyType category_name)
MapType::iterator MapIterator
IFormatChangeListener * listener
void DisableAllCategories()
static const Position Default
std::list< lldb::TypeCategoryImplSP > ActiveCategoriesList
void EnableAllCategories()
ActiveCategoriesList & active_list()
static const Position First
void ForEach(ForEachCallback callback)
A class that represents a running process on the host machine.