YSTest: ValueNode.h 文件参考

YSTest PreAlpha_b800_20170810 The YSLib Test Project

- 首页
- 相关页面
- 模块
- 命名空间
- 类
- 文件

- 文件列表
- 文件成员

类 | 命名空间 | 函数
ValueNode.h 文件参考
Core

值类型节点。 更多...

`#include "YModules.h"`
`#include <YSLib/Core/YObject.h>`
`#include <ystdex/path.hpp>`
`#include <ystdex/set.hpp>`
`#include <numeric>`
ValueNode.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

## 类

struct | YSLib::ListContainerTag
| 标记列表构造容器。 更多...
struct | YSLib::NoContainerTag
| 标记不使用容器。 更多...
class | YSLib::ValueNode
| 值类型节点。 更多...
class | YSLib::NodeLiteral
| 包装节点的组合字面量。 更多...

## 命名空间

| YSLib
| YSLib 命名空间。

## 函数

template<typename _tKey , yimpl(typename=typename ystdex::enable_if_t< ystdex::is_interoperable< const _tKey &, const string & >::value >) >
const ValueNode & | YSLib::AccessNode (const ValueNode &node, const _tKey &name)
template<typename _tKey , yimpl(typename=typename ystdex::enable_if_t< ystdex::is_interoperable< const _tKey &, const string & >::value >) >
observer_ptr< ValueNode > | YSLib::AccessNodePtr (ValueNode &node, const _tKey &name)
template<typename _tKey , yimpl(typename=typename ystdex::enable_if_t< ystdex::is_interoperable< const _tKey &, const string & >::value >) >
observer_ptr< const ValueNode > | YSLib::AccessNodePtr (const ValueNode &node, const _tKey &name)
template<typename _tString , typename... _tParams>
ValueNode | YSLib::StringifyToNode (_tString &&str, _tParams &&...args)
| 取指定名称和转换为字符串的值类型节点。 更多...
template<typename _tString , typename... _tParams>
ValueNode | YSLib::PackNodes (_tString &&name, _tParams &&...args)
| 取以指定分量为参数对应初始化得到的值类型节点为子节点的值类型节点。 更多...
template<class _tNode , typename _tIn >
_tNode && | YSLib::AccessNode (_tNode &&node, _tIn first, _tIn last)
template<class _tNode , typename _tRange , yimpl(typename=typename ystdex::enable_if_t< !std::is_constructible< const string &, const _tRange & >::value >) >
auto | YSLib::AccessNode (_tNode &&node, const _tRange &c) -> decltype(YSLib::AccessNode(yforward(node), begin(c), end(c)))
YF_API observer_ptr< ValueNode > | YSLib::AccessNodePtr (ValueNode::Container &, const string &) ynothrow
| 访问节点指针。 更多...
YF_API observer_ptr< const ValueNode > | YSLib::AccessNodePtr (const ValueNode::Container &, const string &) ynothrow
template<typename _tKey >
observer_ptr< ValueNode > | YSLib::AccessNodePtr (ValueNode::Container &con, const _tKey &name) ynothrow
template<typename _tKey >
observer_ptr< const ValueNode > | YSLib::AccessNodePtr (const ValueNode::Container &con, const _tKey &name) ynothrow
template<typename _tKey >
observer_ptr< ValueNode > | YSLib::AccessNodePtr (ValueNode::Container *p_con, const _tKey &name) ynothrow
template<typename _tKey >
observer_ptr< const ValueNode > | YSLib::AccessNodePtr (const ValueNode::Container *p_con, const _tKey &name) ynothrow
template<typename _tKey >
observer_ptr< ValueNode > | YSLib::AccessNodePtr (observer_ptr< ValueNode::Container > p_con, const _tKey &name) ynothrow
template<typename _tKey >
observer_ptr< const ValueNode > | YSLib::AccessNodePtr (observer_ptr< const ValueNode::Container > p_con, const _tKey &name) ynothrow
YF_API observer_ptr< ValueNode > | YSLib::AccessNodePtr (ValueNode &, size_t)
YF_API observer_ptr< const ValueNode > | YSLib::AccessNodePtr (const ValueNode &, size_t)
template<class _tNode , typename _tIn >
auto | YSLib::AccessNodePtr (_tNode &&node, _tIn first, _tIn last) -> decltype(make_obsrever(std::addressof(node)))
template<class _tNode , typename _tRange , yimpl(typename=typename ystdex::enable_if_t< !std::is_constructible< const string &, const _tRange & >::value >) >
auto | YSLib::AccessNodePtr (_tNode &&node, const _tRange &c) -> decltype(YSLib::AccessNodePtr(yforward(node), begin(c), end(c)))
template<typename _type , typename... _tParams>
_type & | YSLib::AccessChild (ValueNode &node, _tParams &&...args)
| 访问子节点的指定类型对象。 更多...
template<typename _type , typename... _tParams>
const _type & | YSLib::AccessChild (const ValueNode &node, _tParams &&...args)
template<typename _type , typename... _tParams>
observer_ptr< _type > | YSLib::AccessChildPtr (ValueNode &node, _tParams &&...args) ynothrow
| 访问指定名称的子节点的指定类型对象的指针。 更多...
template<typename _type , typename... _tParams>
observer_ptr< const _type > | YSLib::AccessChildPtr (const ValueNode &node, _tParams &&...args) ynothrow
template<typename _type , typename... _tParams>
observer_ptr< _type > | YSLib::AccessChildPtr (ValueNode *p_node, _tParams &&...args) ynothrow
template<typename _type , typename... _tParams>
observer_ptr< const _type > | YSLib::AccessChildPtr (const ValueNode *p_node, _tParams &&...args) ynothrow
| YSLib::PDefH (const ValueNode &, AsNode, const ValueNode &node) ImplRet(node) template< typename _tString
| 传递指定名称和值参数构造值类型节点。 更多...
typename _tParams ValueNode | YSLib::AsNode (_tString &&str, _tParams &&...args)
template<typename _tString , typename... _tParams>
ValueNode | YSLib::MakeNode (_tString &&str, _tParams &&...args)
| 传递指定名称和退化值参数构造值类型节点。 更多...

## 变量

yconstexpr const struct YSLib::ListContainerTag | YSLib::ListContainer
yconstexpr const struct YSLib::NoContainerTag | YSLib::NoContainer
| YSLib::UnpackToNode
| YSLib::PDefH (const ValueNode &, UnpackToNode, const ValueNode &arg) ImplRet(arg) inline PDefH(ValueNode &&
| 从引用参数取值类型节点：返回自身。 更多...
ValueNode &&arg | YSLib::ImplRet (std::move(arg)) template< class _tPack > inline ValueNode UnpackToNode(_tPack &&pk)
| 从参数取以指定分量为初始化参数的值类型节点。 更多...
template<typename _tElem >
ValueNode::Container | YSLib::CollectNodes (std::initializer_list< _tElem > il)
| 取指定值类型节点为成员的节点容器。 更多...
template<typename... _tParams>
ValueNode::Container | YSLib::CollectNodes (_tParams &&...args)
using | YSLib::NodeSequence = yimpl(YSLib::vector)< ValueNode >
| 节点序列容器。 更多...
| YSLib::MakeIndex
YF_API void | YSLib::RemoveEmptyChildren (ValueNode::Container &) ynothrow
| 移除空子节点。 更多...
YF_API void | YSLib::RemoveHead (ValueNode::Container &) ynothrowv
| 移除首个子节点。 更多...
| YSLib::PDefH (void, RemoveHead, ValueNode &node) ynothrowv ImplExpr(RemoveHead(node.GetContainerRef())) template< typename _tNode
| 根据节点和节点容器创建操作设置目标节点的值或子节点。 更多...
_fCallable void | YSLib::SetContentWith (ValueNode &dst, _tNode &node, _fCallable f)
YF_API bool | YSLib::IsPrefixedIndex (string_view, char= '$')
| 判断字符串是否是前缀索引：一个指定字符和非负整数的组合。 更多...
YF_API string | YSLib::MakeIndex (size_t)
| 转换节点大小为新的节点索引值。 更多...
| YSLib::PDefH (string, MakeIndex, const ValueNode::Container &con) ImplRet(MakeIndex(con.size())) inline PDefH(string
const ValueNode &node ImplRet(MakeIndex(node.GetContainer())) YF_API size_t GetLastIndexOf(const ValueNode | YSLib::PDefH (size_t, GetLastIndexOf, const ValueNode &term) ImplRet(GetLastIndexOf(term.GetContainer())) template< typename _tParam
| 取最后一个子节点名称的前缀索引。 更多...
const ValueNode &node ImplRet(MakeIndex(node.GetContainer())) YF_API size_t GetLastIndexOf(const ValueNode typename _tParams ValueNode | YSLib::AsIndexNode (_tParam &&arg, _tParams &&...args)

## 详细描述

值类型节点。

版本
  r3190

作者
  FrankHB frank.nosp@m.hb19.nosp@m.89@gm.nosp@m.ail..nosp@m.com

自从
  build 338

创建时间:
  2012-08-03 23:03:44 +0800

修改时间:
  2017-07-30 02:46 +0800

文本编码:
  UTF-8

模块名称:
  YSLib::Core::ValueNode

在文件 ValueNode.h 中定义.