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

YAML序列值类型(数组) 更多...

#include <yaml_value.hpp>

类 yaml_sequence 继承关系图:
[图例]

Public 类型

enum  sequence_style { Block , Flow }
 序列集合样式枚举 更多...
Public 类型 继承自 yaml_value
enum  types {
  Null , Boolean , Integer , Float ,
  String , Timestamp , Sequence , Mapping
}
 YAML值类型枚举 更多...

Public 成员函数

 yaml_sequence (const sequence_style s=Block)
 构造序列
types type () const noexcept override
 获取值的具体类型
void add_element (shared_ptr< yaml_value > value)
 添加元素到序列末尾
const yaml_valueget_element (const size_t index) const noexcept
 获取指定索引的元素(常量版本)
yaml_valueget_element (const size_t index) noexcept
 获取指定索引的元素(可变版本)
size_t size () const noexcept
 获取序列大小
const vector< shared_ptr< yaml_value > > & get_elements () const noexcept
 获取所有元素的常量引用
sequence_style get_style () const noexcept
 获取集合样式
void set_style (const sequence_style s) noexcept
 设置集合样式
Public 成员函数 继承自 yaml_value
void set_anchor (const string &a)
 设置锚点名
void set_tag (const string &t)
 设置类型标签
string to_string () const
 紧凑单行序列化
string to_document () const
 格式化文档序列化
Public 成员函数 继承自 istringify< yaml_value >
constexpr string to_string () const
 转换为字符串

额外继承的成员函数

Public 属性 继承自 yaml_value
string anchor
 锚点名(YAML &anchor 语法),空字符串表示无锚点
string tag
 类型标签(YAML !tag 语法),空字符串表示无标签

详细描述

YAML序列值类型(数组)

表示YAML中的有序值列表。支持两种集合样式:

  • **块样式**(Block):每行以 - 开头的缩进列表
  • **流样式**(Flow):方括号内的逗号分隔列表 [a, b, c]

序列中的元素可以是任意YAML值类型(包括嵌套的序列和映射)。

注解
此类禁止拷贝,仅允许移动。

在文件 yaml_value.hpp581 行定义.

成员枚举类型说明

◆ sequence_style

序列集合样式枚举

枚举值
Block 

块样式(- item)

Flow 

流样式([item, ...])

在文件 yaml_value.hpp587 行定义.

构造及析构函数说明

◆ yaml_sequence()

yaml_sequence::yaml_sequence ( const sequence_style s = Block)
inlineexplicit

构造序列

参数
s集合样式,默认为块样式

在文件 yaml_value.hpp603 行定义.

引用了 Block.

成员函数说明

◆ add_element()

void yaml_sequence::add_element ( shared_ptr< yaml_value > value)
inline

添加元素到序列末尾

参数
value要添加的YAML值

在文件 yaml_value.hpp618 行定义.

引用了 move().

◆ get_element() [1/2]

const yaml_value * yaml_sequence::get_element ( const size_t index) const
inlinenodiscardnoexcept

获取指定索引的元素(常量版本)

参数
index元素索引(从0开始)
返回
元素指针,索引越界返回 nullptr

在文件 yaml_value.hpp625 行定义.

◆ get_element() [2/2]

yaml_value * yaml_sequence::get_element ( const size_t index)
inlinenodiscardnoexcept

获取指定索引的元素(可变版本)

参数
index元素索引(从0开始)
返回
元素指针,索引越界返回 nullptr

在文件 yaml_value.hpp637 行定义.

◆ get_elements()

const vector< shared_ptr< yaml_value > > & yaml_sequence::get_elements ( ) const
inlinenodiscardnoexcept

获取所有元素的常量引用

返回
元素列表的常量引用

在文件 yaml_value.hpp654 行定义.

◆ get_style()

sequence_style yaml_sequence::get_style ( ) const
inlinenodiscardnoexcept

获取集合样式

返回
序列样式枚举值

在文件 yaml_value.hpp660 行定义.

◆ set_style()

void yaml_sequence::set_style ( const sequence_style s)
inlinenoexcept

设置集合样式

参数
s新的序列样式

在文件 yaml_value.hpp666 行定义.

◆ size()

size_t yaml_sequence::size ( ) const
inlinenodiscardnoexcept

获取序列大小

返回
元素数量

在文件 yaml_value.hpp648 行定义.

◆ type()

types yaml_sequence::type ( ) const
inlinenodiscardoverridevirtualnoexcept

获取值的具体类型

返回
类型枚举值

实现了 yaml_value.

在文件 yaml_value.hpp611 行定义.

引用了 yaml_value::Sequence , 以及 type().

被这些函数引用 type().


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