fastdo
0.6.16
|
元素包 更多...
#include <elem_package.hpp>
Public 成员函数 | |
ElemPackage (void) | |
元素包构造函数 更多... | |
winux::AnsiString | escape (winux::AnsiString const &str) const |
对字符进行换码,与unescape() 配套 更多... | |
winux::AnsiString | unescape (winux::AnsiString const &str) const |
进行反换码,与escape() 配套 更多... | |
winux::AnsiString | addSlashes (winux::AnsiString const &str) const |
特殊字符加上反斜杠 更多... | |
winux::AnsiString | stripSlashes (winux::AnsiString const &str) const |
去掉反斜杠 更多... | |
void | setDelims (winux::AnsiString const &le, winux::AnsiString const &re, winux::AnsiString const &lb="", winux::AnsiString const &rb="") |
设置定界符,调用后应立即调用setEntities() 更新实体转换规则 更多... | |
void | setEntities (winux::AnsiString const &specialChar, winux::AnsiString const &specialCharEntity, winux::AnsiString const &lElemDelimEntity, winux::AnsiString const &rElemDelimEntity, winux::AnsiString const &lBlockDelimEntity, winux::AnsiString const &rBlockDelimEntity, winux::StringStringMap const *extraEntitiesTable=NULL) |
设置实体转换规则,可指定额外实体表。extraEntitiesTable为{文本=>实体}的映射表 更多... | |
void | setExtraEntities (winux::StringStringMap const &extraEntitiesTable) |
设置额外实体转换规则。extraEntitiesTable为{文本=>实体}的映射表 更多... | |
TextNodeCreator | setTextCreator (TextNodeCreator creator) |
设置文本节点创建器 更多... | |
void | setElement (winux::AnsiString const &tagName, ElementCreator creator) |
设置元素节点创建器 更多... | |
void | delElement (winux::AnsiString const &tagName) |
移除元素节点创建器 更多... | |
void | setBlock (winux::AnsiString const &blockTag, BlockCreator creator) |
设置块节点创建器 更多... | |
void | delBlock (winux::AnsiString const &blockTag) |
移除块节点创建器 更多... | |
Element * | createElement (winux::AnsiString const &tagName) const |
通过已指定的元素节点创建器创建元素,如果不存在该创建器,则使用默认Element创建器。 更多... | |
Block * | createBlock (winux::AnsiString const &blockTag) const |
通过已指定的块节点创建器创建块,如果不存在该创建器,则使用默认Block创建器。 更多... | |
TextNode * | createTextNode (winux::AnsiString const &str) const |
通过已指定的文本节点创建器文本节点,如果不存在该创建器,则使用默认TextNode创建器。 更多... | |
winux::uint | getFlags () const |
void | setFlags (winux::uint v) |
void | addFlags (winux::uint flags) |
添加旗标选项 更多... | |
void | removeFlags (winux::uint flags) |
移除旗标选项 更多... | |
winux::AnsiString & | convTagName (winux::AnsiString *tagName) const |
根据包设定转换标签名 更多... | |
winux::AnsiString & | convAttrName (winux::AnsiString *attrName) const |
根据包设定转换属性名 更多... | |
bool | exists (winux::AnsiString const &tagName) const |
指定的元素创建器是否存在 更多... | |
bool | blockExists (winux::AnsiString const &blockTag) const |
指定的块创建器是否存在 更多... | |
Public 属性 | |
winux::AnsiString | lElemDelim |
左定界符 更多... | |
winux::AnsiString | rElemDelim |
右定界符 更多... | |
winux::AnsiString | lBlockDelim |
左块元素定界符 更多... | |
winux::AnsiString | rBlockDelim |
右块元素定界符 更多... | |
静态 Public 属性 | |
static winux::AnsiString | ADDSLASHES |
要加反斜杠的字符 "\\\"\'" 更多... | |
Protected 属性 | |
ElementCreatorTable | _elemTable |
元素名=>创建函数映射表 更多... | |
BlockCreatorTable | _blockTable |
块名=>创建块的函数映射表 更多... | |
winux::MultiMatch | _entities2text |
实体到文本 更多... | |
winux::MultiMatch | _text2entities |
文本到实体 更多... | |
TextNodeCreator | _textCreator |
文本节点创建函数 更多... | |
winux::uint | _flags |
旗标选项开关 更多... | |
eienml::ElemPackage::ElemPackage | ( | void | ) |
元素包构造函数
手动调用:setDelims()
、setEntities()
、setTextCreator()
、setElement()
、setBlock()
完成元素包的初始化工作
|
inline |
对字符进行换码,与unescape()
配套
默认:@(at), left_elem_delim(le), right_elem_delim(re) left_block_delim(lb), right_block_delim(rb)
在文件 elem_package.hpp 第 40 行定义.
|
inline |
进行反换码,与escape()
配套
在文件 elem_package.hpp 第 42 行定义.
|
inline |
特殊字符加上反斜杠
在文件 elem_package.hpp 第 44 行定义.
|
inline |
去掉反斜杠
在文件 elem_package.hpp 第 46 行定义.
void eienml::ElemPackage::setDelims | ( | winux::AnsiString const & | le, |
winux::AnsiString const & | re, | ||
winux::AnsiString const & | lb = "" , |
||
winux::AnsiString const & | rb = "" |
||
) |
设置定界符,调用后应立即调用setEntities()
更新实体转换规则
void eienml::ElemPackage::setEntities | ( | winux::AnsiString const & | specialChar, |
winux::AnsiString const & | specialCharEntity, | ||
winux::AnsiString const & | lElemDelimEntity, | ||
winux::AnsiString const & | rElemDelimEntity, | ||
winux::AnsiString const & | lBlockDelimEntity, | ||
winux::AnsiString const & | rBlockDelimEntity, | ||
winux::StringStringMap const * | extraEntitiesTable = NULL |
||
) |
设置实体转换规则,可指定额外实体表。extraEntitiesTable为{文本=>实体}的映射表
void eienml::ElemPackage::setExtraEntities | ( | winux::StringStringMap const & | extraEntitiesTable | ) |
设置额外实体转换规则。extraEntitiesTable为{文本=>实体}的映射表
TextNodeCreator eienml::ElemPackage::setTextCreator | ( | TextNodeCreator | creator | ) |
设置文本节点创建器
void eienml::ElemPackage::setElement | ( | winux::AnsiString const & | tagName, |
ElementCreator | creator | ||
) |
设置元素节点创建器
void eienml::ElemPackage::delElement | ( | winux::AnsiString const & | tagName | ) |
移除元素节点创建器
void eienml::ElemPackage::setBlock | ( | winux::AnsiString const & | blockTag, |
BlockCreator | creator | ||
) |
设置块节点创建器
void eienml::ElemPackage::delBlock | ( | winux::AnsiString const & | blockTag | ) |
移除块节点创建器
Element* eienml::ElemPackage::createElement | ( | winux::AnsiString const & | tagName | ) | const |
通过已指定的元素节点创建器创建元素,如果不存在该创建器,则使用默认Element创建器。
Block* eienml::ElemPackage::createBlock | ( | winux::AnsiString const & | blockTag | ) | const |
通过已指定的块节点创建器创建块,如果不存在该创建器,则使用默认Block创建器。
TextNode* eienml::ElemPackage::createTextNode | ( | winux::AnsiString const & | str | ) | const |
通过已指定的文本节点创建器文本节点,如果不存在该创建器,则使用默认TextNode创建器。
|
inline |
在文件 elem_package.hpp 第 81 行定义.
|
inline |
在文件 elem_package.hpp 第 81 行定义.
|
inline |
添加旗标选项
在文件 elem_package.hpp 第 84 行定义.
|
inline |
移除旗标选项
在文件 elem_package.hpp 第 86 行定义.
|
inline |
根据包设定转换标签名
在文件 elem_package.hpp 第 89 行定义.
|
inline |
根据包设定转换属性名
在文件 elem_package.hpp 第 91 行定义.
|
inline |
指定的元素创建器是否存在
在文件 elem_package.hpp 第 94 行定义.
|
inline |
指定的块创建器是否存在
在文件 elem_package.hpp 第 96 行定义.
|
static |
要加反斜杠的字符 "\\\"\'"
在文件 elem_package.hpp 第 30 行定义.
winux::AnsiString eienml::ElemPackage::lElemDelim |
左定界符
在文件 elem_package.hpp 第 99 行定义.
winux::AnsiString eienml::ElemPackage::rElemDelim |
右定界符
在文件 elem_package.hpp 第 100 行定义.
winux::AnsiString eienml::ElemPackage::lBlockDelim |
左块元素定界符
在文件 elem_package.hpp 第 101 行定义.
winux::AnsiString eienml::ElemPackage::rBlockDelim |
右块元素定界符
在文件 elem_package.hpp 第 102 行定义.
|
protected |
元素名=>创建函数映射表
在文件 elem_package.hpp 第 105 行定义.
|
protected |
块名=>创建块的函数映射表
在文件 elem_package.hpp 第 106 行定义.
|
protected |
实体到文本
在文件 elem_package.hpp 第 107 行定义.
|
protected |
文本到实体
在文件 elem_package.hpp 第 108 行定义.
|
protected |
文本节点创建函数
在文件 elem_package.hpp 第 109 行定义.
|
protected |
旗标选项开关
在文件 elem_package.hpp 第 110 行定义.