![]() |
![]() |
#include <TagName.h>
Public Member Functions | |
std::string | operator() () const |
bool | operator< (const TagName &n) const |
bool | sameName (const TagName &tn) const |
const std::string & | str () const |
TagName () | |
TagName (const std::string &name) | |
Private Types | |
typedef unsigned int | count_type |
typedef std::map< std::string, unsigned int > | Registry |
Static Private Member Functions | |
static count_type | count () |
static Registry::iterator | regName (const std::string &s) |
Private Attributes | |
count_type | id_ |
Registry::iterator | name_ |
typedef unsigned int TagName::count_type [private] |
typedef std::map<std::string,unsigned int> TagName::Registry [private] |
TagName::TagName | ( | const std::string & | name | ) | [inline, explicit] |
static count_type TagName::count | ( | void | ) | [inline, static, private] |
std::string TagName::operator() | ( | ) | const [inline] |
bool TagName::operator< | ( | const TagName & | n | ) | const [inline] |
static Registry::iterator TagName::regName | ( | const std::string & | s | ) | [inline, static, private] |
Definition at line 38 of file TagName.h.
{ static Registry reg; Registry::size_type sz = reg.size(); Registry::value_type val(s, sz); /* std::pair<Registry::iterator, bool> insert = reg.insert(val); if (!insert.second) { sz = insert.first->second; } return insert.first; */ return reg.insert(val).first; }
bool TagName::sameName | ( | const TagName & | tn | ) | const [inline] |
const std::string& TagName::str | ( | ) | const [inline] |
count_type TagName::id_ [private] |
Definition at line 36 of file TagName.h.
Referenced by operator<().
Registry::iterator TagName::name_ [private] |
Definition at line 35 of file TagName.h.
Referenced by operator()(), sameName(), and str().