1 #ifndef CASM_DatabaseNameIterator
2 #define CASM_DatabaseNameIterator
32 template <
typename ValueType,
typename DatabaseType,
typename ObjIterator>
37 std::string
name()
const override {
return m_it->first; }
39 std::unique_ptr<DatabaseIteratorBase<ValueType> >
clone()
const {
40 return std::unique_ptr<DatabaseIteratorBase<ValueType> >(this->
_clone());
47 typename std::map<std::string, ObjIterator>::const_iterator
base_iterator;
DatabaseIterator for implementations using std::map<std::string, ObjIterator>
std::map< std::string, ObjIterator >::const_iterator base_iterator
std::unique_ptr< DatabaseIteratorBase< ValueType > > clone() const
DatabaseNameIterator * _clone() const override
std::string name() const override
base_iterator base() const
const ValueType & dereference() const override
DatabaseNameIterator(base_iterator _it)
bool equal(const DatabaseIteratorBase< ValueType > &other) const override
void increment() override