| 230 | } |
| 231 | |
| 232 | void |
| 233 | CertBase::SAN::Iterator::_advance() |
| 234 | { |
| 235 | if (!_san || _ended) { |
| 236 | return; |
| 237 | } |
| 238 | |
| 239 | auto it = std::find_if(_san->_sans.begin() + _index, _san->_sans.end(), [](const SANBase *entry) { return entry->Size() > 0; }); |
| 240 | |
| 241 | if (it != _san->_sans.end()) { |
| 242 | _index = std::distance(_san->_sans.begin(), it) + 1; |
| 243 | _iter = (*it)->Data().begin(); |
| 244 | _update_current(); |
| 245 | } else { |
| 246 | _ended = true; |
| 247 | } |
| 248 | } |
| 249 | |
| 250 | CertBase::SAN::Iterator::value_type |
| 251 | CertBase::SAN::operator[](size_t index) const |