From ee882d9d020f8f0104af8336e64b7202fd6b5949 Mon Sep 17 00:00:00 2001 From: Maxime Coste Date: Sat, 27 Oct 2012 13:26:40 +0200 Subject: [PATCH] utf8: use CharCount instead of size_t --- src/utf8.hh | 9 +++++---- src/utf8_iterator.hh | 8 ++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/utf8.hh b/src/utf8.hh index f18b23dd..1d26a7e2 100644 --- a/src/utf8.hh +++ b/src/utf8.hh @@ -3,6 +3,7 @@ #include #include "unicode.hh" +#include "units.hh" #include "assert.hh" namespace Kakoune @@ -43,8 +44,8 @@ Iterator previous(Iterator it) // returns an iterator pointing to the first byte of the // dth character after (or before if d < 0) the character // pointed by it -template -Iterator advance(Iterator it, Iterator end, Distance d) +template +Iterator advance(Iterator it, Iterator end, CharCount d) { if (d < 0) { @@ -61,9 +62,9 @@ Iterator advance(Iterator it, Iterator end, Distance d) // returns the character count between begin and end template -size_t distance(Iterator begin, Iterator end) +CharCount distance(Iterator begin, Iterator end) { - size_t dist = 0; + CharCount dist = 0; while (begin != end) { if ((*begin++ & 0xC0) != 0x80) diff --git a/src/utf8_iterator.hh b/src/utf8_iterator.hh index 9bd0241a..464aff3a 100644 --- a/src/utf8_iterator.hh +++ b/src/utf8_iterator.hh @@ -47,7 +47,7 @@ public: return save; } - utf8_iterator operator+(int count) const + utf8_iterator operator+(CharCount count) const { if (count < 0) return operator-(-count); @@ -58,7 +58,7 @@ public: return res; } - utf8_iterator operator-(int count) const + utf8_iterator operator-(CharCount count) const { if (count < 0) return operator+(-count); @@ -92,12 +92,12 @@ public: return m_it >= other.m_it; } - size_t operator-(utf8_iterator other) const + CharCount operator-(utf8_iterator other) const { //assert(other < *this); check_invariant(); other.check_invariant(); - size_t dist = 0; + CharCount dist = 0; while (other.m_it != m_it) { ++dist;