Doxygen
DocSets类 参考

A class that generates docset files. 更多...

#include <docsets.h>

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

struct  Private
 

Public 成员函数

 DocSets ()
 
 ~DocSets ()
 
void initialize ()
 
void finalize ()
 
void incContentsDepth ()
 
void decContentsDepth ()
 
void addContentsItem (bool isDir, const QCString &name, const QCString &ref, const QCString &file, const QCString &anchor, bool separateIndex, bool addToNavIndex, const Definition *def)
 
void addIndexItem (const Definition *context, const MemberDef *md, const QCString &sectionAnchor, const QCString &title)
 
void addIndexFile (const QCString &name)
 
void addImageFile (const QCString &)
 
void addStyleSheetFile (const QCString &)
 
- Public 成员函数 继承自 IndexIntf
virtual ~IndexIntf ()
 

Private 成员函数

void writeToken (TextStream &t, const Definition *d, const QCString &type, const QCString &lang, const QCString &scope=QCString(), const QCString &anchor=QCString(), const QCString &decl=QCString())
 

Private 属性

std::unique_ptr< Privatep
 

详细描述

A class that generates docset files.

These files can be used to create context help for use within Apple's Xcode 3.0 development environment

在文件 docsets.h32 行定义.

构造及析构函数说明

◆ DocSets()

DocSets::DocSets ( )

在文件 docsets.cpp44 行定义.

44  : p(std::make_unique<Private>())
45 {
46 }

◆ ~DocSets()

DocSets::~DocSets ( )

在文件 docsets.cpp48 行定义.

49 {
50 }

成员函数说明

◆ addContentsItem()

void DocSets::addContentsItem ( bool  isDir,
const QCString name,
const QCString ref,
const QCString file,
const QCString anchor,
bool  separateIndex,
bool  addToNavIndex,
const Definition def 
)
virtual

实现了 IndexIntf.

在文件 docsets.cpp230 行定义.

238 {
239  (void)isDir;
240  //printf("DocSets::addContentsItem(%s) depth=%zu\n",name,p->indentStack.size());
241  if (ref==0)
242  {
243  if (!p->indentStack.top())
244  {
245  p->nts << p->indent() << " </Node>\n";
246  }
247  p->indentStack.top()=false;
248  p->nts << p->indent() << " <Node>\n";
249  p->nts << p->indent() << " <Name>" << convertToXML(name) << "</Name>\n";
250  if (!file.isEmpty() && file[0]=='^') // URL marker
251  {
252  p->nts << p->indent() << " <URL>" << convertToXML(&file[1])
253  << "</URL>\n";
254  }
255  else // relative file
256  {
257  p->nts << p->indent() << " <Path>";
258  if (!file.isEmpty() && file[0]=='!') // user specified file
259  {
260  p->nts << convertToXML(&file[1]);
261  }
262  else if (!file.isEmpty()) // doxygen generated file
263  {
264  p->nts << addHtmlExtensionIfMissing(file);
265  }
266  p->nts << "</Path>\n";
267  if (!file.isEmpty() && !anchor.isEmpty())
268  {
269  p->nts << p->indent() << " <Anchor>" << anchor << "</Anchor>\n";
270  }
271  }
272  }
273 }

引用了 addHtmlExtensionIfMissing(), convertToXML(), QCString::isEmpty() , 以及 p.

◆ addImageFile()

void DocSets::addImageFile ( const QCString )
inlinevirtual

实现了 IndexIntf.

在文件 docsets.h54 行定义.

54 {}

◆ addIndexFile()

void DocSets::addIndexFile ( const QCString name)
virtual

实现了 IndexIntf.

在文件 docsets.cpp533 行定义.

534 {
535  (void)name;
536 }

◆ addIndexItem()

void DocSets::addIndexItem ( const Definition context,
const MemberDef md,
const QCString sectionAnchor,
const QCString title 
)
virtual

实现了 IndexIntf.

在文件 docsets.cpp275 行定义.

277 {
278  if (md==0 && context==0) return;
279 
280  const FileDef *fd = 0;
281  const ClassDef *cd = 0;
282  const NamespaceDef *nd = 0;
283 
284  if (md)
285  {
286  fd = md->getFileDef();
287  cd = md->getClassDef();
288  nd = md->getNamespaceDef();
289  if (!md->isLinkable()) return; // internal symbol
290  }
291 
292  QCString scope;
293  QCString type;
294  QCString decl;
295 
296  // determine language
297  QCString lang;
298  SrcLangExt langExt = SrcLangExt_Cpp;
299  if (md)
300  {
301  langExt = md->getLanguage();
302  }
303  else if (context)
304  {
305  langExt = context->getLanguage();
306  }
307  switch (langExt)
308  {
309  case SrcLangExt_Cpp:
310  case SrcLangExt_ObjC:
311  {
312  if (md && (md->isObjCMethod() || md->isObjCProperty()))
313  lang="occ"; // Objective C/C++
314  else if (fd && fd->name().right(2).lower()==".c")
315  lang="c"; // Plain C
316  else if (cd==0 && nd==0)
317  lang="c"; // Plain C symbol outside any class or namespace
318  else
319  lang="cpp"; // C++
320  }
321  break;
322  case SrcLangExt_IDL: lang="idl"; break; // IDL
323  case SrcLangExt_CSharp: lang="csharp"; break; // C#
324  case SrcLangExt_PHP: lang="php"; break; // PHP4/5
325  case SrcLangExt_D: lang="d"; break; // D
326  case SrcLangExt_Java: lang="java"; break; // Java
327  case SrcLangExt_JS: lang="javascript"; break; // JavaScript
328  case SrcLangExt_Python: lang="python"; break; // Python
329  case SrcLangExt_Fortran: lang="fortran"; break; // Fortran
330  case SrcLangExt_VHDL: lang="vhdl"; break; // VHDL
331  case SrcLangExt_XML: lang="xml"; break; // DBUS XML
332  case SrcLangExt_SQL: lang="sql"; break; // Sql
333  case SrcLangExt_Markdown:lang="markdown"; break; // Markdown
334  case SrcLangExt_Slice: lang="slice"; break; // Slice
335  case SrcLangExt_Lex: lang="lex"; break; // Lex
336  case SrcLangExt_Unknown: lang="unknown"; break; // should not happen!
337  }
338 
339  if (md)
340  {
341  if (context==0)
342  {
343  if (md->getGroupDef())
344  context = md->getGroupDef();
345  else if (md->getFileDef())
346  context = md->getFileDef();
347  }
348  if (context==0) return; // should not happen
349 
350  switch (md->memberType())
351  {
352  case MemberType_Define:
353  type="macro"; break;
354  case MemberType_Function:
355  if (cd && (cd->compoundType()==ClassDef::Interface ||
357  {
358  if (md->isStatic())
359  type="clm"; // class member
360  else
361  type="instm"; // instance member
362  }
363  else if (cd && cd->compoundType()==ClassDef::Protocol)
364  {
365  if (md->isStatic())
366  type="intfcm"; // interface class member
367  else
368  type="intfm"; // interface member
369  }
370  else
371  type="func";
372  break;
373  case MemberType_Variable:
374  type="data"; break;
375  case MemberType_Typedef:
376  type="tdef"; break;
378  type="enum"; break;
380  type="econst"; break;
381  //case MemberDef::Prototype:
382  // type="prototype"; break;
383  case MemberType_Signal:
384  type="signal"; break;
385  case MemberType_Slot:
386  type="slot"; break;
387  case MemberType_Friend:
388  type="ffunc"; break;
389  case MemberType_DCOP:
390  type="dcop"; break;
391  case MemberType_Property:
392  if (cd && cd->compoundType()==ClassDef::Protocol)
393  type="intfp"; // interface property
394  else
395  type="instp"; // instance property
396  break;
397  case MemberType_Event:
398  type="event"; break;
400  type="ifc"; break;
401  case MemberType_Service:
402  type="svc"; break;
403  case MemberType_Sequence:
404  type="sequence"; break;
406  type="dictionary"; break;
407  }
408  cd = md->getClassDef();
409  nd = md->getNamespaceDef();
410  if (cd)
411  {
412  scope = cd->qualifiedName();
413  }
414  else if (nd)
415  {
416  scope = nd->name();
417  }
418  const MemberDef *declMd = md->memberDeclaration();
419  if (declMd==0) declMd = md;
420  {
421  fd = md->getFileDef();
422  if (fd)
423  {
424  decl = fd->name();
425  }
426  }
427  writeToken(p->tts,md,type,lang,scope,md->anchor(),decl);
428  }
429  else if (context && context->isLinkable())
430  {
431  if (fd==0 && context->definitionType()==Definition::TypeFile)
432  {
433  fd = toFileDef(context);
434  }
435  if (cd==0 && context->definitionType()==Definition::TypeClass)
436  {
437  cd = toClassDef(context);
438  }
439  if (nd==0 && context->definitionType()==Definition::TypeNamespace)
440  {
441  nd = toNamespaceDef(context);
442  }
443  if (fd)
444  {
445  type="file";
446  }
447  else if (cd)
448  {
449  scope = cd->qualifiedName();
450  if (cd->isTemplate())
451  {
452  type="tmplt";
453  }
454  else if (cd->compoundType()==ClassDef::Protocol)
455  {
456  type="intf";
457  if (scope.right(2)=="-p") scope=scope.left(scope.length()-2);
458  }
459  else if (cd->compoundType()==ClassDef::Interface)
460  {
461  type="cl";
462  }
463  else if (cd->compoundType()==ClassDef::Category)
464  {
465  type="cat";
466  }
467  else
468  {
469  type = "cl";
470  }
471  const IncludeInfo *ii = cd->includeInfo();
472  if (ii)
473  {
474  decl=ii->includeName;
475  }
476  }
477  else if (nd)
478  {
479  scope = nd->name();
480  type = "ns";
481  }
482  if (p->scopes.find(context->getOutputFileBase().str())==p->scopes.end())
483  {
484  writeToken(p->tts,context,type,lang,scope,QCString(),decl);
485  p->scopes.insert(context->getOutputFileBase().str());
486  }
487  }
488 }

引用了 MemberDef::anchor(), ClassDef::Category, ClassDef::Class, ClassDef::compoundType(), Definition::definitionType(), MemberDef::getClassDef(), MemberDef::getFileDef(), MemberDef::getGroupDef(), Definition::getLanguage(), MemberDef::getNamespaceDef(), Definition::getOutputFileBase(), ClassDef::includeInfo(), IncludeInfo::includeName, ClassDef::Interface, MemberDef::isLinkable(), Definition::isLinkable(), MemberDef::isObjCMethod(), MemberDef::isObjCProperty(), MemberDef::isStatic(), ClassDef::isTemplate(), QCString::left(), QCString::length(), QCString::lower(), MemberDef::memberDeclaration(), MemberDef::memberType(), MemberType_DCOP, MemberType_Define, MemberType_Dictionary, MemberType_Enumeration, MemberType_EnumValue, MemberType_Event, MemberType_Friend, MemberType_Function, MemberType_Interface, MemberType_Property, MemberType_Sequence, MemberType_Service, MemberType_Signal, MemberType_Slot, MemberType_Typedef, MemberType_Variable, FileDef::name(), Definition::name(), p, ClassDef::Protocol, Definition::qualifiedName(), QCString::right(), SrcLangExt_Cpp, SrcLangExt_CSharp, SrcLangExt_D, SrcLangExt_Fortran, SrcLangExt_IDL, SrcLangExt_Java, SrcLangExt_JS, SrcLangExt_Lex, SrcLangExt_Markdown, SrcLangExt_ObjC, SrcLangExt_PHP, SrcLangExt_Python, SrcLangExt_Slice, SrcLangExt_SQL, SrcLangExt_Unknown, SrcLangExt_VHDL, SrcLangExt_XML, QCString::str(), toClassDef(), toFileDef(), toNamespaceDef(), Definition::TypeClass, Definition::TypeFile, Definition::TypeNamespace , 以及 writeToken().

◆ addStyleSheetFile()

void DocSets::addStyleSheetFile ( const QCString )
inlinevirtual

实现了 IndexIntf.

在文件 docsets.h55 行定义.

55 {}

◆ decContentsDepth()

void DocSets::decContentsDepth ( )
virtual

实现了 IndexIntf.

在文件 docsets.cpp219 行定义.

220 {
221  if (!p->indentStack.top())
222  {
223  p->nts << p->indent() << " </Node>\n";
224  }
225  p->nts << p->indent() << "</Subnodes>\n";
226  p->indentStack.pop();
227  //printf("DocSets::decContentsDepth() depth=%zu\n",p->indentStack.size());
228 }

引用了 p.

◆ finalize()

void DocSets::finalize ( )
virtual

实现了 IndexIntf.

在文件 docsets.cpp186 行定义.

187 {
188  if (!p->indentStack.top())
189  {
190  p->nts << p->indent() << " </Node>\n";
191  }
192  p->indentStack.pop();
193  p->nts << " </Subnodes>\n";
194  p->nts << " </Node>\n";
195  p->nts << " </TOC>\n";
196  p->nts << "</DocSetNodes>\n";
197  p->nts.flush();
198  p->ntf.close();
199 
200  p->tts << "</Tokens>\n";
201  p->tts.flush();
202  p->ttf.close();
203 }

引用了 p.

◆ incContentsDepth()

void DocSets::incContentsDepth ( )
virtual

实现了 IndexIntf.

在文件 docsets.cpp212 行定义.

213 {
214  //printf("DocSets::incContentsDepth() depth=%zu\n",p->indentStack.size());
215  p->nts << p->indent() << "<Subnodes>\n";
216  p->indentStack.push(true);
217 }

引用了 p.

◆ initialize()

void DocSets::initialize ( )
virtual

实现了 IndexIntf.

在文件 docsets.cpp52 行定义.

53 {
54  // -- get config options
55  QCString projectName = Config_getString(PROJECT_NAME);
56  if (projectName.isEmpty()) projectName="root";
57  QCString bundleId = Config_getString(DOCSET_BUNDLE_ID);
58  if (bundleId.isEmpty()) bundleId="org.doxygen.Project";
59  QCString feedName = Config_getString(DOCSET_FEEDNAME);
60  if (feedName.isEmpty()) feedName="FeedName";
61  QCString feedURL = Config_getString(DOCSET_FEEDURL);
62  if (feedURL.isEmpty()) feedURL="FeedUrl";
63  QCString publisherId = Config_getString(DOCSET_PUBLISHER_ID);
64  if (publisherId.isEmpty()) publisherId="PublisherId";
65  QCString publisherName = Config_getString(DOCSET_PUBLISHER_NAME);
66  if (publisherName.isEmpty()) publisherName="PublisherName";
67  QCString projectNumber = Config_getString(PROJECT_NUMBER);
68  if (projectNumber.isEmpty()) projectNumber="ProjectNumber";
69 
70  // -- write Makefile
71  {
72  QCString mfName = Config_getString(HTML_OUTPUT) + "/Makefile";
73  std::ofstream ts(mfName.str(),std::ofstream::out | std::ofstream::binary);
74  if (!ts.is_open())
75  {
76  term("Could not open file %s for writing\n",qPrint(mfName));
77  }
78 
79  ts << "DOCSET_NAME=" << bundleId << ".docset\n"
80  "DOCSET_CONTENTS=$(DOCSET_NAME)/Contents\n"
81  "DOCSET_RESOURCES=$(DOCSET_CONTENTS)/Resources\n"
82  "DOCSET_DOCUMENTS=$(DOCSET_RESOURCES)/Documents\n"
83  "DESTDIR=~/Library/Developer/Shared/Documentation/DocSets\n"
84  "XCODE_INSTALL=\"$(shell xcode-select -print-path)\"\n"
85  "\n"
86  "all: docset\n"
87  "\n"
88  "docset:\n"
89  "\tmkdir -p $(DOCSET_DOCUMENTS)\n"
90  "\tcp Nodes.xml $(DOCSET_RESOURCES)\n"
91  "\tcp Tokens.xml $(DOCSET_RESOURCES)\n"
92  "\tcp Info.plist $(DOCSET_CONTENTS)\n"
93  "\ttar --exclude $(DOCSET_NAME) \\\n"
94  "\t --exclude Nodes.xml \\\n"
95  "\t --exclude Tokens.xml \\\n"
96  "\t --exclude Info.plist \\\n"
97  "\t --exclude Makefile -c -f - . \\\n"
98  "\t | (cd $(DOCSET_DOCUMENTS); tar xvf -)\n"
99  "\t$(XCODE_INSTALL)/usr/bin/docsetutil index $(DOCSET_NAME)\n"
100  "\trm -f $(DOCSET_DOCUMENTS)/Nodes.xml\n"
101  "\trm -f $(DOCSET_DOCUMENTS)/Info.plist\n"
102  "\trm -f $(DOCSET_DOCUMENTS)/Makefile\n"
103  "\trm -f $(DOCSET_RESOURCES)/Nodes.xml\n"
104  "\trm -f $(DOCSET_RESOURCES)/Tokens.xml\n"
105  "\n"
106  "clean:\n"
107  "\trm -rf $(DOCSET_NAME)\n"
108  "\n"
109  "install: docset\n"
110  "\tmkdir -p $(DESTDIR)\n"
111  "\tcp -R $(DOCSET_NAME) $(DESTDIR)\n"
112  "\n"
113  "uninstall:\n"
114  "\trm -rf $(DESTDIR)/$(DOCSET_NAME)\n"
115  "\n"
116  "always:\n";
117  }
118 
119  // -- write Info.plist
120  {
121  QCString plName = Config_getString(HTML_OUTPUT) + "/Info.plist";
122  std::ofstream ts(plName.str(),std::ofstream::out | std::ofstream::binary);
123  if (!ts.is_open())
124  {
125  term("Could not open file %s for writing\n",qPrint(plName));
126  }
127 
128  ts << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"
129  "<!DOCTYPE plist PUBLIC \"-//Apple Computer//DTD PLIST 1.0//EN\"\n"
130  "\"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n"
131  "<plist version=\"1.0\">\n"
132  "<dict>\n"
133  " <key>CFBundleName</key>\n"
134  " <string>" << projectName << "</string>\n"
135  " <key>CFBundleIdentifier</key>\n"
136  " <string>" << bundleId << "</string>\n"
137  " <key>CFBundleVersion</key>\n"
138  " <string>" << projectNumber << "</string>\n"
139  " <key>DocSetFeedName</key>\n"
140  " <string>" << feedName << "</string>\n"
141  " <key>DocSetFeedUrl</key>\n"
142  " <string>" << feedURL << "</string>\n"
143  " <key>DocSetPublisherIdentifier</key>\n"
144  " <string>" << publisherId << "</string>\n"
145  " <key>DocSetPublisherName</key>\n"
146  " <string>" << publisherName << "</string>\n"
147  // markers for Dash
148  " <key>DashDocSetFamily</key>\n"
149  " <string>doxy</string>\n"
150  " <key>DocSetPlatformFamily</key>\n"
151  " <string>doxygen</string>\n"
152  "</dict>\n"
153  "</plist>\n";
154  }
155 
156  // -- start Nodes.xml
157  QCString notes = Config_getString(HTML_OUTPUT) + "/Nodes.xml";
158  p->ntf.open(notes.str(),std::ofstream::out | std::ofstream::binary);
159  if (!p->ntf.is_open())
160  {
161  term("Could not open file %s for writing\n",qPrint(notes));
162  }
163  p->nts.setStream(&p->ntf);
164  //QCString indexName=Config_getBool(GENERATE_TREEVIEW)?"main":"index";
165  QCString indexName="index";
166  p->nts << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
167  p->nts << "<DocSetNodes version=\"1.0\">\n";
168  p->nts << " <TOC>\n";
169  p->nts << " <Node>\n";
170  p->nts << " <Name>Root</Name>\n";
171  p->nts << " <Path>" << indexName << Doxygen::htmlFileExtension << "</Path>\n";
172  p->nts << " <Subnodes>\n";
173  p->indentStack.push(true);
174 
175  QCString tokens = Config_getString(HTML_OUTPUT) + "/Tokens.xml";
176  p->ttf.open(tokens.str(),std::ofstream::out | std::ofstream::binary);
177  if (!p->ttf.is_open())
178  {
179  term("Could not open file %s for writing\n",qPrint(tokens));
180  }
181  p->tts.setStream(&p->ttf);
182  p->tts << "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n";
183  p->tts << "<Tokens version=\"1.0\">\n";
184 }

◆ writeToken()

void DocSets::writeToken ( TextStream t,
const Definition d,
const QCString type,
const QCString lang,
const QCString scope = QCString(),
const QCString anchor = QCString(),
const QCString decl = QCString() 
)
private

在文件 docsets.cpp490 行定义.

497 {
498  t << " <Token>\n";
499  t << " <TokenIdentifier>\n";
500  QCString name = d->name();
501  if (name.right(2)=="-p") name=name.left(name.length()-2);
502  t << " <Name>" << convertToXML(name) << "</Name>\n";
503  if (!lang.isEmpty())
504  {
505  t << " <APILanguage>" << lang << "</APILanguage>\n";
506  }
507  if (!type.isEmpty())
508  {
509  t << " <Type>" << type << "</Type>\n";
510  }
511  if (!scope.isEmpty())
512  {
513  t << " <Scope>" << convertToXML(scope) << "</Scope>\n";
514  }
515  t << " </TokenIdentifier>\n";
516  t << " <Path>" << addHtmlExtensionIfMissing(d->getOutputFileBase()) << "</Path>\n";
517  if (!anchor.isEmpty())
518  {
519  t << " <Anchor>" << anchor << "</Anchor>\n";
520  }
521  QCString tooltip = d->briefDescriptionAsTooltip();
522  if (!tooltip.isEmpty())
523  {
524  t << " <Abstract>" << convertToXML(tooltip) << "</Abstract>\n";
525  }
526  if (!decl.isEmpty())
527  {
528  t << " <DeclaredIn>" << convertToXML(decl) << "</DeclaredIn>\n";
529  }
530  t << " </Token>\n";
531 }

引用了 addHtmlExtensionIfMissing(), Definition::briefDescriptionAsTooltip(), convertToXML(), Definition::getOutputFileBase(), QCString::isEmpty(), QCString::left(), QCString::length(), Definition::name() , 以及 QCString::right().

被这些函数引用 addIndexItem().

类成员变量说明

◆ p

std::unique_ptr<Private> DocSets::p
private

在文件 docsets.h62 行定义.

被这些函数引用 addContentsItem(), addIndexItem(), decContentsDepth(), finalize() , 以及 incContentsDepth().


该类的文档由以下文件生成:
SrcLangExt_Unknown
@ SrcLangExt_Unknown
Definition: types.h:43
MemberType_Variable
@ MemberType_Variable
Definition: types.h:278
MemberDef::isObjCProperty
virtual bool isObjCProperty() const =0
MemberDef::isStatic
virtual bool isStatic() const =0
NamespaceDef
An abstract interface of a namespace symbol.
Definition: namespacedef.h:54
MemberType_EnumValue
@ MemberType_EnumValue
Definition: types.h:281
Definition::isLinkable
virtual bool isLinkable() const =0
MemberType_Signal
@ MemberType_Signal
Definition: types.h:282
SrcLangExt_XML
@ SrcLangExt_XML
Definition: types.h:55
QCString::length
uint length() const
Returns the length of the string, not counting the 0-terminator.
Definition: qcstring.h:147
MemberType_Interface
@ MemberType_Interface
Definition: types.h:288
SrcLangExt_PHP
@ SrcLangExt_PHP
Definition: types.h:48
SrcLangExt_JS
@ SrcLangExt_JS
Definition: types.h:51
QCString::isEmpty
bool isEmpty() const
Returns TRUE iff the string is empty
Definition: qcstring.h:144
ClassDef::Interface
@ Interface
Definition: classdef.h:110
SrcLangExt
SrcLangExt
Language as given by extension
Definition: types.h:41
MemberType_Friend
@ MemberType_Friend
Definition: types.h:284
MemberType_Enumeration
@ MemberType_Enumeration
Definition: types.h:280
QCString::str
std::string str() const
Definition: qcstring.h:442
MemberType_Typedef
@ MemberType_Typedef
Definition: types.h:279
SrcLangExt_Lex
@ SrcLangExt_Lex
Definition: types.h:60
SrcLangExt_Java
@ SrcLangExt_Java
Definition: types.h:45
ClassDef::includeInfo
virtual const IncludeInfo * includeInfo() const =0
ClassDef::Class
@ Class
Definition: classdef.h:107
Definition::getLanguage
virtual SrcLangExt getLanguage() const =0
Returns the programming language this definition was written in.
MemberDef::isObjCMethod
virtual bool isObjCMethod() const =0
MemberDef::isLinkable
virtual bool isLinkable() const =0
DocSets::writeToken
void writeToken(TextStream &t, const Definition *d, const QCString &type, const QCString &lang, const QCString &scope=QCString(), const QCString &anchor=QCString(), const QCString &decl=QCString())
Definition: docsets.cpp:490
MemberType_Service
@ MemberType_Service
Definition: types.h:289
MemberDef::anchor
virtual QCString anchor() const =0
SrcLangExt_ObjC
@ SrcLangExt_ObjC
Definition: types.h:49
Definition::qualifiedName
virtual QCString qualifiedName() const =0
MemberDef::memberDeclaration
virtual MemberDef * memberDeclaration() const =0
addHtmlExtensionIfMissing
QCString addHtmlExtensionIfMissing(const QCString &fName)
Definition: util.cpp:5275
MemberType_Function
@ MemberType_Function
Definition: types.h:277
MemberDef
A model of a class/file/namespace member symbol.
Definition: memberdef.h:45
Definition::TypeNamespace
@ TypeNamespace
Definition: definition.h:89
ClassDef
A abstract class representing of a compound symbol.
Definition: classdef.h:103
MemberType_Slot
@ MemberType_Slot
Definition: types.h:283
QCString::left
QCString left(size_t len) const
Definition: qcstring.h:212
FileDef::name
virtual QCString name() const =0
IncludeInfo
Class representing the data associated with a #include statement.
Definition: filedef.h:48
Definition::TypeFile
@ TypeFile
Definition: definition.h:88
Definition::name
virtual QCString name() const =0
SrcLangExt_D
@ SrcLangExt_D
Definition: types.h:47
SrcLangExt_Cpp
@ SrcLangExt_Cpp
Definition: types.h:50
MemberType_DCOP
@ MemberType_DCOP
Definition: types.h:285
MemberDef::getClassDef
virtual const ClassDef * getClassDef() const =0
SrcLangExt_Python
@ SrcLangExt_Python
Definition: types.h:52
QCString::lower
QCString lower() const
Definition: qcstring.h:232
Definition::getOutputFileBase
virtual QCString getOutputFileBase() const =0
MemberDef::getNamespaceDef
virtual const NamespaceDef * getNamespaceDef() const =0
SrcLangExt_Fortran
@ SrcLangExt_Fortran
Definition: types.h:53
ClassDef::Category
@ Category
Definition: classdef.h:112
toClassDef
ClassDef * toClassDef(Definition *d)
Definition: classdef.cpp:4907
SrcLangExt_CSharp
@ SrcLangExt_CSharp
Definition: types.h:46
SrcLangExt_SQL
@ SrcLangExt_SQL
Definition: types.h:58
Definition::TypeClass
@ TypeClass
Definition: definition.h:87
Definition::definitionType
virtual DefType definitionType() const =0
MemberType_Property
@ MemberType_Property
Definition: types.h:286
MemberType_Dictionary
@ MemberType_Dictionary
Definition: types.h:291
ClassDef::compoundType
virtual CompoundType compoundType() const =0
Returns the type of compound this is, i.e.
ClassDef::Protocol
@ Protocol
Definition: classdef.h:111
toNamespaceDef
NamespaceDef * toNamespaceDef(Definition *d)
Definition: namespacedef.cpp:1541
Doxygen::htmlFileExtension
static QCString htmlFileExtension
Definition: doxygen.h:103
term
void term(const char *fmt,...)
Definition: message.cpp:220
MemberType_Event
@ MemberType_Event
Definition: types.h:287
MemberType_Sequence
@ MemberType_Sequence
Definition: types.h:290
qPrint
const char * qPrint(const char *s)
Definition: qcstring.h:589
SrcLangExt_IDL
@ SrcLangExt_IDL
Definition: types.h:44
MemberDef::getFileDef
virtual const FileDef * getFileDef() const =0
Config_getString
#define Config_getString(name)
Definition: config.h:32
SrcLangExt_Markdown
@ SrcLangExt_Markdown
Definition: types.h:57
convertToXML
QCString convertToXML(const QCString &s, bool keepEntities)
Definition: util.cpp:3948
FileDef
A model of a file symbol.
Definition: filedef.h:73
toFileDef
FileDef * toFileDef(Definition *d)
Definition: filedef.cpp:1778
MemberType_Define
@ MemberType_Define
Definition: types.h:276
DocSets::p
std::unique_ptr< Private > p
Definition: docsets.h:62
SrcLangExt_VHDL
@ SrcLangExt_VHDL
Definition: types.h:54
IncludeInfo::includeName
QCString includeName
Definition: filedef.h:54
Definition::briefDescriptionAsTooltip
virtual QCString briefDescriptionAsTooltip() const =0
QCString::right
QCString right(size_t len) const
Definition: qcstring.h:217
MemberDef::memberType
virtual MemberType memberType() const =0
MemberDef::getGroupDef
virtual const GroupDef * getGroupDef() const =0
ClassDef::isTemplate
virtual bool isTemplate() const =0
Returns TRUE if this class is a template
SrcLangExt_Slice
@ SrcLangExt_Slice
Definition: types.h:59
QCString
This is an alternative implementation of QCString.
Definition: qcstring.h:108