19#include <unordered_map>
139 if (!key.
empty() && key[0]!=
'@')
144 item->setScope(scope);
146 item->setTitle(title);
A String class for use with Doxygen wrapping std::string and adding some additional functionality off...
bool empty() const
Returns true iff the string is empty (std::string compatible alias for isEmpty()).
The common base class of all entity definitions found in the sources.
Container class representing a vector of objects with keys.
This struct represents an item in the list of references.
void setPrefix(const DString &prefix)
void setTitle(const DString &title)
RefItem(int id, RefList *list)
const Definition * scope() const
void setGroup(const DString &group)
DString m_anchor
anchor in the list
RefList * m_list
list owning this item
DString m_args
optional arguments for the entity (if function)
void setText(const DString &text)
DString m_prefix
type prefix for the name
DString m_text
text of the item.
DString m_title
display name of the entity
const Definition * m_scope
scope to use for references.
DString m_group
group id used to combine item under a single header
DString m_name
name of the entity containing the reference
void setAnchor(const DString &anchor)
void setArgs(const DString &args)
void setName(const DString &name)
void setScope(const Definition *scope)
int m_id
unique identifier for this item within its list
List of cross-referenced items.
std::unordered_map< int, RefItem * > m_lookup
std::vector< std::unique_ptr< RefItem > > m_entries
DString sectionTitle() const
DString pageTitle() const
RefList(const DString &listName, const DString &pageTitle, const DString &secTitle)
RefItem * find(int itemId)
~RefListManager()=default
static RefListManager & instance()
#define NON_COPYABLE(cls)
Macro to help implementing the rule of 5 for a non-copyable & movable class.
void addRefItem(const RefItemVector &sli, const DString &key, const DString &prefix, const DString &name, const DString &title, const DString &args, const Definition *scope)
std::vector< RefItem * > RefItemVector