YSTest: NPLA1.h 文件参考

YSTest PreAlpha_b700_20160611 The YSLib Test Project

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

- 文件列表
- 文件成员

类 | 命名空间 | 枚举 | 函数 | 变量
NPLA1.h 文件参考
YFramework Library » Naming Protocol Language

NPLA1 公共接口。 更多...

`#include "YModules.h"`
`#include <NPL/NPLA.h>`
NPLA1.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

## 类

struct | NPL::A1::NPLA1Tag
| NPLA1 元标签。 更多...
class | NPL::A1::FormContextHandler
| 形式上下文处理器。 更多...
struct | NPL::A1::FunctionContextHandler
| 函数上下文处理器。 更多...

## 命名空间

| NPL
| NPL::A1

## 枚举

enum | NPL::A1::ValueToken { NPL::A1::ValueToken::Null, NPL::A1::ValueToken::GroupingAnchor, NPL::A1::ValueToken::OrderedAnchor }
| 值记号：节点中的值的占位符。 更多...

## 函数

YF_API ValueNode | NPL::A1::TransformNode (const TermNode &, NodeMapper={}, NodeMapper=MapNPLALeafNode, NodeToString=ParseNPLANodeString, NodeInserter=InsertChild)

变换 NPLA1 节点 S 表达式抽象语法树为 NPLA1 语义结构。

异常

  std::bad_function_call | 第三至五参数为空。

更多...

YF_API ValueNode | NPL::A1::TransformNodeSequence (const TermNode &, NodeMapper={}, NodeMapper=MapNPLALeafNode, NodeToString=ParseNPLANodeString, NodeSequenceInserter=InsertSequenceChild)

变换 NPLA1 节点 S 表达式抽象语法树为 NPLA1 序列语义结构。

异常

  std::bad_function_call | 第三至五参数为空。

更多...

con ctx ctx YF_API void | NPL::A1::ReduceArguments (TermNode::Container &, ContextNode &)
| 对容器中的第二项开始逐项规约。 更多...
| NPL::A1::PDefH (bool, ReduceFirst, TermNode &term, ContextNode &ctx) ImplRet(!term.empty()?Reduce(Deref(term.begin())
| 规约首项。 更多...
YF_API bool | NPL::A1::ReplaceSeparatedChildren (TermNode &, const ValueObject &, const ValueObject &)
| 查找项中的指定分隔符，若找到则替换项为去除分隔符并添加替换前缀的形式。 更多...
YF_API bool | NPL::A1::EvaluateContextFirst (TermNode &, ContextNode &)
| 检查非空项的首项并尝试按上下文列表求值。 更多...
YF_API void | NPL::A1::InsertChild (TermNode &&, TermNode::Container &)
| 插入 NPLA1 子节点。 更多...
YF_API void | NPL::A1::InsertSequenceChild (TermNode &&, NodeSequence &)
template<typename _type , typename... _tParams>
ValueNode | NPL::A1::LoadNode (_type &&tree, _tParams &&...args)
| 加载 NPLA1 翻译单元。 更多...
template<typename _type , typename... _tParams>
ValueNode | NPL::A1::LoadNodeSequence (_type &&tree, _tParams &&...args)
YF_API GuardPasses & | NPL::A1::AccessGuardPassesRef (ContextNode &)
| 访问守护遍。 更多...
YF_API EvaluationPasses & | NPL::A1::AccessLeafPassesRef (ContextNode &)
| 访问叶节点遍。 更多...
YF_API EvaluationPasses & | NPL::A1::AccessListPassesRef (ContextNode &)
| 访问列表节点遍。 更多...
YF_API Guard | NPL::A1::EvaluateGuard (TermNode &term, ContextNode &)
| 求值守护。 更多...
YF_API bool | NPL::A1::EvaluateLeafPasses (TermNode &term, ContextNode &)
| 求值叶节点遍。 更多...
YF_API bool | NPL::A1::EvaluateListPasses (TermNode &term, ContextNode &)
| 求值列表节点遍。 更多...
YF_API bool | NPL::A1::Reduce (TermNode &, ContextNode &)
| NPLA1 节点规约。 更多...
YF_API void | NPL::A1::ReduceChildren (TermNode::iterator, TermNode::iterator, ContextNode &)
| 规约子项。 更多...
| NPL::A1::PDefH (void, ReduceChildren, TermNode::Container &con, ContextNode &ctx) ImplExpr(ReduceChildren(con.begin()
con | NPL::A1::end ()
con ctx | NPL::A1::PDefH (void, ReduceChildren, TermNode &term, ContextNode &ctx) ImplExpr(ReduceChildren(term.GetContainerRef()
YF_API TermNode | NPL::A1::TransformForSeparator (const TermNode &, const ValueObject &, const ValueObject &, const string &={})
| 变换分隔符中缀表达式为前缀表达式。 更多...
YF_API TermNode | NPL::A1::TransformForSeparatorRecursive (const TermNode &, const ValueObject &, const ValueObject &, const string &={})
| 递归变换分隔符中缀表达式为前缀表达式。 更多...
template<typename _func >
ContextHandler | NPL::A1::ToContextHandler (_func &&f)
| 转换上下文处理器。 更多...
template<typename _func >
void | NPL::A1::RegisterFunction (ContextNode &node, const string &name, _func &&f)
| 注册函数上下文处理器。 更多...

## 变量

ctx | NPL::A1::__pad0__
ctx const string & | NPL::A1::name = yimpl("$__depth"))

## 详细描述

NPLA1 公共接口。

版本
  r1348

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

自从
  build 472

创建时间:
  2014-02-02 17:58:24 +0800

修改时间:
  2016-06-01 12:26 +0800

文本编码:
  UTF-8

模块名称:
  NPL::NPLA1

在文件 NPLA1.h 中定义.