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

S 表达式上下文:处理 S 表达式。 更多...

函数

YF_API TLCIter Validate (TLCIter b, TLCIter e)
 遍历记号列表,验证基本合法性:圆括号是否对应。 更多...
 
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 表达式上下文:处理 S 表达式。

自从
build 330

函数说明

void NPL::SContext::Analyze ( ValueNode root,
const TokenList &  token_list 
)

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

自从
build 335

在文件 SContext.cpp96 行定义.

参考 platform::Descriptions::Alert, YSLib::ValueNode::begin, Reduce(), Validate() , 以及 yassume.

参考自 Analyze(), YSLib::FetchMIMEBiMapping(), YSLib::UI::WidgetLoader::LoadUILayout() , 以及 NPL::operator>>().

函数调用图:

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

void NPL::SContext::Analyze ( ValueNode root,
const Session &  session 
)

在文件 SContext.cpp110 行定义.

参考 Analyze().

函数调用图:

void NPL::SContext::Analyze ( ValueNode root,
const string unit 
)

在文件 SContext.cpp115 行定义.

参考 Analyze().

函数调用图:

template<typename _type >
ValueNode NPL::SContext::Analyze ( const _type &  arg)

在文件 SContext.h113 行定义.

参考 Analyze().

函数调用图:

TLCIter NPL::SContext::Reduce ( ValueNode node,
TLCIter  b,
TLCIter  e 
)

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

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

在文件 SContext.cpp77 行定义.

参考 platform::Descriptions::Alert, YSLib::ValueNode::GetSize() , 以及 ystdex::to_string().

参考自 Analyze().

函数调用图:

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

TLCIter NPL::SContext::Validate ( TLCIter  b,
TLCIter  e 
)

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

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

在文件 SContext.cpp60 行定义.

参考 platform::Descriptions::Alert.

参考自 Analyze().

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