|
chenjunfu2-nbt-cpp v2.1.0
一个基于CPP20的NBT(Named Binary Tag)库
|
NBT节点的视图,用于指向而不持有对象,类似于标准库的std::string与std::string_view的关系 更多...
#include <NBT_Node_View.hpp>
Public 成员函数 | |
| template<typename T> requires (!std::is_same_v<std::decay_t<T>, NBT_Node> &&NBT_Type::IsValidType_V<std::decay_t<T>> && !bIsConst) | |
| NBT_Node_View (T &value) | |
| 通用构造函数(仅适用于非const) | |
| template<typename T> requires (!std::is_same_v<std::decay_t<T>, NBT_Node> && NBT_Type::IsValidType_V<std::decay_t<T>> && bIsConst) | |
| NBT_Node_View (const T &value) | |
| 通用构造函数(仅适用于const) | |
| NBT_Node_View (NBT_Node &node) | |
| 从NBT_Node构造视图(仅适用于非const) | |
| template<typename = void> requires (bIsConst) | |
| NBT_Node_View (const NBT_Node &node) | |
| 从NBT_Node构造视图(仅适用于const) | |
| template<typename = void> requires (bIsConst) | |
| NBT_Node_View (const NBT_Node_View< false > &_Other) | |
| 从非const视图隐式构造const视图 | |
| template<typename T> requires (!std::is_lvalue_reference_v<T>) | |
| NBT_Node_View (T &&_Temp)=delete | |
| 删除临时对象构造方式,防止从临时对象构造导致悬空指针 | |
| template<typename T> requires (!std::is_same_v<std::decay_t<T>, NBT_Node> && NBT_Type::IsValidType_V<std::decay_t<T>> && !bIsConst) | |
| T & | Set (T &value) |
| 通用设置函数(仅适用于非const) | |
| template<typename T> requires (!std::is_same_v<std::decay_t<T>, NBT_Node> && NBT_Type::IsValidType_V<std::decay_t<T>> && bIsConst) | |
| const T & | Set (const T &value) |
| 通用设置函数(仅适用于const) | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Node & | Set (NBT_Node &node) |
| 从NBT_Node重设视图(仅适用于非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Node & | Set (const NBT_Node &node) |
| 从NBT_Node重设视图(仅适用于const) | |
| template<typename T> requires (!std::is_lvalue_reference_v<T>) | |
| T & | Set (T &&_Temp)=delete |
| 删除临时对象设置方式,防止从临时对象构造导致悬空指针 | |
| template<typename T> requires (!std::is_same_v<std::decay_t<T>, NBT_Node> && NBT_Type::IsValidType_V<std::decay_t<T>> && !bIsConst) | |
| NBT_Node_View & | operator= (T &value) |
| 通用赋值设置函数(仅适用于非const) | |
| template<typename T> requires (!std::is_same_v<std::decay_t<T>, NBT_Node> && NBT_Type::IsValidType_V<std::decay_t<T>> && bIsConst) | |
| NBT_Node_View & | operator= (const T &value) |
| 通用赋值设置函数(仅适用于const) | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Node_View & | operator= (NBT_Node &node) |
| 从NBT_Node赋值重设视图(仅适用于非const) | |
| template<typename = void> requires (bIsConst) | |
| NBT_Node_View & | operator= (const NBT_Node &node) |
| 从NBT_Node赋值重设视图(仅适用于const) | |
| template<typename T> requires (!std::is_lvalue_reference_v<T>) | |
| NBT_Node_View & | operator= (T &&_Temp)=delete |
| 删除临时对象赋值设置方式,防止从临时对象构造导致悬空指针 | |
| NBT_Node_View () | |
| 默认构造函数 | |
| ~NBT_Node_View ()=default | |
| 默认析构函数 | |
| NBT_Node_View (const NBT_Node_View &_Copy) | |
| 拷贝构造函数 | |
| NBT_Node_View (NBT_Node_View &&_Move) noexcept | |
| 移动构造函数 | |
| NBT_Node_View & | operator= (const NBT_Node_View &_Copy) |
| 拷贝赋值运算符 | |
| NBT_Node_View & | operator= (NBT_Node_View &&_Move) noexcept |
| 移动赋值运算符 | |
| bool | operator== (const NBT_Node_View &_Right) const noexcept |
| 相等比较运算符 | |
| bool | operator!= (const NBT_Node_View &_Right) const noexcept |
| 不等比较运算符 | |
| std::partial_ordering | operator<=> (const NBT_Node_View &_Right) const noexcept |
| 三路比较运算符 | |
| NBT_TAG | GetTag () const noexcept |
| 获取当前视图指向的NBT类型的枚举值 | |
| template<typename T> | |
| const T & | Get () const |
| 通过指定类型获取当前视图指向的数据对象 | |
| template<typename T> requires (!bIsConst) | |
| T & | Get () |
| 通过指定类型获取当前视图指向的数据对象(仅适用于非const视图) | |
| template<typename T> | |
| bool | TypeHolds () const |
| 类型判断 | |
| bool | IsEmpty () const |
| 为空判断 | |
| void | SetEmpty () |
| 设置为空 | |
静态 Public 属性 | |
| static constexpr bool | is_const = bIsConst |
| 静态常量,表示当前视图指向的数据是否只读 | |
针对每种类型提供一个方便使用的函数,由宏批量生成 | |
具体作用说明:
| |
| std::conditional_t< bIsConst, const NBT_Type::End &, NBT_Type::End & > | GetEnd (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 End 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::End &, NBT_Type::End & > & | GetEnd (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 End 类型的数据 | |
| bool | IsEnd (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 End 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Byte &, NBT_Type::Byte & > | GetByte (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Byte 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Byte &, NBT_Type::Byte & > & | GetByte (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Byte 类型的数据 | |
| bool | IsByte (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 Byte 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Short &, NBT_Type::Short & > | GetShort (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Short 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Short &, NBT_Type::Short & > & | GetShort (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Short 类型的数据 | |
| bool | IsShort (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 Short 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Int &, NBT_Type::Int & > | GetInt (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Int 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Int &, NBT_Type::Int & > & | GetInt (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Int 类型的数据 | |
| bool | IsInt (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 Int 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Long &, NBT_Type::Long & > | GetLong (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Long 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Long &, NBT_Type::Long & > & | GetLong (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Long 类型的数据 | |
| bool | IsLong (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 Long 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Float &, NBT_Type::Float & > | GetFloat (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Float 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Float &, NBT_Type::Float & > & | GetFloat (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Float 类型的数据 | |
| bool | IsFloat (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 Float 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Double &, NBT_Type::Double & > | GetDouble (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Double 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Double &, NBT_Type::Double & > & | GetDouble (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Double 类型的数据 | |
| bool | IsDouble (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 Double 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::ByteArray &, NBT_Type::ByteArray & > | GetByteArray (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 ByteArray 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::ByteArray &, NBT_Type::ByteArray & > & | GetByteArray (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 ByteArray 类型的数据 | |
| bool | IsByteArray (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 ByteArray 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::IntArray &, NBT_Type::IntArray & > | GetIntArray (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 IntArray 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::IntArray &, NBT_Type::IntArray & > & | GetIntArray (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 IntArray 类型的数据 | |
| bool | IsIntArray (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 IntArray 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::LongArray &, NBT_Type::LongArray & > | GetLongArray (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 LongArray 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::LongArray &, NBT_Type::LongArray & > & | GetLongArray (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 LongArray 类型的数据 | |
| bool | IsLongArray (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 LongArray 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::String &, NBT_Type::String & > | GetString (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 String 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::String &, NBT_Type::String & > & | GetString (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 String 类型的数据 | |
| bool | IsString (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 String 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::List &, NBT_Type::List & > | GetList (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 List 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::List &, NBT_Type::List & > & | GetList (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 List 类型的数据 | |
| bool | IsList (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 List 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Compound &, NBT_Type::Compound & > | GetCompound (NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Compound 类型的数据 | |
| std::conditional_t< bIsConst, const NBT_Type::Compound &, NBT_Type::Compound & > & | GetCompound (const NBT_Node_View &node) |
| 友元函数:从NBT_Node_View对象中获取 Compound 类型的数据 | |
| bool | IsCompound (const NBT_Node_View &node) |
| 友元函数:检查目标对象中是否指向 Compound 类型的数据 | |
| const NBT_Type::End & | GetEnd () const |
| 获取当前视图指向的 End 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::End & | GetEnd () |
| 获取当前视图指向的 End 类型的数据(仅适用于非const视图) | |
| bool | IsEnd () const |
| 检查当前视图是否指向 End 类型的数据 | |
| const NBT_Type::Byte & | GetByte () const |
| 获取当前视图指向的 Byte 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Byte & | GetByte () |
| 获取当前视图指向的 Byte 类型的数据(仅适用于非const视图) | |
| bool | IsByte () const |
| 检查当前视图是否指向 Byte 类型的数据 | |
| const NBT_Type::Short & | GetShort () const |
| 获取当前视图指向的 Short 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Short & | GetShort () |
| 获取当前视图指向的 Short 类型的数据(仅适用于非const视图) | |
| bool | IsShort () const |
| 检查当前视图是否指向 Short 类型的数据 | |
| const NBT_Type::Int & | GetInt () const |
| 获取当前视图指向的 Int 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Int & | GetInt () |
| 获取当前视图指向的 Int 类型的数据(仅适用于非const视图) | |
| bool | IsInt () const |
| 检查当前视图是否指向 Int 类型的数据 | |
| const NBT_Type::Long & | GetLong () const |
| 获取当前视图指向的 Long 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Long & | GetLong () |
| 获取当前视图指向的 Long 类型的数据(仅适用于非const视图) | |
| bool | IsLong () const |
| 检查当前视图是否指向 Long 类型的数据 | |
| const NBT_Type::Float & | GetFloat () const |
| 获取当前视图指向的 Float 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Float & | GetFloat () |
| 获取当前视图指向的 Float 类型的数据(仅适用于非const视图) | |
| bool | IsFloat () const |
| 检查当前视图是否指向 Float 类型的数据 | |
| const NBT_Type::Double & | GetDouble () const |
| 获取当前视图指向的 Double 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Double & | GetDouble () |
| 获取当前视图指向的 Double 类型的数据(仅适用于非const视图) | |
| bool | IsDouble () const |
| 检查当前视图是否指向 Double 类型的数据 | |
| const NBT_Type::ByteArray & | GetByteArray () const |
| 获取当前视图指向的 ByteArray 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::ByteArray & | GetByteArray () |
| 获取当前视图指向的 ByteArray 类型的数据(仅适用于非const视图) | |
| bool | IsByteArray () const |
| 检查当前视图是否指向 ByteArray 类型的数据 | |
| const NBT_Type::IntArray & | GetIntArray () const |
| 获取当前视图指向的 IntArray 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::IntArray & | GetIntArray () |
| 获取当前视图指向的 IntArray 类型的数据(仅适用于非const视图) | |
| bool | IsIntArray () const |
| 检查当前视图是否指向 IntArray 类型的数据 | |
| const NBT_Type::LongArray & | GetLongArray () const |
| 获取当前视图指向的 LongArray 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::LongArray & | GetLongArray () |
| 获取当前视图指向的 LongArray 类型的数据(仅适用于非const视图) | |
| bool | IsLongArray () const |
| 检查当前视图是否指向 LongArray 类型的数据 | |
| const NBT_Type::String & | GetString () const |
| 获取当前视图指向的 String 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::String & | GetString () |
| 获取当前视图指向的 String 类型的数据(仅适用于非const视图) | |
| bool | IsString () const |
| 检查当前视图是否指向 String 类型的数据 | |
| const NBT_Type::List & | GetList () const |
| 获取当前视图指向的 List 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::List & | GetList () |
| 获取当前视图指向的 List 类型的数据(仅适用于非const视图) | |
| bool | IsList () const |
| 检查当前视图是否指向 List 类型的数据 | |
| const NBT_Type::Compound & | GetCompound () const |
| 获取当前视图指向的 Compound 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Compound & | GetCompound () |
| 获取当前视图指向的 Compound 类型的数据(仅适用于非const视图) | |
| bool | IsCompound () const |
| 检查当前视图是否指向 Compound 类型的数据 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::End & | SetEnd (NBT_Type::End &value) |
| 从value设置 End 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::End & | SetEnd (const NBT_Type::End &value) |
| 从value设置 End 类型的视图(const) | |
| NBT_Type::End & | SetEnd (NBT_Type::End &&_Temp)=delete |
| 删除从临时对象设置 End 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Byte & | SetByte (NBT_Type::Byte &value) |
| 从value设置 Byte 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::Byte & | SetByte (const NBT_Type::Byte &value) |
| 从value设置 Byte 类型的视图(const) | |
| NBT_Type::Byte & | SetByte (NBT_Type::Byte &&_Temp)=delete |
| 删除从临时对象设置 Byte 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Short & | SetShort (NBT_Type::Short &value) |
| 从value设置 Short 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::Short & | SetShort (const NBT_Type::Short &value) |
| 从value设置 Short 类型的视图(const) | |
| NBT_Type::Short & | SetShort (NBT_Type::Short &&_Temp)=delete |
| 删除从临时对象设置 Short 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Int & | SetInt (NBT_Type::Int &value) |
| 从value设置 Int 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::Int & | SetInt (const NBT_Type::Int &value) |
| 从value设置 Int 类型的视图(const) | |
| NBT_Type::Int & | SetInt (NBT_Type::Int &&_Temp)=delete |
| 删除从临时对象设置 Int 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Long & | SetLong (NBT_Type::Long &value) |
| 从value设置 Long 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::Long & | SetLong (const NBT_Type::Long &value) |
| 从value设置 Long 类型的视图(const) | |
| NBT_Type::Long & | SetLong (NBT_Type::Long &&_Temp)=delete |
| 删除从临时对象设置 Long 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Float & | SetFloat (NBT_Type::Float &value) |
| 从value设置 Float 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::Float & | SetFloat (const NBT_Type::Float &value) |
| 从value设置 Float 类型的视图(const) | |
| NBT_Type::Float & | SetFloat (NBT_Type::Float &&_Temp)=delete |
| 删除从临时对象设置 Float 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Double & | SetDouble (NBT_Type::Double &value) |
| 从value设置 Double 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::Double & | SetDouble (const NBT_Type::Double &value) |
| 从value设置 Double 类型的视图(const) | |
| NBT_Type::Double & | SetDouble (NBT_Type::Double &&_Temp)=delete |
| 删除从临时对象设置 Double 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::ByteArray & | SetByteArray (NBT_Type::ByteArray &value) |
| 从value设置 ByteArray 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::ByteArray & | SetByteArray (const NBT_Type::ByteArray &value) |
| 从value设置 ByteArray 类型的视图(const) | |
| NBT_Type::ByteArray & | SetByteArray (NBT_Type::ByteArray &&_Temp)=delete |
| 删除从临时对象设置 ByteArray 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::IntArray & | SetIntArray (NBT_Type::IntArray &value) |
| 从value设置 IntArray 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::IntArray & | SetIntArray (const NBT_Type::IntArray &value) |
| 从value设置 IntArray 类型的视图(const) | |
| NBT_Type::IntArray & | SetIntArray (NBT_Type::IntArray &&_Temp)=delete |
| 删除从临时对象设置 IntArray 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::LongArray & | SetLongArray (NBT_Type::LongArray &value) |
| 从value设置 LongArray 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::LongArray & | SetLongArray (const NBT_Type::LongArray &value) |
| 从value设置 LongArray 类型的视图(const) | |
| NBT_Type::LongArray & | SetLongArray (NBT_Type::LongArray &&_Temp)=delete |
| 删除从临时对象设置 LongArray 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::String & | SetString (NBT_Type::String &value) |
| 从value设置 String 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::String & | SetString (const NBT_Type::String &value) |
| 从value设置 String 类型的视图(const) | |
| NBT_Type::String & | SetString (NBT_Type::String &&_Temp)=delete |
| 删除从临时对象设置 String 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::List & | SetList (NBT_Type::List &value) |
| 从value设置 List 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::List & | SetList (const NBT_Type::List &value) |
| 从value设置 List 类型的视图(const) | |
| NBT_Type::List & | SetList (NBT_Type::List &&_Temp)=delete |
| 删除从临时对象设置 List 类型的视图,,防止从临时对象构造导致悬空指针 | |
| template<typename = void> requires (!bIsConst) | |
| NBT_Type::Compound & | SetCompound (NBT_Type::Compound &value) |
| 从value设置 Compound 类型的视图(非const) | |
| template<typename = void> requires (bIsConst) | |
| const NBT_Type::Compound & | SetCompound (const NBT_Type::Compound &value) |
| 从value设置 Compound 类型的视图(const) | |
| NBT_Type::Compound & | SetCompound (NBT_Type::Compound &&_Temp)=delete |
| 删除从临时对象设置 Compound 类型的视图,,防止从临时对象构造导致悬空指针 | |
NBT节点的视图,用于指向而不持有对象,类似于标准库的std::string与std::string_view的关系
| bIsConst | 模板参数,指定视图是否持有数据的const指针,为true则持有对象的const指针,为false持有对象的非const指针。 这里的模板值控制的状态与类是否为const类,类似于指向const对象的指针与指向对象的const指针的区别,模板控制的是指向的对象是否不可修改,而类是否const控制的是类是否能修改指向。 |
|
inline |
通用构造函数(仅适用于非const)
| T | 要指向的数据类型 |
| value | 要指向的数据对象的引用 |
|
inline |
通用构造函数(仅适用于const)
| T | 要指向的数据类型 |
| value | 要指向的数据对象的常量引用 |
|
inline |
从NBT_Node构造视图(仅适用于非const)
| node | 要创建视图的NBT_Node对象 |
|
inline |
从NBT_Node构造视图(仅适用于const)
| node | 要创建视图的NBT_Node对象 |
|
inline |
从非const视图隐式构造const视图
| void | 占位模板参数 |
| _Other | 用于构造的非const视图对象 |
|
delete |
删除临时对象构造方式,防止从临时对象构造导致悬空指针
| T | 临时对象的类型 |
| _Temp | 任意类型的临时对象 |
|
inline |
默认构造函数
|
default |
默认析构函数
|
inline |
拷贝构造函数
| _Copy | 要拷贝的源视图对象 |
|
inlinenoexcept |
移动构造函数
| _Move | 要移动的源视图对象 |
|
inline |
通过指定类型获取当前视图指向的数据对象(仅适用于非const视图)
| T | 要访问的数据类型 |
|
inline |
通过指定类型获取当前视图指向的数据对象
| T | 要访问的数据类型 |
|
inline |
获取当前视图指向的 Byte 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 Byte 类型的数据
|
inline |
获取当前视图指向的 ByteArray 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 ByteArray 类型的数据
|
inline |
获取当前视图指向的 Compound 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 Compound 类型的数据
|
inline |
获取当前视图指向的 Double 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 Double 类型的数据
|
inline |
获取当前视图指向的 End 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 End 类型的数据
|
inline |
获取当前视图指向的 Float 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 Float 类型的数据
|
inline |
获取当前视图指向的 Int 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 Int 类型的数据
|
inline |
获取当前视图指向的 IntArray 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 IntArray 类型的数据
|
inline |
获取当前视图指向的 List 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 List 类型的数据
|
inline |
获取当前视图指向的 Long 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 Long 类型的数据
|
inline |
获取当前视图指向的 LongArray 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 LongArray 类型的数据
|
inline |
获取当前视图指向的 Short 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 Short 类型的数据
|
inline |
获取当前视图指向的 String 类型的数据(仅适用于非const视图)
|
inline |
获取当前视图指向的 String 类型的数据
|
inlinenoexcept |
获取当前视图指向的NBT类型的枚举值
|
inline |
检查当前视图是否指向 Byte 类型的数据
|
inline |
检查当前视图是否指向 ByteArray 类型的数据
|
inline |
检查当前视图是否指向 Compound 类型的数据
|
inline |
检查当前视图是否指向 Double 类型的数据
|
inline |
为空判断
|
inline |
检查当前视图是否指向 End 类型的数据
|
inline |
检查当前视图是否指向 Float 类型的数据
|
inline |
检查当前视图是否指向 Int 类型的数据
|
inline |
检查当前视图是否指向 IntArray 类型的数据
|
inline |
检查当前视图是否指向 List 类型的数据
|
inline |
检查当前视图是否指向 Long 类型的数据
|
inline |
检查当前视图是否指向 LongArray 类型的数据
|
inline |
检查当前视图是否指向 Short 类型的数据
|
inline |
检查当前视图是否指向 String 类型的数据
|
inlinenoexcept |
不等比较运算符
| _Right | 要比较的右操作数 |
|
inlinenoexcept |
三路比较运算符
| _Right | 要比较的右操作数 |
|
inline |
从NBT_Node赋值重设视图(仅适用于const)
| node | 要创建视图的NBT_Node对象 |
|
inline |
拷贝赋值运算符
| _Copy | 要拷贝的源视图对象 |
|
inline |
通用赋值设置函数(仅适用于const)
| T | 要指向的数据类型 |
| value | 要指向的数据对象的常量引用 |
|
inline |
从NBT_Node赋值重设视图(仅适用于非const)
| node | 要创建视图的NBT_Node对象 |
|
inlinenoexcept |
移动赋值运算符
| _Move | 要移动的源视图对象 |
|
delete |
删除临时对象赋值设置方式,防止从临时对象构造导致悬空指针
| T | 临时对象的类型 |
| _Temp | 任意类型的临时对象 |
|
inline |
通用赋值设置函数(仅适用于非const)
| T | 要指向的数据类型 |
| value | 要指向的数据对象的引用 |
|
inlinenoexcept |
相等比较运算符
| _Right | 要比较的右操作数 |
|
inline |
从NBT_Node重设视图(仅适用于const)
| node | 要创建视图的NBT_Node对象 |
|
inline |
通用设置函数(仅适用于const)
| T | 要指向的数据类型 |
| value | 要指向的数据对象的常量引用 |
|
inline |
从NBT_Node重设视图(仅适用于非const)
| node | 要创建视图的NBT_Node对象 |
|
delete |
删除临时对象设置方式,防止从临时对象构造导致悬空指针
| T | 临时对象的类型 |
| _Temp | 任意类型的临时对象 |
|
inline |
通用设置函数(仅适用于非const)
| T | 要指向的数据类型 |
| value | 要指向的数据对象的引用 |
|
inline |
从value设置 Byte 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 Byte 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | Byte 类型的临时对象 |
|
inline |
从value设置 Byte 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 ByteArray 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 ByteArray 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | ByteArray 类型的临时对象 |
|
inline |
从value设置 ByteArray 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 Compound 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 Compound 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | Compound 类型的临时对象 |
|
inline |
从value设置 Compound 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 Double 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 Double 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | Double 类型的临时对象 |
|
inline |
从value设置 Double 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 End 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 End 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | End 类型的临时对象 |
|
inline |
从value设置 End 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 Float 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 Float 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | Float 类型的临时对象 |
|
inline |
从value设置 Float 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 Int 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 Int 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | Int 类型的临时对象 |
|
inline |
从value设置 Int 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 IntArray 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 IntArray 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | IntArray 类型的临时对象 |
|
inline |
从value设置 IntArray 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 List 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 List 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | List 类型的临时对象 |
|
inline |
从value设置 List 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 Long 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 Long 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | Long 类型的临时对象 |
|
inline |
从value设置 Long 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 LongArray 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 LongArray 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | LongArray 类型的临时对象 |
|
inline |
从value设置 LongArray 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 Short 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 Short 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | Short 类型的临时对象 |
|
inline |
从value设置 Short 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
从value设置 String 类型的视图(const)
| value | 要设置的值的常量引用 |
|
delete |
删除从临时对象设置 String 类型的视图,,防止从临时对象构造导致悬空指针
| _Temp | String 类型的临时对象 |
|
inline |
从value设置 String 类型的视图(非const)
| value | 要设置的值的引用 |
|
inline |
类型判断
| T | 要判断的数据类型 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Byte 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Byte 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 ByteArray 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 ByteArray 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Compound 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Compound 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Double 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Double 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 End 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 End 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Float 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Float 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Int 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Int 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 IntArray 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 IntArray 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 List 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 List 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Long 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Long 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 LongArray 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 LongArray 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Short 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 Short 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 String 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:从NBT_Node_View对象中获取 String 类型的数据
| node | 要从中获取类型的NBT_Node_View对象 |
|
friend |
友元函数:检查目标对象中是否指向 Byte 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 ByteArray 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 Compound 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 Double 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 End 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 Float 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 Int 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 IntArray 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 List 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 Long 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 LongArray 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 Short 类型的数据
| node | 要检查的对象 |
|
friend |
友元函数:检查目标对象中是否指向 String 类型的数据
| node | 要检查的对象 |