From ad9b6feebdfebe54ea44675bc616fb3d4c6799aa Mon Sep 17 00:00:00 2001 From: kgv Date: Wed, 19 Mar 2014 15:49:34 +0400 Subject: [PATCH] 0024740: WOK headers generation - improve syntax Add spaces between method arguments. Eliminate redundant spaces in method declarations. Fix indentation of class fields. --- src/CPPExt/CPPExt.cxx | 26 ++++++++++++++++---------- src/CPPExt/CPPExt_Template.edl | 6 +++--- 2 files changed, 19 insertions(+), 13 deletions(-) diff --git a/src/CPPExt/CPPExt.cxx b/src/CPPExt/CPPExt.cxx index 9babe31..c91ed95 100755 --- a/src/CPPExt/CPPExt.cxx +++ b/src/CPPExt/CPPExt.cxx @@ -162,7 +162,7 @@ Handle(TCollection_HAsciiString) CPP_BuildType Handle(TCollection_HAsciiString) CPP_BuildField(const Handle(MS_MetaSchema)& aMeta, const Handle(MS_Field)& aField) { - Handle(TCollection_HAsciiString) result = new TCollection_HAsciiString; + Handle(TCollection_HAsciiString) result = new TCollection_HAsciiString (" "); Handle(MS_Type) aType; Handle(TColStd_HSequenceOfInteger) dim; Standard_Integer i; @@ -199,7 +199,7 @@ Handle(TCollection_HAsciiString) CPP_BuildParameterList(const Handle(MS_MetaSche if(!aSeq.IsNull()) { for (i = 1; i <= aSeq->Length(); i++) { if (i > 1) { - result->AssignCat(","); + result->AssignCat(", "); } if (!aSeq->Value(i)->IsOut()) { @@ -345,7 +345,13 @@ void CPP_BuildMethod(const Handle(MS_MetaSchema)& aMeta, // here we process all the common attributes of methods // api->AddVariable(VMethodComment, m->Comment()->ToCString()); - api->AddVariable(VMethodName,methodName->ToCString()); + Handle(TCollection_HAsciiString) aMethodName = methodName; + if (!m->Params().IsNull()) + { + aMethodName = new TCollection_HAsciiString (aMethodName); + aMethodName->AssignCat (" "); + } + api->AddVariable(VMethodName, aMethodName->ToCString()); api->AddVariable(VVirtual,""); // it s inline method ? @@ -362,7 +368,7 @@ void CPP_BuildMethod(const Handle(MS_MetaSchema)& aMeta, // it s returning const ? // if (m->IsConstReturn()) { - api->AddVariable(VRetSpec,"const"); + api->AddVariable(VRetSpec,"const "); } else { api->AddVariable(VRetSpec,""); @@ -437,21 +443,21 @@ void CPP_BuildMethod(const Handle(MS_MetaSchema)& aMeta, if (!im->IsDeferred() || !forDeclaration) { if (!im->IsStatic() && forDeclaration) { - api->AddVariable(VVirtual,"virtual"); + api->AddVariable(VVirtual,"virtual "); } if (im->IsConst()) { - api->AddVariable(VMetSpec,"const"); + api->AddVariable(VMetSpec," const"); } else { api->AddVariable(VMetSpec,""); } } else if (forDeclaration) { - api->AddVariable(VVirtual,"virtual"); + api->AddVariable(VVirtual,"virtual "); if (im->IsConst()) { - api->AddVariable(VMetSpec,"const = 0"); + api->AddVariable(VMetSpec," const = 0"); } else { api->AddVariable(VMetSpec," = 0"); @@ -471,7 +477,7 @@ void CPP_BuildMethod(const Handle(MS_MetaSchema)& aMeta, api->AddVariable(VIsCreateMethod,"no"); api->AddVariable(VMetSpec,""); if (forDeclaration) { - api->AddVariable(VVirtual,"static"); + api->AddVariable(VVirtual,"static "); } api->Apply(VMethod,MetTemplate->ToCString()); @@ -497,7 +503,7 @@ void CPP_BuildMethod(const Handle(MS_MetaSchema)& aMeta, api->AddVariable(VIsCreateMethod,"no"); api->AddVariable(VMetSpec,""); if (forDeclaration) { - api->AddVariable(VVirtual,"static"); + api->AddVariable(VVirtual,"static "); } api->Apply(VMethod,MetTemplate->ToCString()); diff --git a/src/CPPExt/CPPExt_Template.edl b/src/CPPExt/CPPExt_Template.edl index d25e974..156144d 100755 --- a/src/CPPExt/CPPExt_Template.edl +++ b/src/CPPExt/CPPExt_Template.edl @@ -436,11 +436,11 @@ $class %IClass; -- ============================================== @template ConstructorHeader(%Class,%Arguments) is -$ %Class(%Arguments)\^ +$%Class(%Arguments)\^ @end; @template MethodHeader(%Virtual,%RetSpec,%Return,%And,%MethodName,%Arguments,%MetSpec) is -$ %Virtual %RetSpec %Return%And %MethodName(%Arguments) %MetSpec\^ +$%Virtual%RetSpec%Return%And %MethodName(%Arguments)%MetSpec\^ @end; @template ExternalConstructorHeader(%Class,%Arguments) is @@ -448,7 +448,7 @@ $%Class::%Class(%Arguments)\^ @end; @template ExternalMethodHeader(%Class,%Virtual,%RetSpec,%Return,%And,%MethodName,%Arguments,%MetSpec) is -$%Virtual %RetSpec %Return%And %Class::%MethodName(%Arguments) %MetSpec\^ +$%Virtual%RetSpec%Return%And %Class::%MethodName(%Arguments)%MetSpec\^ @end; @template MethodTemplateDec(%MethodComment,%Method) is -- 2.39.5