NexusForce 1.0.0
A rigorously engineered full-stack C++ backend library.
载入中...
搜索中...
未找到
neforce::utf8_iterator类 参考

UTF-8前向迭代器,遍历字符串中的Unicode码点 更多...

#include <utf_iterator.hpp>

Public 类型

using value_type = codepoint
 值类型
using reference = const codepoint&
 引用类型
using pointer = const codepoint*
 指针类型
using difference_type = ptrdiff_t
 差值类型
using iterator_category = forward_iterator_tag
 迭代器类别

Public 成员函数

 utf8_iterator () noexcept=default
 默认构造函数,构造结束迭代器
 utf8_iterator (const byte_t *data, size_t remaining) noexcept
 构造函数
reference operator* () const noexcept
 解引用操作符
pointer operator-> () const noexcept
 成员访问操作符
utf8_iteratoroperator++ () noexcept
 前置递增操作符
utf8_iterator operator++ (int) noexcept
 后置递增操作符
bool operator== (const utf8_iterator &other) const noexcept
 相等比较操作符
bool operator!= (const utf8_iterator &other) const noexcept
 不等比较操作符

详细描述

UTF-8前向迭代器,遍历字符串中的Unicode码点

将UTF-8字节序列解码为Unicode码点流。 每次递增消耗当前码点的全部字节(1~4字节)。 无效UTF-8序列产生替换符U+FFFD。

注解
此迭代器为前向迭代器,不支持随机访问和双向遍历。

在文件 utf_iterator.hpp31 行定义.

构造及析构函数说明

◆ utf8_iterator()

neforce::utf8_iterator::utf8_iterator ( const byte_t * data,
size_t remaining )
inlinenoexcept

构造函数

参数
dataUTF-8字节数据指针
remaining剩余字节数

在文件 utf_iterator.hpp67 行定义.

引用了 neforce::data() , 以及 utf8_iterator().

成员函数说明

◆ operator!=()

bool neforce::utf8_iterator::operator!= ( const utf8_iterator & other) const
inlinenodiscardnoexcept

不等比较操作符

参数
other另一个迭代器
返回
是否不等

在文件 utf_iterator.hpp125 行定义.

引用了 utf8_iterator().

◆ operator*()

reference neforce::utf8_iterator::operator* ( ) const
inlinenodiscardnoexcept

解引用操作符

返回
当前码点的常量引用

在文件 utf_iterator.hpp77 行定义.

◆ operator++() [1/2]

utf8_iterator & neforce::utf8_iterator::operator++ ( )
inlinenoexcept

前置递增操作符

返回
递增后的迭代器引用

在文件 utf_iterator.hpp89 行定义.

引用了 neforce::min() , 以及 utf8_iterator().

◆ operator++() [2/2]

utf8_iterator neforce::utf8_iterator::operator++ ( int )
inlinenoexcept

后置递增操作符

返回
递增前的迭代器副本

在文件 utf_iterator.hpp102 行定义.

引用了 neforce::move() , 以及 utf8_iterator().

◆ operator->()

pointer neforce::utf8_iterator::operator-> ( ) const
inlinenodiscardnoexcept

成员访问操作符

返回
当前码点的常量指针

在文件 utf_iterator.hpp83 行定义.

◆ operator==()

bool neforce::utf8_iterator::operator== ( const utf8_iterator & other) const
inlinenodiscardnoexcept

相等比较操作符

参数
other另一个迭代器
返回
是否相等

在文件 utf_iterator.hpp113 行定义.

引用了 utf8_iterator().


该类的文档由以下文件生成: