chenjunfu2-nbt-cpp v2.1.0
一个基于CPP20的NBT(Named Binary Tag)库
载入中...
搜索中...
未找到
NBT_Node.hpp 文件参考

NBT节点类型,支持存储所有NBT类型的变体 更多...

#include <compare>
#include "NBT_Type.hpp"
#include "NBT_Array.hpp"
#include "NBT_String.hpp"
#include "NBT_List.hpp"
#include "NBT_Compound.hpp"

浏览该文件的源代码.

class  NBT_Node
 NBT节点,用于存储NBT格式的各种数据类型 更多...

宏定义

#define MU8STR(charLiteralString)
 从C风格字符串获取M-UTF-8的字符串
#define MU8STRV(charLiteralString)
 从C风格字符串获取M-UTF-8的字符串视图
#define TYPE_GET_FUNC(type)
 不同类型名获取接口生成宏
#define TYPE_SET_FUNC(type)
 不同类型名接口生成宏

详细描述

NBT节点类型,支持存储所有NBT类型的变体

宏定义说明

◆ MU8STR

#define MU8STR ( charLiteralString)
值:
(NBT_Type::String(U8TOMU8STR(u8##charLiteralString)))
#define U8TOMU8STR(u8LiteralString)
UTF-8字符串字面量到M-UTF-8静态字符串数组的编译期转换宏
定义 MUTF8_Tool.hpp:1112
NBT_String< std::basic_string< uint8_t >, std::basic_string_view< uint8_t > > String
字符串类型,存储Java M-UTF-8字符串
定义 NBT_Type.hpp:64

从C风格字符串获取M-UTF-8的字符串

参数
charLiteralStringC风格字符串字面量
返回
存储C风格字符串转换到存储M-UTF-8的NBT_Type::String对象

◆ MU8STRV

#define MU8STRV ( charLiteralString)
值:
(NBT_Type::String::View(U8TOMU8STR(u8##charLiteralString)))
NBT_StringView< std::basic_string< uint8_t >, std::basic_string_view< uint8_t > > View
定义 NBT_String.hpp:145

从C风格字符串获取M-UTF-8的字符串视图

参数
charLiteralStringC风格字符串字面量
返回
存储C风格字符串转换到存储M-UTF-8的NBT_Type::String::View视图对象
注解
视图对象用于减少String拷贝构造开销,内部直接引用字符数组指针,不持有字符串

◆ TYPE_GET_FUNC

#define TYPE_GET_FUNC ( type)

不同类型名获取接口生成宏

注解
用户不应该使用此宏(实际上宏已在使用后取消定义),标注仅为消除doxygen警告

◆ TYPE_SET_FUNC

#define TYPE_SET_FUNC ( type)
值:
\
NBT_Type::type &Set##type(const NBT_Type::type &value)\
{\
return Set<NBT_Type::type>(value);\
}\
\\
NBT_Type::type &Set##type(NBT_Type::type &&value)\
{\
return Set<NBT_Type::type>(std::move(value));\
}\
\\
NBT_Type::type &Set##type(void)\
{\
return Set<NBT_Type::type>();\
}

不同类型名接口生成宏

注解
用户不应该使用此宏(实际上宏已在使用后取消定义),标注仅为消除doxygen警告