diff options
-rw-r--r-- | src/classdef.cpp | 19 | ||||
-rw-r--r-- | src/doxygen.cpp | 6 | ||||
-rw-r--r-- | src/memberdef.cpp | 2 | ||||
-rw-r--r-- | src/util.cpp | 6 | ||||
-rw-r--r-- | src/util.h | 2 |
5 files changed, 20 insertions, 15 deletions
diff --git a/src/classdef.cpp b/src/classdef.cpp index 35d08fc..1e0a15f 100644 --- a/src/classdef.cpp +++ b/src/classdef.cpp @@ -854,13 +854,14 @@ void ClassDef::setIncludeFile(FileDef *fd, static void searchTemplateSpecs(/*in*/ Definition *d, /*out*/ QList<ArgumentList> &result, - /*out*/ QCString &name) + /*out*/ QCString &name, + /*in*/ SrcLangExt lang) { if (d->definitionType()==Definition::TypeClass) { if (d->getOuterScope()) { - searchTemplateSpecs(d->getOuterScope(),result,name); + searchTemplateSpecs(d->getOuterScope(),result,name,lang); } ClassDef *cd=(ClassDef *)d; if (!name.isEmpty()) name+="::"; @@ -876,7 +877,7 @@ static void searchTemplateSpecs(/*in*/ Definition *d, result.append(cd->templateArguments()); if (!isSpecialization) { - name+=tempArgListToString(cd->templateArguments()); + name+=tempArgListToString(cd->templateArguments(),lang); } } } @@ -887,11 +888,11 @@ static void searchTemplateSpecs(/*in*/ Definition *d, } static void writeTemplateSpec(OutputList &ol,Definition *d, - const QCString &type) + const QCString &type,SrcLangExt lang) { QList<ArgumentList> specs; QCString name; - searchTemplateSpecs(d,specs,name); + searchTemplateSpecs(d,specs,name,lang); if (specs.count()>0) // class has template scope specifiers { ol.startSubsubsection(); @@ -962,7 +963,7 @@ void ClassDef::writeDetailedDocumentationBody(OutputList &ol) if (getLanguage()==SrcLangExt_Cpp) { - writeTemplateSpec(ol,this,compoundTypeString()); + writeTemplateSpec(ol,this,compoundTypeString(),getLanguage()); } // repeat brief description @@ -3774,7 +3775,7 @@ QCString ClassDef::qualifiedNameWithTemplateParameters( //{ // clName = clName.left(clName.length()-2); //} - //printf("m_impl->lang=%d clName=%s\n",m_impl->lang,clName.data()); + //printf("m_impl->lang=%d clName=%s isSpecialization=%d\n",getLanguage(),clName.data(),isSpecialization); scName+=clName; ArgumentList *al=0; if (templateArguments()) @@ -3784,7 +3785,7 @@ QCString ClassDef::qualifiedNameWithTemplateParameters( al = actualParams->at(*actualParamIndex); if (!isSpecialization) { - scName+=tempArgListToString(al); + scName+=tempArgListToString(al,lang); } (*actualParamIndex)++; } @@ -3792,7 +3793,7 @@ QCString ClassDef::qualifiedNameWithTemplateParameters( { if (!isSpecialization) { - scName+=tempArgListToString(templateArguments()); + scName+=tempArgListToString(templateArguments(),lang); } } } diff --git a/src/doxygen.cpp b/src/doxygen.cpp index 6c9a44d..68d48ff 100644 --- a/src/doxygen.cpp +++ b/src/doxygen.cpp @@ -4405,7 +4405,7 @@ static bool findTemplateInstanceRelation(Entry *root, //printf("\n"); bool existingClass = (templSpec == - tempArgListToString(templateClass->templateArguments()) + tempArgListToString(templateClass->templateArguments(),root->lang) ); if (existingClass) return TRUE; @@ -6332,7 +6332,7 @@ static void findMember(EntryNav *rootNav, for (;(al=alli.current());++alli) { warnMsg+=" template "; - warnMsg+=tempArgListToString(al); + warnMsg+=tempArgListToString(al,root->lang); warnMsg+='\n'; } } @@ -6355,7 +6355,7 @@ static void findMember(EntryNav *rootNav, if (templAl!=0) { warnMsg+=" 'template "; - warnMsg+=tempArgListToString(templAl); + warnMsg+=tempArgListToString(templAl,root->lang); warnMsg+='\n'; } warnMsg+=" "; diff --git a/src/memberdef.cpp b/src/memberdef.cpp index 0485c88..e79f13a 100644 --- a/src/memberdef.cpp +++ b/src/memberdef.cpp @@ -194,7 +194,7 @@ static bool writeDefArgumentList(OutputList &ol,ClassDef *cd, } else if (cd->templateArguments()) { - cName=tempArgListToString(cd->templateArguments()); + cName=tempArgListToString(cd->templateArguments(),cd->getLanguage()); //printf("2. cName=%s\n",cName.data()); } else // no template specifier diff --git a/src/util.cpp b/src/util.cpp index a524922..1de3349 100644 --- a/src/util.cpp +++ b/src/util.cpp @@ -2190,7 +2190,7 @@ QCString argListToString(ArgumentList *al,bool useCanonicalType,bool showDefVals return removeRedundantWhiteSpace(result); } -QCString tempArgListToString(ArgumentList *al) +QCString tempArgListToString(ArgumentList *al,SrcLangExt lang) { QCString result; if (al==0) return result; @@ -2209,6 +2209,10 @@ QCString tempArgListToString(ArgumentList *al) { result+="in "; } + if (lang==SrcLangExt_Java || lang==SrcLangExt_CSharp) + { + result+=a->type+" "; + } result+=a->name; } else // extract name from type @@ -229,7 +229,7 @@ QCString removeRedundantWhiteSpace(const QCString &s); QCString argListToString(ArgumentList *al,bool useCanonicalType=FALSE,bool showDefVals=TRUE); -QCString tempArgListToString(ArgumentList *al); +QCString tempArgListToString(ArgumentList *al,SrcLangExt lang); QCString generateMarker(int id); |