diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2011-10-18 13:59:32 +0000 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2011-10-18 13:59:32 +0000 |
| commit | 32e01947fa1d56a171d64e9144a9a1ccfc1a250f (patch) | |
| tree | df233c356b8bb389915cae62d4d641496b74d070 /src/display_buffer.cc | |
| parent | 6fd7f97fa74b5b613dff20d67e0604a01a8dee47 (diff) | |
DisplayBuffer: store atoms in a std::list instead of a vector
Diffstat (limited to 'src/display_buffer.cc')
| -rw-r--r-- | src/display_buffer.cc | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/src/display_buffer.cc b/src/display_buffer.cc index c0e6ec77..64b2099e 100644 --- a/src/display_buffer.cc +++ b/src/display_buffer.cc @@ -98,7 +98,6 @@ DisplayBuffer::iterator DisplayBuffer::atom_containing(const BufferIterator& whe DisplayBuffer::iterator DisplayBuffer::split(iterator atom, const BufferIterator& pos) { - assert(atom < end()); assert(pos > atom->begin()); assert(pos < atom->end()); DisplayAtom new_atom(atom->coord(), atom->begin(), pos, @@ -113,21 +112,22 @@ DisplayBuffer::iterator DisplayBuffer::split(iterator atom, const BufferIterator void DisplayBuffer::check_invariant() const { - for (size_t i = 0; i < m_atoms.size(); ++i) + const_iterator prev_it; + for (const_iterator it = begin(); it != end(); ++it) { - assert(m_atoms[i].end() >= m_atoms[i].begin()); - if (i > 0) + assert(it->end() >= it->begin()); + if (it != begin()) { - assert(m_atoms[i-1].end() == m_atoms[i].begin()); - assert(m_atoms[i-1].end_coord() == m_atoms[i].coord()); + assert(prev_it->end() == it->begin()); + assert(prev_it->end_coord() == it->coord()); } + prev_it = it; } } void DisplayBuffer::replace_atom_content(iterator atom, const BufferString& replacement) { - assert(atom < end()); atom->m_replacement_text = replacement; // update coordinates of subsequents atoms |
