add EncodedString::iterator::offset() and size()
This commit is contained in:
parent
d7315b0268
commit
726bd8bfaa
@ -19,6 +19,16 @@ EncodedString::iterator & EncodedString::iterator::operator++()
|
|||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
size_t EncodedString::iterator::size() const
|
||||||
|
{
|
||||||
|
if (m_offset < m_encoded_string.size())
|
||||||
|
{
|
||||||
|
return Encoding::num_bytes_in_code_point(m_encoded_string.encoding(), &m_encoded_string[m_offset]);
|
||||||
|
}
|
||||||
|
return 0u;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
EncodedString::EncodedString(const uint8_t * data, size_t size, Encoding::Type encoding)
|
EncodedString::EncodedString(const uint8_t * data, size_t size, Encoding::Type encoding)
|
||||||
: m_encoding(encoding),
|
: m_encoding(encoding),
|
||||||
m_size(size)
|
m_size(size)
|
||||||
|
@ -26,6 +26,11 @@ public:
|
|||||||
}
|
}
|
||||||
uint32_t operator*();
|
uint32_t operator*();
|
||||||
iterator & operator++();
|
iterator & operator++();
|
||||||
|
size_t offset() const
|
||||||
|
{
|
||||||
|
return m_offset;
|
||||||
|
}
|
||||||
|
size_t size() const;
|
||||||
bool operator==(const iterator & other) const
|
bool operator==(const iterator & other) const
|
||||||
{
|
{
|
||||||
return m_offset == other.m_offset;
|
return m_offset == other.m_offset;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user