YSTest  PreAlpha_b400_20130424
The YSLib Test Project
 全部  命名空间 文件 函数 变量 类型定义 枚举 枚举值 友元 宏定义  
SContext.h 文件参考

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

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.h45 行定义.

typedef TokenList::iterator TLIter

在文件 SContext.h44 行定义.

typedef list<string> TokenList

在文件 SContext.h43 行定义.

函数说明

YF_API void Analyze ( ValueNode ,
const TokenList  
)

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

自从
build 335

在文件 SContext.cpp93 行定义.

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

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

函数调用图:

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

YF_API void Analyze ( ValueNode ,
const Session  
)

在文件 SContext.cpp107 行定义.

参考 Analyze().

函数调用图:

YF_API void Analyze ( ValueNode ,
const string &   
)
template<typename _type >
ValueNode Analyze ( const _type &  arg)

在文件 SContext.h110 行定义.

参考 Analyze().

函数调用图:

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

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

参数
node节点。
b起始迭代器。
e终止迭代器。
前置条件
迭代器是同一个记号列表的迭代器,其中 b 必须可解引用,且在 e 之前。
返回
e 或指向冗余的 ')' 的迭代器。
异常
LoggedEvent找到冗余的 '(' 。
自从
build 330

在文件 SContext.cpp74 行定义.

参考 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.cpp57 行定义.

参考 Validate().

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

函数调用图:

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