diff options
| author | Maxime Coste <frrrwww@gmail.com> | 2013-03-15 14:22:42 +0100 |
|---|---|---|
| committer | Maxime Coste <frrrwww@gmail.com> | 2013-03-15 14:22:42 +0100 |
| commit | 5e88b7fe283e66c3afebc4f287fbea72be41374e (patch) | |
| tree | acb1bac6230defeb065306784e86529add48ebc6 /src/buffer_iterator.inl.hh | |
| parent | 0c4addb40cfdbdc1590b5311eda82bbc607f1030 (diff) | |
move BufferIterator on_{insert,erase} as DynamicSelectionList implementation detail
Diffstat (limited to 'src/buffer_iterator.inl.hh')
| -rw-r--r-- | src/buffer_iterator.inl.hh | 46 |
1 files changed, 7 insertions, 39 deletions
diff --git a/src/buffer_iterator.inl.hh b/src/buffer_iterator.inl.hh index 717da898..90d17219 100644 --- a/src/buffer_iterator.inl.hh +++ b/src/buffer_iterator.inl.hh @@ -70,45 +70,6 @@ inline bool BufferIterator::operator>=(const BufferIterator& iterator) const return (m_coord >= iterator.m_coord); } -inline void BufferIterator::on_insert(const BufferCoord& begin, - const BufferCoord& end) -{ - if (m_coord < begin) - return; - - if (begin.line == m_coord.line) - m_coord.column = end.column + m_coord.column - begin.column; - m_coord.line += end.line - begin.line; - - assert(is_valid()); -} - -inline void BufferIterator::on_erase(const BufferCoord& begin, - const BufferCoord& end) -{ - if (m_coord < begin) - return; - - if (m_coord <= end) - { - m_coord = begin; - if (is_end()) - operator--(); - } - else - { - if (end.line == m_coord.line) - { - m_coord.line = begin.line; - m_coord.column = begin.column + m_coord.column - end.column; - } - else - m_coord.line -= end.line - begin.line; - } - assert(is_valid()); -} - - inline char BufferIterator::operator*() const { return m_buffer->m_lines[m_coord.line].content[m_coord.column]; @@ -212,6 +173,13 @@ inline BufferIterator BufferIterator::operator--(int) return save; } +inline BufferIterator& BufferIterator::operator=(const BufferCoord& coord) +{ + m_coord = coord; + assert(is_valid()); + return *this; +} + inline bool BufferIterator::is_begin() const { assert(m_buffer); |
