diff options
author | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2005-06-15 19:21:39 (GMT) |
---|---|---|
committer | dimitri <dimitri@afe2bf4a-e733-0410-8a33-86f594647bc7> | 2005-06-15 19:21:39 (GMT) |
commit | cf0e414d83f34ebf877abbe43a15c350876669d4 (patch) | |
tree | 3f2be46d34910503ef3532aa95aa0422e86cd993 /src/definition.cpp | |
parent | ad65c6e23de430b2c4f0ef732b95834c87a28c20 (diff) | |
download | Doxygen-cf0e414d83f34ebf877abbe43a15c350876669d4.zip Doxygen-cf0e414d83f34ebf877abbe43a15c350876669d4.tar.gz Doxygen-cf0e414d83f34ebf877abbe43a15c350876669d4.tar.bz2 |
Release-1.4.3-20050615
Diffstat (limited to 'src/definition.cpp')
-rw-r--r-- | src/definition.cpp | 25 |
1 files changed, 21 insertions, 4 deletions
diff --git a/src/definition.cpp b/src/definition.cpp index dd0fa5c..381159b 100644 --- a/src/definition.cpp +++ b/src/definition.cpp @@ -32,6 +32,7 @@ #include "pagedef.h" #include "section.h" #include "htags.h" +#include "parserintf.h" #if defined(_MSC_VER) || defined(__BORLANDC__) #define popen _popen @@ -81,6 +82,11 @@ Definition::Definition(const char *df,int dl, { //QCString ns; m_defFileName = df; + int lastDot = m_defFileName.findRev('.'); + if (lastDot!=-1) + { + m_defFileExt = m_defFileName.mid(lastDot); + } m_defLine = dl; m_name=name; if (m_name!="<globalScope>") @@ -459,12 +465,23 @@ void Definition::writeInlineCode(OutputList &ol,const char *scopeName) actualStart,actualEnd,codeFragment) ) { - initParseCodeContext(); + ParserInterface *pIntf = Doxygen::parserManager->getParser(m_defFileExt); + pIntf->resetCodeParserState(); //printf("Read:\n`%s'\n\n",codeFragment.data()); - if (definitionType()==TypeMember) setParameterList((MemberDef *)this); + MemberDef *thisMd = 0; + if (definitionType()==TypeMember) thisMd = (MemberDef *)this; ol.startCodeFragment(); - parseCode(ol,scopeName,codeFragment,FALSE,0, - m_bodyDef,actualStart,actualEnd,TRUE); + pIntf->parseCode(ol, // codeOutIntf + scopeName, // scope + codeFragment, // input + FALSE, // isExample + 0, // exampleName + m_bodyDef, // fileDef + actualStart, // startLine + actualEnd, // endLine + TRUE, // inlineFragment + thisMd // memberDef + ); ol.endCodeFragment(); ol.newParagraph(); } |