YSTest: SContext.h 文件参考

YSTest PreAlpha_b400_20130424 The YSLib Test Project

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

- 文件列表
- 文件成员

全部 类 命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义 组 页
类 | 类型定义 | 函数
SContext.h 文件参考
Naming Protocol Language

S 表达式上下文。 更多...

`#include "NPL/Lexical.h"`
`#include "YSLib/Core/ValueNode.h"`
`#include "YSLib/Service/yftext.h"`
SContext.h 的引用(Include)关系图:
此图展示该文件直接或间接的被哪些文件引用了:

浏览源代码.

## 类

class | Session
| 会话：分析指定 NPL 代码。 更多...

## 类型定义

typedef list< string > | TokenList
typedef TokenList::iterator | TLIter
typedef TokenList::const_iterator | TLCIter

## 函数

YF_API TLCIter | Validate (TLCIter b, TLCIter e)
| S 表达式上下文：处理 S 表达式。
YF_API TLCIter | Reduce (ValueNode &node, TLCIter b, TLCIter e)
| 遍历规约记号列表，取抽象语法树储存至指定值类型节点。
YF_API void | Analyze (ValueNode &, const TokenList &)
| 分析指定源，取抽象语法树储存至指定值类型节点。
YF_API void | Analyze (ValueNode &, const Session &)
YF_API void | Analyze (ValueNode &, const string &)
template<typename _type >
ValueNode | Analyze (const _type &arg)

## 详细描述

S 表达式上下文。

版本
  r1344

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

自从
  build 304

创建时间:
  2012-08-03 19:55:41 +0800

修改时间:
  2013-04-01 03:07 +0800

文本编码:
  UTF-8

模块名称:
  NPL::SContext

在文件 SContext.h 中定义.

## 类型定义说明

typedef TokenList::const_iterator TLCIter

在文件 SContext.h 第 45 行定义.

typedef TokenList::iterator TLIter

在文件 SContext.h 第 44 行定义.

typedef list<string> TokenList

在文件 SContext.h 第 43 行定义.

## 函数说明

YF_API void Analyze | ( | ValueNode & | ,
|  | const TokenList & |
| ) |  |

分析指定源，取抽象语法树储存至指定值类型节点。

自从
  build 335

在文件 SContext.cpp 第 93 行定义.

参考 Reduce(),Validate() , 以及 yassume.

参考自 Analyze() , 以及 operator>>().

函数调用图:

这是这个函数的调用关系图:

YF_API void Analyze | ( | ValueNode & | ,
|  | const Session & |
| ) |  |

在文件 SContext.cpp 第 107 行定义.

参考 Analyze().

函数调用图:

YF_API void Analyze | ( | ValueNode & | ,
|  | const string & |
| ) |  |

template<typename _type >

ValueNode Analyze | ( | const _type & | arg | ) |

在文件 SContext.h 第 110 行定义.

参考 Analyze().

函数调用图:

YF_API TLCIter Reduce | ( | ValueNode & | node,
|  | TLCIter | b,
|  | TLCIter | e
| ) |  |

遍历规约记号列表，取抽象语法树储存至指定值类型节点。

参数

  node | 节点。
  b | 起始迭代器。
  e | 终止迭代器。

前置条件
  迭代器是同一个记号列表的迭代器，其中 b 必须可解引用，且在 e 之前。

返回
  e 或指向冗余的 ')' 的迭代器。

异常

  LoggedEvent | 找到冗余的 '(' 。

自从
  build 330

在文件 SContext.cpp 第 74 行定义.

参考 YSLib::ValueNode::GetSize(),YSLib::MakeNode(),Reduce() , 以及 ystdex::to_string().

参考自 Analyze() , 以及 Reduce().

函数调用图:

这是这个函数的调用关系图:

YF_API TLCIter Validate | ( | TLCIter | b,
|  | TLCIter | e
| ) |  |

S 表达式上下文：处理 S 表达式。

自从
  build 330

遍历记号列表，验证基本合法性：圆括号是否对应。

参数

  b | 起始迭代器。
  e | 终止迭代器。

前置条件
  迭代器是同一个记号列表的迭代器，其中 b 必须可解引用，且在 e 之前。

返回
  e 或指向冗余的 ')' 的迭代器。

异常

  LoggedEvent | 找到冗余的 '(' 。

自从
  build 335

在文件 SContext.cpp 第 57 行定义.

参考 Validate().

参考自 Analyze(),YSLib::UI::BufferedRenderer::Paint() , 以及 Validate().

函数调用图:

这是这个函数的调用关系图: