Doxygen
PerlModOutput类 参考
+ PerlModOutput 的协作图:

Public 成员函数

 PerlModOutput (bool pretty)
 
virtual ~PerlModOutput ()
 
void setPerlModOutputStream (PerlModOutputStream *os)
 
PerlModOutputcontinueBlock ()
 
PerlModOutputadd (char c)
 
PerlModOutputadd (const QCString &s)
 
PerlModOutputadd (QCString &s)
 
PerlModOutputadd (int n)
 
PerlModOutputadd (unsigned int n)
 
PerlModOutputaddQuoted (const QCString &s)
 
PerlModOutputindent ()
 
PerlModOutputopen (char c, const QCString &s=QCString())
 
PerlModOutputclose (char c=0)
 
PerlModOutputaddField (const QCString &s)
 
PerlModOutputaddFieldQuotedChar (const QCString &field, char content)
 
PerlModOutputaddFieldQuotedString (const QCString &field, const QCString &content)
 
PerlModOutputaddFieldBoolean (const QCString &field, bool content)
 
PerlModOutputopenList (const QCString &s=QCString())
 
PerlModOutputcloseList ()
 
PerlModOutputopenHash (const QCString &s=QCString())
 
PerlModOutputcloseHash ()
 

Public 属性

bool m_pretty
 

Protected 成员函数

void incIndent ()
 
void decIndent ()
 
void iaddQuoted (const QCString &)
 
void iaddFieldQuotedChar (const QCString &, char)
 
void iaddFieldQuotedString (const QCString &, const QCString &)
 
void iaddField (const QCString &)
 
void iopen (char, const QCString &)
 
void iclose (char)
 

Private 属性

PerlModOutputStreamm_stream
 
int m_indentation
 
bool m_blockstart
 
char m_spaces [PERLOUTPUT_MAX_INDENTATION *2+2]
 

详细描述

在文件 perlmodgen.cpp99 行定义.

构造及析构函数说明

◆ PerlModOutput()

PerlModOutput::PerlModOutput ( bool  pretty)
inline

在文件 perlmodgen.cpp105 行定义.

106  : m_pretty(pretty), m_stream(0), m_indentation(false), m_blockstart(true)
107  {
108  m_spaces[0] = 0;
109  }

引用了 m_spaces.

◆ ~PerlModOutput()

virtual PerlModOutput::~PerlModOutput ( )
inlinevirtual

在文件 perlmodgen.cpp111 行定义.

111 { }

成员函数说明

◆ add() [1/5]

◆ add() [2/5]

PerlModOutput& PerlModOutput::add ( const QCString s)
inline

在文件 perlmodgen.cpp129 行定义.

129 { m_stream->add(s); return *this; }

引用了 PerlModOutputStream::add() , 以及 m_stream.

◆ add() [3/5]

PerlModOutput& PerlModOutput::add ( int  n)
inline

在文件 perlmodgen.cpp131 行定义.

131 { m_stream->add(n); return *this; }

引用了 PerlModOutputStream::add() , 以及 m_stream.

◆ add() [4/5]

PerlModOutput& PerlModOutput::add ( QCString s)
inline

在文件 perlmodgen.cpp130 行定义.

130 { m_stream->add(s); return *this; }

引用了 PerlModOutputStream::add() , 以及 m_stream.

◆ add() [5/5]

PerlModOutput& PerlModOutput::add ( unsigned int  n)
inline

在文件 perlmodgen.cpp132 行定义.

132 { m_stream->add(n); return *this; }

引用了 PerlModOutputStream::add() , 以及 m_stream.

◆ addField()

PerlModOutput& PerlModOutput::addField ( const QCString s)
inline

在文件 perlmodgen.cpp148 行定义.

148 { iaddField(s); return *this; }

引用了 iaddField().

被这些函数引用 addPerlModDocBlock() , 以及 PerlModDocVisitor::enterText().

◆ addFieldBoolean()

PerlModOutput& PerlModOutput::addFieldBoolean ( const QCString field,
bool  content 
)
inline

在文件 perlmodgen.cpp157 行定义.

158  {
159  return addFieldQuotedString(field, content ? "yes" : "no");
160  }

引用了 addFieldQuotedString().

被这些函数引用 PerlModGenerator::addIncludeInfo(), PerlModGenerator::generatePerlModForMember() , 以及 PerlModDocVisitor::visit().

◆ addFieldQuotedChar()

PerlModOutput& PerlModOutput::addFieldQuotedChar ( const QCString field,
char  content 
)
inline

在文件 perlmodgen.cpp149 行定义.

150  {
151  iaddFieldQuotedChar(field, content); return *this;
152  }

引用了 iaddFieldQuotedChar().

被这些函数引用 PerlModDocVisitor::visit().

◆ addFieldQuotedString()

◆ addQuoted()

PerlModOutput& PerlModOutput::addQuoted ( const QCString s)
inline

在文件 perlmodgen.cpp134 行定义.

134 { iaddQuoted(s); return *this; }

引用了 iaddQuoted().

被这些函数引用 PerlModDocVisitor::visit() , 以及 PerlModDocVisitor::visitPre().

◆ close()

PerlModOutput& PerlModOutput::close ( char  c = 0)
inline

在文件 perlmodgen.cpp146 行定义.

146 { iclose(c); return *this; }

引用了 iclose().

被这些函数引用 closeHash() , 以及 closeList().

◆ closeHash()

◆ closeList()

◆ continueBlock()

PerlModOutput& PerlModOutput::continueBlock ( )
inline

在文件 perlmodgen.cpp118 行定义.

119  {
120  if (m_blockstart)
121  m_blockstart = false;
122  else
123  m_stream->add(',');
124  indent();
125  return *this;
126  }

引用了 PerlModOutputStream::add(), indent(), m_blockstart , 以及 m_stream.

被这些函数引用 iaddField() , 以及 iopen().

◆ decIndent()

void PerlModOutput::decIndent ( )
protected

在文件 perlmodgen.cpp216 行定义.

217 {
218  m_indentation--;
220  m_spaces[m_indentation * 2] = 0;
221 }

引用了 m_indentation, m_spaces , 以及 PERLOUTPUT_MAX_INDENTATION.

被这些函数引用 iclose().

◆ iaddField()

void PerlModOutput::iaddField ( const QCString s)
protected

在文件 perlmodgen.cpp238 行定义.

239 {
240  continueBlock();
241  m_stream->add(s);
242  m_stream->add(m_pretty ? " => " : "=>");
243 }

引用了 PerlModOutputStream::add(), continueBlock(), m_pretty , 以及 m_stream.

被这些函数引用 addField(), iaddFieldQuotedChar(), iaddFieldQuotedString() , 以及 iopen().

◆ iaddFieldQuotedChar()

void PerlModOutput::iaddFieldQuotedChar ( const QCString field,
char  content 
)
protected

在文件 perlmodgen.cpp245 行定义.

246 {
247  iaddField(field);
248  m_stream->add('\'');
249  if ((content == '\'') || (content == '\\'))
250  m_stream->add('\\');
251  m_stream->add(content);
252  m_stream->add('\'');
253 }

引用了 PerlModOutputStream::add(), iaddField() , 以及 m_stream.

被这些函数引用 addFieldQuotedChar().

◆ iaddFieldQuotedString()

void PerlModOutput::iaddFieldQuotedString ( const QCString field,
const QCString content 
)
protected

在文件 perlmodgen.cpp255 行定义.

256 {
257  if (content == 0)
258  return;
259  iaddField(field);
260  m_stream->add('\'');
261  iaddQuoted(content);
262  m_stream->add('\'');
263 }

引用了 PerlModOutputStream::add(), iaddField(), iaddQuoted() , 以及 m_stream.

被这些函数引用 addFieldQuotedString().

◆ iaddQuoted()

void PerlModOutput::iaddQuoted ( const QCString str)
protected

在文件 perlmodgen.cpp223 行定义.

224 {
225  if (str.isEmpty()) return;
226  const char *s = str.data();
227  char c;
228  while ((c = *s++) != 0)
229  {
230  if ((c == '\'') || (c == '\\'))
231  {
232  m_stream->add('\\');
233  }
234  m_stream->add(c);
235  }
236 }

引用了 PerlModOutputStream::add(), QCString::data(), QCString::isEmpty() , 以及 m_stream.

被这些函数引用 addQuoted() , 以及 iaddFieldQuotedString().

◆ iclose()

void PerlModOutput::iclose ( char  c)
protected

在文件 perlmodgen.cpp276 行定义.

277 {
278  decIndent();
279  indent();
280  if (c != 0)
281  m_stream->add(c);
282  m_blockstart = false;
283 }

引用了 PerlModOutputStream::add(), decIndent(), indent(), m_blockstart , 以及 m_stream.

被这些函数引用 close().

◆ incIndent()

void PerlModOutput::incIndent ( )
protected

在文件 perlmodgen.cpp206 行定义.

207 {
209  {
210  char *s = &m_spaces[m_indentation * 2];
211  *s++ = ' '; *s++ = ' '; *s = 0;
212  }
213  m_indentation++;
214 }

引用了 m_indentation, m_spaces , 以及 PERLOUTPUT_MAX_INDENTATION.

被这些函数引用 iopen().

◆ indent()

PerlModOutput& PerlModOutput::indent ( )
inline

在文件 perlmodgen.cpp136 行定义.

137  {
138  if (m_pretty) {
139  m_stream->add('\n');
141  }
142  return *this;
143  }

引用了 PerlModOutputStream::add(), m_pretty, m_spaces , 以及 m_stream.

被这些函数引用 continueBlock() , 以及 iclose().

◆ iopen()

void PerlModOutput::iopen ( char  c,
const QCString s 
)
protected

在文件 perlmodgen.cpp265 行定义.

266 {
267  if (s != 0)
268  iaddField(s);
269  else
270  continueBlock();
271  m_stream->add(c);
272  incIndent();
273  m_blockstart = true;
274 }

引用了 PerlModOutputStream::add(), continueBlock(), iaddField(), incIndent(), m_blockstart , 以及 m_stream.

被这些函数引用 open().

◆ open()

PerlModOutput& PerlModOutput::open ( char  c,
const QCString s = QCString() 
)
inline

在文件 perlmodgen.cpp145 行定义.

145 { iopen(c, s); return *this; }

引用了 iopen().

被这些函数引用 openHash() , 以及 openList().

◆ openHash()

◆ openList()

◆ setPerlModOutputStream()

void PerlModOutput::setPerlModOutputStream ( PerlModOutputStream os)
inline

在文件 perlmodgen.cpp113 行定义.

113 { m_stream = os; }

引用了 m_stream.

被这些函数引用 PerlModGenerator::generatePerlModOutput().

类成员变量说明

◆ m_blockstart

bool PerlModOutput::m_blockstart
private

在文件 perlmodgen.cpp186 行定义.

被这些函数引用 continueBlock(), iclose() , 以及 iopen().

◆ m_indentation

int PerlModOutput::m_indentation
private

在文件 perlmodgen.cpp185 行定义.

被这些函数引用 decIndent() , 以及 incIndent().

◆ m_pretty

bool PerlModOutput::m_pretty

在文件 perlmodgen.cpp103 行定义.

被这些函数引用 iaddField() , 以及 indent().

◆ m_spaces

char PerlModOutput::m_spaces[PERLOUTPUT_MAX_INDENTATION *2+2]
private

在文件 perlmodgen.cpp189 行定义.

被这些函数引用 decIndent(), incIndent(), indent() , 以及 PerlModOutput().

◆ m_stream


该类的文档由以下文件生成:
PerlModOutput::m_stream
PerlModOutputStream * m_stream
Definition: perlmodgen.cpp:184
PerlModOutput::iaddFieldQuotedChar
void iaddFieldQuotedChar(const QCString &, char)
Definition: perlmodgen.cpp:245
PerlModOutput::addFieldQuotedString
PerlModOutput & addFieldQuotedString(const QCString &field, const QCString &content)
Definition: perlmodgen.cpp:153
PerlModOutput::close
PerlModOutput & close(char c=0)
Definition: perlmodgen.cpp:146
QCString::isEmpty
bool isEmpty() const
Returns TRUE iff the string is empty
Definition: qcstring.h:144
PerlModOutput::iaddQuoted
void iaddQuoted(const QCString &)
Definition: perlmodgen.cpp:223
PerlModOutput::m_blockstart
bool m_blockstart
Definition: perlmodgen.cpp:186
PerlModOutput::m_spaces
char m_spaces[PERLOUTPUT_MAX_INDENTATION *2+2]
Definition: perlmodgen.cpp:189
PerlModOutput::incIndent
void incIndent()
Definition: perlmodgen.cpp:206
PERLOUTPUT_MAX_INDENTATION
#define PERLOUTPUT_MAX_INDENTATION
Definition: perlmodgen.cpp:47
PerlModOutput::open
PerlModOutput & open(char c, const QCString &s=QCString())
Definition: perlmodgen.cpp:145
PerlModOutput::continueBlock
PerlModOutput & continueBlock()
Definition: perlmodgen.cpp:118
PerlModOutput::m_pretty
bool m_pretty
Definition: perlmodgen.cpp:103
PerlModOutputStream::add
void add(char c)
Definition: perlmodgen.cpp:63
PerlModOutput::decIndent
void decIndent()
Definition: perlmodgen.cpp:216
PerlModOutput::indent
PerlModOutput & indent()
Definition: perlmodgen.cpp:136
PerlModOutput::iaddFieldQuotedString
void iaddFieldQuotedString(const QCString &, const QCString &)
Definition: perlmodgen.cpp:255
PerlModOutput::iaddField
void iaddField(const QCString &)
Definition: perlmodgen.cpp:238
PerlModOutput::iopen
void iopen(char, const QCString &)
Definition: perlmodgen.cpp:265
PerlModOutput::iclose
void iclose(char)
Definition: perlmodgen.cpp:276
QCString::data
const char * data() const
Returns a pointer to the contents of the string in the form of a 0-terminated C string
Definition: qcstring.h:153
PerlModOutput::m_indentation
int m_indentation
Definition: perlmodgen.cpp:185