config::const_attr_itors config::attribute_range() const { check_valid(); return const_attr_itors(const_attribute_iterator(values.begin()), const_attribute_iterator(values.end())); }
config::const_attr_itors config::attribute_range() const { check_valid(); const_attr_itors range (const_attribute_iterator(values.begin()), const_attribute_iterator(values.end())); // Ensure the first element is not blank, as a few places assume this while(range.begin() != range.end() && range.begin()->second.blank()) { range.pop_front(); } return range; }
const_attribute_iterator operator++(int) { return const_attribute_iterator(i_++); }