diff options
author | Dimitri van Heesch <dimitri@stack.nl> | 2005-06-15 19:21:39 (GMT) |
---|---|---|
committer | Dimitri van Heesch <dimitri@stack.nl> | 2005-06-15 19:21:39 (GMT) |
commit | 7e2f4c794ab68b3e14cca2f40ed1b19926c3de05 (patch) | |
tree | 3f2be46d34910503ef3532aa95aa0422e86cd993 /src/definition.cpp | |
parent | 365d0dd98ec1e2cbd7f732a5a9a963e5cf2fbde2 (diff) | |
download | Doxygen-7e2f4c794ab68b3e14cca2f40ed1b19926c3de05.zip Doxygen-7e2f4c794ab68b3e14cca2f40ed1b19926c3de05.tar.gz Doxygen-7e2f4c794ab68b3e14cca2f40ed1b19926c3de05.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(); } |