Doxygen
Loading...
Searching...
No Matches
DocMscFile Class Reference

Node representing a msc file. More...

#include <src/docnode.h>

+ Inheritance diagram for DocMscFile:
+ Collaboration diagram for DocMscFile:

Public Member Functions

 DocMscFile (DocParser *parser, DocNodeVariant *parent, const QCString &name, const QCString &context, const QCString &srcFile, int srcLine)
 
bool parse ()
 
- Public Member Functions inherited from DocDiagramFileBase
 DocDiagramFileBase (DocParser *parser, DocNodeVariant *parent, const QCString &name, const QCString &context, const QCString &srcFile, int srcLine)
 
QCString name () const
 
QCString file () const
 
QCString relPath () const
 
bool hasCaption () const
 
QCString width () const
 
QCString height () const
 
QCString context () const
 
QCString srcFile () const
 
int srcLine () const
 
- Public Member Functions inherited from DocCompoundNode
 DocCompoundNode (DocParser *parser, DocNodeVariant *parent)
 
DocNodeListchildren ()
 
const DocNodeListchildren () const
 
- Public Member Functions inherited from DocNode
 DocNode (DocParser *parser, DocNodeVariant *parent)
 
 ~DocNode ()=default
 
DocNodeVariantparent ()
 
const DocNodeVariantparent () const
 
DocNodeVariantthisVariant ()
 
const DocNodeVariantthisVariant () const
 
void setThisVariant (DocNodeVariant *thisVariant)
 
DocParserparser ()
 
const DocParserparser () const
 
void setParent (DocNodeVariant *parent)
 
bool isPreformatted () const
 

Additional Inherited Members

- Protected Types inherited from DocNode
enum  RefType { Unknown , Anchor , Section , Table }
 
- Protected Member Functions inherited from DocNode
void setInsidePreformatted (bool p)
 
- Protected Attributes inherited from DocDiagramFileBase
std::unique_ptr< Privatep
 

Detailed Description

Node representing a msc file.

Definition at line 715 of file docnode.h.

Constructor & Destructor Documentation

◆ DocMscFile()

DocMscFile::DocMscFile ( DocParser * parser,
DocNodeVariant * parent,
const QCString & name,
const QCString & context,
const QCString & srcFile,
int srcLine )

Definition at line 1098 of file docnode.cpp.

1099 :
1101{
1102 p->relPath = parser->context.relPath;
1103}
QCString srcFile() const
Definition docnode.h:685
std::unique_ptr< Private > p
Definition docnode.h:702
int srcLine() const
Definition docnode.h:686
DocDiagramFileBase(DocParser *parser, DocNodeVariant *parent, const QCString &name, const QCString &context, const QCString &srcFile, int srcLine)
Definition docnode.h:675
QCString context() const
Definition docnode.h:684
QCString name() const
Definition docnode.h:678
DocParser * parser()
Definition docnode.h:97
DocNodeVariant * parent()
Definition docnode.h:89

References DocDiagramFileBase::context(), DocDiagramFileBase::DocDiagramFileBase(), DocDiagramFileBase::name(), DocDiagramFileBase::p, parent(), DocNode::parser(), DocDiagramFileBase::srcFile(), and DocDiagramFileBase::srcLine().

Member Function Documentation

◆ parse()

bool DocMscFile::parse ( )

Definition at line 1105 of file docnode.cpp.

1106{
1107 bool ok = false;
1109
1110 bool ambig = false;
1111 FileDef *fd = findFileDef(Doxygen::mscFileNameLinkedMap,p->name,ambig);
1112 if (fd==nullptr && !p->name.endsWith(".msc")) // try with .msc extension as well
1113 {
1114 fd = findFileDef(Doxygen::mscFileNameLinkedMap,p->name+".msc",ambig);
1115 }
1116 if (fd)
1117 {
1118 p->file = fd->absFilePath();
1119 ok = true;
1120 if (ambig)
1121 {
1122 warn_doc_error(parser()->context.fileName,parser()->tokenizer.getLineNr(),"included msc file name '{}' is ambiguous.\n"
1123 "Possible candidates:\n{}",qPrint(p->name),
1125 );
1126 }
1127 }
1128 else
1129 {
1130 warn_doc_error(parser()->context.fileName,parser()->tokenizer.getLineNr(),"included msc file '{}' is not found "
1131 "in any of the paths specified via MSCFILE_DIRS!",p->name);
1132 }
1133 return ok;
1134}
DocNodeList & children()
Definition docnode.h:142
DocNodeVariant * thisVariant()
Definition docnode.h:92
void defaultHandleTitleAndSize(const CommandType cmd, DocNodeVariant *parent, DocNodeList &children, QCString &width, QCString &height)
static FileNameLinkedMap * mscFileNameLinkedMap
Definition doxygen.h:108
virtual QCString absFilePath() const =0
#define warn_doc_error(file, line, fmt,...)
Definition message.h:112
const char * qPrint(const char *s)
Definition qcstring.h:672
QCString showFileDefMatches(const FileNameLinkedMap *fnMap, const QCString &n)
Definition util.cpp:3474
FileDef * findFileDef(const FileNameLinkedMap *fnMap, const QCString &n, bool &ambig)
Definition util.cpp:3348

References FileDef::absFilePath(), DocCompoundNode::children(), CMD_MSCFILE, DocDiagramFileBase::context(), DocParser::defaultHandleTitleAndSize(), findFileDef(), Doxygen::mscFileNameLinkedMap, DocDiagramFileBase::p, DocNode::parser(), qPrint(), showFileDefMatches(), DocNode::thisVariant(), and warn_doc_error.


The documentation for this class was generated from the following files: