YSTest: NPLA.cpp 文件参考

YSTest PreAlpha_b800_20170810 The YSLib Test Project

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

- 文件列表
- 文件成员

命名空间 | 函数
NPLA.cpp 文件参考
YFramework Library » Naming Protocol Language

NPLA 公共接口。 更多...

`#include "NPL/YModules.h"`
`#include <YFM_NPL_NPLA>`
`#include <YFM_NPL_SContext>`
NPLA.cpp 的引用(Include)关系图:

浏览源代码.

## 命名空间

| NPL
| NPL::SXML
| SXML 表示。

## 函数

YF_API string | NPL::EscapeNodeLiteral (const ValueNode &)
| 转义 NPLA 节点字面量。 更多...
YF_API string | NPL::LiteralizeEscapeNodeLiteral (const ValueNode &)
| 转义 NPLA 节点字面量。 更多...
YF_API string | NPL::ParseNPLANodeString (const ValueNode &)
| 解析 NPLA 节点字符串。 更多...
YF_API ValueNode | NPL::SXML::MakeXMLDecl (const string &={}, const string &="1.0", const string &="UTF-8", const string &={})
| 构造 SXML 文档 XML 声明节点。 更多...
YF_API ValueNode | NPL::SXML::MakeXMLDoc (const string &={}, const string &="1.0", const string &="UTF-8", const string &={})
| 构造包含 XML 声明的 SXML 文档节点。 更多...
| NPL::ImplDeDtor (NPLException) ImplDeDtor(ListReductionFailure) ImplDeDtor(InvalidSyntax) ImplDeDtor(ParameterMismatch) ArityMismatch
| NPL::ImplDeDtor (ArityMismatch) BadIdentifier
| NPL::ImplDeDtor (BadIdentifier) LexemeCategory CategorizeBasicLexeme(string_view id) ynothrowv
YF_API bool | NPL::IsNPLAExtendedLiteral (string_view) ynothrowv
| 判断不是非扩展字面量的词素是否为 NPLA 扩展字面量。 更多...
YF_API observer_ptr< const TokenValue > | NPL::TermToNamePtr (const TermNode &)
| 访问项的值作为记号。 更多...
YF_API void | NPL::TokenizeTerm (TermNode &term)
| 标记记号节点：递归变换节点，转换其中的词素为记号值。 更多...
bool | NPL::CheckReducible (ReductionStatus status)
ValueObject | NPL::LiftTermObject (const ValueObject &vo)
void | NPL::LiftToReference (TermNode &term, TermNode &tm)
void | NPL::LiftToSelf (TermNode &term)
ReductionStatus | NPL::ReduceHeadEmptyList (TermNode &term) ynothrow
YF_API ValueNode | NPL::MapNPLALeafNode (const TermNode &)
| 映射 NPLA 叶节点。 更多...
YF_API ValueNode | NPL::TransformToSyntaxNode (const ValueNode &, const string &={})
| 变换节点为语法分析树叶节点。 更多...
YF_API string | NPL::DefaultGenerateIndent (size_t)
| 生成水平制表符为单位的缩进。 更多...
YF_API void | NPL::PrintIndent (std::ostream &, IndentGenerator=DefaultGenerateIndent, size_t=1)

异常

  std::bad_function | 异常中立：参数指定的处理器为空。

更多...

YF_API void | NPL::PrintNode (std::ostream &, const ValueNode &, NodeToString=EscapeNodeLiteral, IndentGenerator=DefaultGenerateIndent, size_t=0)
| 打印 NPLA 节点。 更多...
YF_API void | NPL::PrintNodeChild (std::ostream &, const ValueNode &, NodeToString=EscapeNodeLiteral, IndentGenerator=DefaultGenerateIndent, size_t=0)
| 打印作为子节点的 NPLA 节点。 更多...
YF_API bool | NPL::PrintNodeString (std::ostream &, const ValueNode &, NodeToString=EscapeNodeLiteral)
| 打印节点字符串。 更多...
YF_API string | NPL::SXML::ConvertAttributeNodeString (const TermNode &)
| 转换 SXML 节点为 XML 属性字符串。 更多...
YF_API string | NPL::SXML::ConvertDocumentNode (const TermNode &, IndentGenerator=DefaultGenerateIndent, size_t=0, ParseOption=ParseOption::Normal)
| 转换 SXML 文档节点为 XML 字符串。 更多...
YF_API string | NPL::SXML::ConvertStringNode (const TermNode &)
| 转换 SXML 节点为被转义的 XML 字符串。 更多...
YF_API void | NPL::SXML::PrintSyntaxNode (std::ostream &os, const TermNode &, IndentGenerator=DefaultGenerateIndent, size_t=0)
| 打印 SContext::Analyze 分析取得的 SXML 语法树节点并刷新流。 更多...
YF_API LexemeCategory | NPL::CategorizeLexeme (string_view) ynothrowv
| 对词素分类。 更多...
YF_API TermNode & | NPL::ReferenceTerm (TermNode &)
| 访问项并取解析 TermReference 间接值后的引用。 更多...
YF_API const TermNode & | NPL::ReferenceTerm (const TermNode &)
YF_API void | NPL::LiftTerm (TermNode &, TermNode &)
| 提升项：使用第二个参数指定的项的内容替换第一个项的内容。 更多...
YF_API void | NPL::LiftTermOrRef (TermNode &, TermNode &)
| 提升项或创建引用项。 更多...
YF_API void | NPL::LiftToOther (TermNode &, TermNode &)
| 递归提升项及其子项或递归创建项和子项对应的包含间接值的引用项到其它项。 更多...
YF_API ReductionStatus | NPL::ReduceToList (TermNode &) ynothrow
| 规约为列表：对枝节点移除第一个子项，保留余下的子项作为列表。 更多...

## 详细描述

NPLA 公共接口。

版本
  r1301

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

自从
  build 663

创建时间:
  2016-01-07 10:32:45 +0800

修改时间:
  2017-08-05 20:16 +0800

文本编码:
  UTF-8

模块名称:
  NPL::NPLA

在文件 NPLA.cpp 中定义.