NexusForce 1.0.0
A Modern C++ Library with extended functionality, web components, and utility libraries
载入中...
搜索中...
未找到
toml_builder类 参考

toml配置构建器 更多...

#include <toml_builder.hpp>

Public 成员函数

 toml_builder ()
 构造函数
 toml_builder (toml_builder &&other)=default
 移动构造函数
toml_builderoperator= (toml_builder &&other)=default
 移动赋值运算符
toml_builderkey (string key)
 设置当前键名
toml_builderbegin_table (const string &name)
 开始一个标准表格(单键版本)
toml_builderbegin_table (const vector< string > &path)
 开始一个标准表格(路径版本)
toml_builderend_table ()
 结束当前标准表格
toml_builderbegin_inline_table ()
 开始一个内联表格
toml_builderend_inline_table ()
 结束当前内联表格
toml_builderbegin_array ()
 开始一个数组
toml_builderend_array ()
 结束当前数组
toml_builderbegin_array_table (const string &name)
 开始一个表格数组(单键版本)
toml_builderbegin_array_table (const vector< string > &path)
 开始一个表格数组(路径版本)
toml_builderend_array_table ()
 结束当前表格数组
toml_buildervalue (nullptr_t np)
 设置null值
toml_buildervalue (const bool value)
 设置布尔值
toml_buildervalue (const int64_t value)
 设置64位整数值
toml_buildervalue (const int value)
 设置整数值
toml_buildervalue (const double value)
 设置双精度浮点数值
toml_buildervalue (string value)
 设置字符串值(基本字符串类型)
toml_buildervalue (const char *value)
 设置C字符串值
toml_buildervalue (const string_view value)
 设置字符串视图值
toml_buildervalue (unique_ptr< toml_value > value)
 设置已构建的toml值
toml_buildervalue_string (string value, toml_string::string_type type)
 设置指定类型的字符串值
toml_buildervalue_datetime (const string_view value, toml_datetime::datetime_type type)
 设置指定类型的日期时间值
template<typename Iterable>
toml_buildervalue (const Iterable &iterable)
 设置可迭代对象的值
toml_buildervalue_table (const function< void(toml_builder &)> &build_func)
 使用函数式方式构建表格值
toml_buildervalue_inline_table (const function< void(toml_builder &)> &build_func)
 使用函数式方式构建内联表格值
toml_buildervalue_array (const function< void(toml_builder &)> &build_func)
 使用函数式方式构建数组值
unique_ptr< toml_tablebuild ()
 构建toml文档

详细描述

toml配置构建器

提供流式接口构建toml配置格式,支持以下特性:

  • 链式调用构建表格和数组
  • 自动类型转换(整数、浮点数、布尔值、字符串)
  • 函数式构建嵌套结构
  • 集合类型自动转换(可迭代对象、映射表)
  • 上下文管理(自动维护当前表格/数组状态)
  • 支持所有toml字符串类型(Basic, Literal, Multi-line)
  • 支持所有toml日期时间类型

在文件 toml_builder.hpp40 行定义.

构造及析构函数说明

◆ toml_builder() [1/2]

◆ toml_builder() [2/2]

toml_builder::toml_builder ( toml_builder && other)
default

移动构造函数

参数
other源构建器

引用了 toml_builder().

成员函数说明

◆ begin_array()

toml_builder & toml_builder::begin_array ( )

开始一个数组

返回
自身引用,支持链式调用
异常
toml_exception当上下文无效或键名缺失时抛出

格式:[element1, element2, element3]

引用了 toml_builder().

◆ begin_array_table() [1/2]

toml_builder & toml_builder::begin_array_table ( const string & name)

开始一个表格数组(单键版本)

参数
name表格数组名称
返回
自身引用,支持链式调用
异常
toml_exception当路径无效时抛出

格式:[[array_name]]

引用了 name() , 以及 toml_builder().

◆ begin_array_table() [2/2]

toml_builder & toml_builder::begin_array_table ( const vector< string > & path)

开始一个表格数组(路径版本)

参数
path表格数组路径
返回
自身引用,支持链式调用
异常
toml_exception当路径无效时抛出

格式:[[parent.child.array]]

引用了 toml_builder().

◆ begin_inline_table()

toml_builder & toml_builder::begin_inline_table ( )

开始一个内联表格

返回
自身引用,支持链式调用
异常
toml_exception当上下文无效或键名缺失时抛出

格式:{ key = value, key2 = value2 }

引用了 toml_builder().

◆ begin_table() [1/2]

toml_builder & toml_builder::begin_table ( const string & name)

开始一个标准表格(单键版本)

参数
name表格名称
返回
自身引用,支持链式调用
异常
toml_exception当路径无效时抛出

引用了 name() , 以及 toml_builder().

◆ begin_table() [2/2]

toml_builder & toml_builder::begin_table ( const vector< string > & path)

开始一个标准表格(路径版本)

参数
path表格路径
返回
自身引用,支持链式调用
异常
toml_exception当路径无效时抛出

格式:[parent.child.grandchild]

引用了 toml_builder().

◆ build()

unique_ptr< toml_table > toml_builder::build ( )

构建toml文档

返回
构建完成的根表格
异常
toml_exception当存在未闭合的上下文时抛出

完成构建过程,返回构建好的根表格。 调用前必须确保所有上下文都已正确闭合。

◆ end_array()

toml_builder & toml_builder::end_array ( )

结束当前数组

返回
自身引用,支持链式调用
异常
toml_exception当不在数组上下文中时抛出

引用了 toml_builder().

◆ end_array_table()

toml_builder & toml_builder::end_array_table ( )

结束当前表格数组

返回
自身引用,支持链式调用

等同于 end_table()

引用了 toml_builder().

◆ end_inline_table()

toml_builder & toml_builder::end_inline_table ( )

结束当前内联表格

返回
自身引用,支持链式调用
异常
toml_exception当不在内联表格上下文中时抛出

引用了 toml_builder().

◆ end_table()

toml_builder & toml_builder::end_table ( )

结束当前标准表格

返回
自身引用,支持链式调用
异常
toml_exception当没有表格可结束或试图结束根表格时抛出

引用了 toml_builder().

◆ key()

toml_builder & toml_builder::key ( string key)

设置当前键名

参数
key键名字符串
返回
自身引用,支持链式调用
异常
toml_exception当不在表格上下文中时抛出

引用了 key() , 以及 toml_builder().

被这些函数引用 key().

◆ operator=()

toml_builder & toml_builder::operator= ( toml_builder && other)
default

移动赋值运算符

参数
other源构建器
返回
自身引用

引用了 toml_builder().

◆ value() [1/10]

toml_builder & toml_builder::value ( const bool value)
inline

设置布尔值

参数
value布尔值
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp312 行定义.

引用了 make_unique(), toml_builder() , 以及 value().

◆ value() [2/10]

toml_builder & toml_builder::value ( const char * value)
inline

设置C字符串值

参数
valueC字符串
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp354 行定义.

引用了 toml_builder(), value() , 以及 value().

被这些函数引用 value().

◆ value() [3/10]

toml_builder & toml_builder::value ( const double value)
inline

设置双精度浮点数值

参数
value双精度浮点数
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp336 行定义.

引用了 make_unique(), toml_builder() , 以及 value().

◆ value() [4/10]

toml_builder & toml_builder::value ( const int value)
inline

设置整数值

参数
value整数
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp328 行定义.

引用了 toml_builder(), value() , 以及 value().

被这些函数引用 value().

◆ value() [5/10]

toml_builder & toml_builder::value ( const int64_t value)
inline

设置64位整数值

参数
value64位整数
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp320 行定义.

引用了 make_unique(), toml_builder() , 以及 value().

◆ value() [6/10]

template<typename Iterable>
toml_builder & toml_builder::value ( const Iterable & iterable)
inline

设置可迭代对象的值

模板参数
Iterable可迭代类型
参数
iterable可迭代对象
返回
自身引用,支持链式调用

根据类型自动转换为数组或内联表格:

  • 映射表类型(如unordered_map)转换为内联表格
  • 其他可迭代类型转换为数组

在文件 toml_builder.hpp405 行定义.

引用了 toml_builder().

◆ value() [7/10]

toml_builder & toml_builder::value ( const string_view value)
inline

设置字符串视图值

参数
value字符串视图
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp362 行定义.

引用了 toml_builder(), value() , 以及 value().

被这些函数引用 value().

◆ value() [8/10]

toml_builder & toml_builder::value ( nullptr_t np)
inline

设置null值

参数
np空指针标记
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp304 行定义.

引用了 make_unique() , 以及 toml_builder().

被这些函数引用 value(), value(), value(), value(), value(), value(), value(), value(), value_datetime() , 以及 value_string().

◆ value() [9/10]

toml_builder & toml_builder::value ( string value)
inline

设置字符串值(基本字符串类型)

参数
value字符串值
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp344 行定义.

引用了 toml_string::Basic, make_unique(), move(), toml_builder() , 以及 value().

◆ value() [10/10]

toml_builder & toml_builder::value ( unique_ptr< toml_value > value)
inline

设置已构建的toml值

参数
valuetoml值指针
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp370 行定义.

引用了 move(), toml_builder() , 以及 value().

◆ value_array()

toml_builder & toml_builder::value_array ( const function< void(toml_builder &)> & build_func)

使用函数式方式构建数组值

参数
build_func构建函数,接收toml_builder引用
返回
自身引用,支持链式调用

在独立的作用域内构建一个数组。

引用了 toml_builder().

◆ value_datetime()

toml_builder & toml_builder::value_datetime ( const string_view value,
toml_datetime::datetime_type type )
inline

设置指定类型的日期时间值

参数
value日期时间字符串
type日期时间类型
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp390 行定义.

引用了 make_unique(), toml_builder() , 以及 value().

◆ value_inline_table()

toml_builder & toml_builder::value_inline_table ( const function< void(toml_builder &)> & build_func)

使用函数式方式构建内联表格值

参数
build_func构建函数,接收toml_builder引用
返回
自身引用,支持链式调用

在独立的作用域内构建一个内联表格。

引用了 toml_builder().

◆ value_string()

toml_builder & toml_builder::value_string ( string value,
toml_string::string_type type )
inline

设置指定类型的字符串值

参数
value字符串值
type字符串类型(Basic, Literal, MultiBasic, MultiLiteral)
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在文件 toml_builder.hpp379 行定义.

引用了 make_unique(), move(), toml_builder() , 以及 value().

◆ value_table()

toml_builder & toml_builder::value_table ( const function< void(toml_builder &)> & build_func)

使用函数式方式构建表格值

参数
build_func构建函数,接收toml_builder引用
返回
自身引用,支持链式调用
异常
toml_exception当上下文无效、键名缺失或键重复时抛出

在独立的作用域内构建一个标准表格。

引用了 toml_builder().


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