Doxygen
filedef.cpp 文件参考
#include "memberlist.h"
#include "classlist.h"
#include "filedef.h"
#include "doxygen.h"
#include "memberdef.h"
#include "classdef.h"
#include "namespacedef.h"
#include "util.h"
#include "language.h"
#include "outputlist.h"
#include "dot.h"
#include "dotincldepgraph.h"
#include "message.h"
#include "docparser.h"
#include "searchindex.h"
#include "htags.h"
#include "parserintf.h"
#include "portable.h"
#include "vhdldocgen.h"
#include "debug.h"
#include "layout.h"
#include "entry.h"
#include "groupdef.h"
#include "filename.h"
#include "membergroup.h"
#include "dirdef.h"
#include "config.h"
#include "clangparser.h"
#include "settings.h"
#include "definitionimpl.h"
#include "conceptdef.h"
+ filedef.cpp 的引用(Include)关系图:

浏览源代码.

class  FileDefImpl
 
class  DevNullCodeDocInterface
 Class implementing CodeOutputInterface by throwing away everything. 更多...
 

类型定义

using DefinitionLineMap = std::unordered_map< int, const Definition * >
 
using MemberDefLineMap = std::unordered_map< int, const MemberDef * >
 
using IncludeInfoMap = std::unordered_map< std::string, const IncludeInfo * >
 

函数

FileDefcreateFileDef (const QCString &p, const QCString &n, const QCString &ref, const QCString &dn)
 
static void getAllIncludeFilesRecursively (StringUnorderedSet &filesVisited, const FileDef *fd, StringVector &incFiles)
 
bool compareFileDefs (const FileDef *fd1, const FileDef *fd2)
 
FileDeftoFileDef (Definition *d)
 
const FileDeftoFileDef (const Definition *d)
 

类型定义说明

◆ DefinitionLineMap

using DefinitionLineMap = std::unordered_map<int,const Definition *>

在文件 filedef.cpp52 行定义.

◆ IncludeInfoMap

using IncludeInfoMap = std::unordered_map<std::string, const IncludeInfo *>

在文件 filedef.cpp54 行定义.

◆ MemberDefLineMap

using MemberDefLineMap = std::unordered_map<int,const MemberDef *>

在文件 filedef.cpp53 行定义.

函数说明

◆ compareFileDefs()

bool compareFileDefs ( const FileDef fd1,
const FileDef fd2 
)

在文件 filedef.cpp1771 行定义.

1772 {
1773  return qstricmp(fd1->name(),fd2->name()) < 0;
1774 }

引用了 FileDef::name() , 以及 qstricmp().

被这些函数引用 DirDefImpl::sort() , 以及 writeFileIndex().

◆ createFileDef()

FileDef* createFileDef ( const QCString p,
const QCString n,
const QCString ref,
const QCString dn 
)

◆ getAllIncludeFilesRecursively()

static void getAllIncludeFilesRecursively ( StringUnorderedSet filesVisited,
const FileDef fd,
StringVector incFiles 
)
static

在文件 filedef.cpp1701 行定义.

1703 {
1704  for (const auto &ii : fd->includeFileList())
1705  {
1706  if (ii.fileDef && !ii.fileDef->isReference() &&
1707  filesVisited.find(ii.fileDef->absFilePath().str())==filesVisited.end())
1708  {
1709  //printf("FileDefImpl::addIncludeDependency(%s)\n",qPrint(ii->fileDef->absFilePath()));
1710  incFiles.push_back(ii.fileDef->absFilePath().str());
1711  filesVisited.insert(ii.fileDef->absFilePath().str());
1712  getAllIncludeFilesRecursively(filesVisited,ii.fileDef,incFiles);
1713  }
1714  }
1715 }

引用了 FileDef::includeFileList().

◆ toFileDef() [1/2]

const FileDef* toFileDef ( const Definition d)

在文件 filedef.cpp1791 行定义.

1792 {
1793  if (d==0) return 0;
1794  if (d && typeid(*d)==typeid(FileDefImpl))
1795  {
1796  return static_cast<const FileDef*>(d);
1797  }
1798  else
1799  {
1800  return 0;
1801  }
1802 }

◆ toFileDef() [2/2]

FileDefImpl
Definition: filedef.cpp:56
FileDef::name
virtual QCString name() const =0
qstricmp
int qstricmp(const char *str1, const char *str2)
Definition: qcstring.cpp:433
getAllIncludeFilesRecursively
static void getAllIncludeFilesRecursively(StringUnorderedSet &filesVisited, const FileDef *fd, StringVector &incFiles)
Definition: filedef.cpp:1701
FileDef
A model of a file symbol.
Definition: filedef.h:73
FileDef::includeFileList
virtual const IncludeInfoList & includeFileList() const =0