Doxygen
TemplateNodeText类 参考

Class representing a piece of plain text in a template 更多...

+ 类 TemplateNodeText 继承关系图:
+ TemplateNodeText 的协作图:

Public 成员函数

 TemplateNodeText (TemplateParser *, TemplateNode *parent, int, const QCString &data)
 
void render (TextStream &ts, TemplateContext *c)
 
- Public 成员函数 继承自 TemplateNode
 TemplateNode (TemplateNode *parent)
 
virtual ~TemplateNode ()
 
TemplateNodeparent ()
 

Private 属性

QCString m_data
 

详细描述

Class representing a piece of plain text in a template

在文件 template.cpp2927 行定义.

构造及析构函数说明

◆ TemplateNodeText()

TemplateNodeText::TemplateNodeText ( TemplateParser ,
TemplateNode parent,
int  ,
const QCString data 
)
inline

在文件 template.cpp2930 行定义.

2931  : TemplateNode(parent), m_data(data)
2932  {
2933  TRACE(("TemplateNodeText('%s')\n",replace(data,'\n',' ').data()));
2934  }

引用了 reg::replace() , 以及 TRACE.

成员函数说明

◆ render()

void TemplateNodeText::render ( TextStream ts,
TemplateContext c 
)
inlinevirtual

实现了 TemplateNode.

在文件 template.cpp2936 行定义.

2937  {
2938  TemplateContextImpl* ci = dynamic_cast<TemplateContextImpl*>(c);
2939  if (ci==0) return; // should not happen
2940  //printf("TemplateNodeText::render(%s) needsRecoding=%d ci=%p\n",qPrint(m_data),ci->needsRecoding(),ci);
2941  if (ci->spacelessEnabled())
2942  {
2943  if (ci->needsRecoding())
2944  {
2945  ts << ci->recode(ci->spacelessIntf()->remove(m_data));
2946  }
2947  else
2948  {
2949  ts << ci->spacelessIntf()->remove(m_data);
2950  }
2951  }
2952  else
2953  {
2954  if (ci->needsRecoding())
2955  {
2956  ts << ci->recode(m_data);
2957  }
2958  else
2959  {
2960  ts << m_data;
2961  }
2962  }
2963  }

引用了 m_data, TemplateContextImpl::needsRecoding(), TemplateContextImpl::recode(), TemplateContextImpl::spacelessEnabled() , 以及 TemplateContextImpl::spacelessIntf().

类成员变量说明

◆ m_data

QCString TemplateNodeText::m_data
private

在文件 template.cpp2965 行定义.

被这些函数引用 render().


该类的文档由以下文件生成:
reg::replace
std::string replace(const std::string &str, const Ex &re, const std::string &replacement)
Searching in a given input string for parts that match regular expression re and replaces those parts...
Definition: regex.cpp:740
TemplateContextImpl::spacelessIntf
std::unique_ptr< TemplateSpacelessIntf > & spacelessIntf()
Definition: template.cpp:687
TemplateNodeText::m_data
QCString m_data
Definition: template.cpp:2965
TRACE
#define TRACE(x)
Definition: template.cpp:40
TemplateContextImpl::recode
QCString recode(const QCString &s)
Definition: template.cpp:2609
TemplateNode::parent
TemplateNode * parent()
Definition: template.cpp:1941
TemplateNode::TemplateNode
TemplateNode(TemplateNode *parent)
Definition: template.cpp:1936
TemplateContextImpl::needsRecoding
bool needsRecoding() const
Definition: template.cpp:697
TemplateContextImpl
Internal class representing the implementation of a template context
Definition: template.cpp:640
TemplateContextImpl::spacelessEnabled
bool spacelessEnabled() const
Definition: template.cpp:692