From d6403666e95e4c9a67593f301f883322b414a054 Mon Sep 17 00:00:00 2001 From: cascade Date: Fri, 9 Sep 2005 21:47:22 +0000 Subject: [PATCH] OCC9462 Changing approach at Reference Documentation production cdl,hxx,cxx,tcl,edl Modifications in WOK that allow to extract documentation blocks --- src/CPPExt/CPPExt.cxx | 2 ++ src/CPPExt/CPPExt.hxx | 2 ++ src/CPPExt/CPPExt_Define.hxx | 2 ++ src/CPPExt/CPPExt_Enum.cxx | 2 +- src/CPPExt/CPPExt_Exception.cxx | 2 ++ src/CPPExt/CPPExt_MPV.cxx | 10 +++++++--- src/CPPExt/CPPExt_Package.cxx | 8 +++++++- src/CPPExt/CPPExt_PersistentCSFDB.cxx | 3 +++ src/CPPExt/CPPExt_Storable.cxx | 3 +++ src/CPPExt/CPPExt_Template.edl | 22 ++++++++++++++++------ src/CPPExt/CPPExt_Transient.cxx | 3 +++ 11 files changed, 48 insertions(+), 11 deletions(-) diff --git a/src/CPPExt/CPPExt.cxx b/src/CPPExt/CPPExt.cxx index aaf2f6a..1197c55 100755 --- a/src/CPPExt/CPPExt.cxx +++ b/src/CPPExt/CPPExt.cxx @@ -333,6 +333,7 @@ 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()); api->AddVariable(VVirtual,""); @@ -841,6 +842,7 @@ void CPP_ClassTypeMgt(const Handle(MS_MetaSchema)& , api->AddVariable(VInherits,str->ToCString()); api->AddVariable(VAncestors,str1->ToCString()); api->AddVariable(VClass,aClass->FullName()->ToCString()); + //api->AddVariable(VClassComment,aClass->Comment()->ToCString()); api->Apply(var,"TypeMgt"); } diff --git a/src/CPPExt/CPPExt.hxx b/src/CPPExt/CPPExt.hxx index 2d57e9b..eed8d53 100755 --- a/src/CPPExt/CPPExt.hxx +++ b/src/CPPExt/CPPExt.hxx @@ -143,6 +143,7 @@ void CPP_BuildMethod(const Handle(MS_MetaSchema)& aMeta, // EDL variables // Standard_CString VClass = "%Class", + VClassComment = "%ClassComment", VTICIncludes = "%TICIncludes", VInherits = "%Inherits", VTICPublicmets = "%TICPublicmets", @@ -159,6 +160,7 @@ Standard_CString VClass = "%Class", VVirtual = "%Virtual", VReturn = "%Return", VAnd = "%And", + VMethodComment = "%MethodComment", VMethodName = "%MethodName", VArgument = "%Arguments", VMetSpec = "%MetSpec", diff --git a/src/CPPExt/CPPExt_Define.hxx b/src/CPPExt/CPPExt_Define.hxx index 1c0eb68..17c8d6a 100755 --- a/src/CPPExt/CPPExt_Define.hxx +++ b/src/CPPExt/CPPExt_Define.hxx @@ -2,6 +2,7 @@ #define _CPPExt_Define_HeaderFile extern Standard_CString VClass, + VClassComment, VTICIncludes, VInherits, VTICPublicmets, @@ -19,6 +20,7 @@ extern Standard_CString VClass, VVirtual, VReturn, VAnd, + VMethodComment, VMethodName, VArgument, VMetSpec, diff --git a/src/CPPExt/CPPExt_Enum.cxx b/src/CPPExt/CPPExt_Enum.cxx index 0573827..eb34b30 100755 --- a/src/CPPExt/CPPExt_Enum.cxx +++ b/src/CPPExt/CPPExt_Enum.cxx @@ -16,7 +16,6 @@ // Extraction of a transient class (inst or std) // -//void CPP_Enum(const Handle(MS_MetaSchema)& aMeta, void CPP_Enum(const Handle(MS_MetaSchema)& , const Handle(EDL_API)& api, const Handle(MS_Enum)& anEnum, @@ -33,6 +32,7 @@ void CPP_Enum(const Handle(MS_MetaSchema)& , api->AddVariable(VNb,result->ToCString()); api->AddVariable(VClass,anEnum->FullName()->ToCString()); + api->AddVariable("%EnumComment",anEnum->Comment()->ToCString()); result->Clear(); diff --git a/src/CPPExt/CPPExt_Exception.cxx b/src/CPPExt/CPPExt_Exception.cxx index 335269b..8b1717c 100755 --- a/src/CPPExt/CPPExt_Exception.cxx +++ b/src/CPPExt/CPPExt_Exception.cxx @@ -58,6 +58,8 @@ void CPP_ExceptionDerivated(const Handle(MS_MetaSchema)& aMeta, Handle(TCollection_HAsciiString) result = new TCollection_HAsciiString; api->AddVariable(VClass,aClass->FullName()->ToCString()); + api->AddVariable(VClassComment,aClass->Comment()->ToCString()); + api->Apply(VSupplement,"ExceptionMethod"); supplement->Append(api->GetVariableValue(VSupplement)); diff --git a/src/CPPExt/CPPExt_MPV.cxx b/src/CPPExt/CPPExt_MPV.cxx index dcda72a..723a716 100755 --- a/src/CPPExt/CPPExt_MPV.cxx +++ b/src/CPPExt/CPPExt_MPV.cxx @@ -1,3 +1,5 @@ + + // CLE // // 10/1995 @@ -61,8 +63,8 @@ void CPP_MPVDerivated(const Handle(MS_MetaSchema)& aMeta, // if (theClass.IsNull()) return; - api->AddVariable(VClass,aClass->FullName()->ToCString()); - + //api->AddVariable(VClass,aClass->FullName()->ToCString()); + api->AddVariable(VClassComment,aClass->Comment()->ToCString()); api->AddVariable(VSuffix,"hxx"); for (i = 1; i <= inclist->Length(); i++) { @@ -140,6 +142,7 @@ void CPP_MPVDerivated(const Handle(MS_MetaSchema)& aMeta, } api->AddVariable(VClass,aClass->FullName()->ToCString()); + //api->AddVariable(VClassComment,aClass->Comment()->ToCString()); api->Apply(VoutClass,"MPVIxx"); @@ -172,7 +175,6 @@ void CPP_MPVClass(const Handle(MS_MetaSchema)& aMeta, Standard_Boolean HasInlineMethod = Standard_False, HasDestructor = Standard_False; - api->AddVariable(VTICIncludes,""); api->AddVariable(VTICPublicfriends,""); api->AddVariable(VTICProtectedfields,""); @@ -196,6 +198,7 @@ void CPP_MPVClass(const Handle(MS_MetaSchema)& aMeta, } api->AddVariable(VClass,theClass->FullName()->ToCString()); + api->AddVariable(VClassComment,theClass->Comment()->ToCString()); for (i = 1; i <= theClass->GetFriendsNames()->Length(); i++) { publics->AssignCat("friend "); @@ -377,3 +380,4 @@ void CPP_MPVClass(const Handle(MS_MetaSchema)& aMeta, } } + diff --git a/src/CPPExt/CPPExt_Package.cxx b/src/CPPExt/CPPExt_Package.cxx index 934bab4..8ce5713 100755 --- a/src/CPPExt/CPPExt_Package.cxx +++ b/src/CPPExt/CPPExt_Package.cxx @@ -1,3 +1,4 @@ + // CLE // // 10/1995 @@ -45,7 +46,6 @@ // the supplement variable is used for non inline methods generated // by the extractor like destructor (added to .ixx ans _0.cxx // -//void CPP_PackageDerivated(const Handle(MS_MetaSchema)& aMeta, void CPP_PackageDerivated(const Handle(MS_MetaSchema)& , const Handle(EDL_API)& api, const Handle(MS_Package)& aPackage, @@ -58,6 +58,7 @@ void CPP_PackageDerivated(const Handle(MS_MetaSchema)& , Handle(TCollection_HAsciiString) result = new TCollection_HAsciiString; api->AddVariable(VClass,aPackage->Name()->ToCString()); + //api->AddVariable(VClassComment,aPackage->Comment()->ToCString()); api->AddVariable(VSuffix,"hxx"); for (i = 1; i <= inclist->Length(); i++) { @@ -113,6 +114,7 @@ void CPP_PackageDerivated(const Handle(MS_MetaSchema)& , CPP_WriteFile(api,aFileName,VoutClass); + outfile->Append(aFileName); } @@ -155,6 +157,7 @@ void CPP_Package(const Handle(MS_MetaSchema)& aMeta, api->AddVariable(VTICPrivatemets,""); api->AddVariable(VMethods,""); api->AddVariable(VClass,aPackage->FullName()->ToCString()); + api->AddVariable(VClassComment,aPackage->Comment()->ToCString()); api->AddVariable(VTICSuppMethod,""); // extraction of the methods @@ -239,6 +242,9 @@ void CPP_Package(const Handle(MS_MetaSchema)& aMeta, } for (i = 1; i <= packClass->Length(); i++) { + //Documentation + + // Declaration incomplete et // Handle(TCollection_HAsciiString) name = MS::BuildFullName(aPackage->Name(),packClass->Value(i)); diff --git a/src/CPPExt/CPPExt_PersistentCSFDB.cxx b/src/CPPExt/CPPExt_PersistentCSFDB.cxx index 3bcc6c4..5ec3d66 100755 --- a/src/CPPExt/CPPExt_PersistentCSFDB.cxx +++ b/src/CPPExt/CPPExt_PersistentCSFDB.cxx @@ -57,6 +57,7 @@ void CPP_BuildVArrayDeclarationCSFDB(const Handle(MS_MetaSchema)&, if (aGen->IsSameString(MS::GetVArrayRootName())) { api->AddVariable(VDName,aClass->FullName()->ToCString()); + api->AddVariable(VClassComment,aClass->Comment()->ToCString()); api->AddVariable(VDValue,anInst->InstTypes()->Value(1)->ToCString()); api->Apply(VDValue,"VArrayDeclareCSFDB"); Result->AssignCat(api->GetVariableValue(VDValue)); @@ -191,6 +192,7 @@ void CPP_PersistentDerivatedCSFDB(const Handle(MS_MetaSchema)& aMeta, if (theClass.IsNull()) return; api->AddVariable(VClass,aClass->FullName()->ToCString()); + //api->AddVariable(VClassComment,aClass->Comment()->ToCString()); api->AddVariable(VSuffix,"hxx"); @@ -339,6 +341,7 @@ void CPP_PersistentClassCSFDB(const Handle(MS_MetaSchema)& aMeta, api->AddVariable(VTICSuppMethod,""); api->AddVariable(VClass,theClass->FullName()->ToCString()); + api->AddVariable(VClassComment,theClass->Comment()->ToCString()); api->AddVariable(VInherits,theClass->GetInheritsNames()->Value(1)->ToCString()); for (i = 1; i <= theClass->GetFriendsNames()->Length(); i++) { diff --git a/src/CPPExt/CPPExt_Storable.cxx b/src/CPPExt/CPPExt_Storable.cxx index 99f0780..2dcadee 100755 --- a/src/CPPExt/CPPExt_Storable.cxx +++ b/src/CPPExt/CPPExt_Storable.cxx @@ -178,6 +178,7 @@ void CPP_StorableDerivated(const Handle(MS_MetaSchema)& aMeta, if (theClass.IsNull()) return; api->AddVariable(VClass,aClass->FullName()->ToCString()); + //api->AddVariable(VClassComment,aClass->Comment()->ToCString()); api->AddVariable(VSuffix,"hxx"); @@ -330,6 +331,8 @@ void CPP_StorableClass(const Handle(MS_MetaSchema)& aMeta, } api->AddVariable(VClass,theClass->FullName()->ToCString()); + api->AddVariable(VClassComment,theClass->Comment()->ToCString()); + api->AddVariable("%NameField",theClass->FullName()->ToCString()); for (i = 1; i <= theClass->GetFriendsNames()->Length(); i++) { diff --git a/src/CPPExt/CPPExt_Template.edl b/src/CPPExt/CPPExt_Template.edl index 0454495..3db1e0a 100755 --- a/src/CPPExt/CPPExt_Template.edl +++ b/src/CPPExt/CPPExt_Template.edl @@ -109,7 +109,8 @@ $#endif -- extraction of a transient class -- =============================== -@template TransientInstClass (%Class, +@template TransientInstClass (%ClassComment, + %Class, %TICIncludes, %Inherits, %TICPublicmets, @@ -157,6 +158,7 @@ $#endif $ $%TICIncludes $ +$%ClassComment $class %Class : public %Inherits { $ $public: @@ -257,7 +259,8 @@ $%Methods -- extraction of a normal c++ class -- ================================ -@template MPVClass (%Class, +@template MPVClass (%ClassComment, + %Class, %TICIncludes, %Inherits, %TICPublicmets, @@ -304,6 +307,7 @@ $#ifndef _Standard_Macro_HeaderFile $#include $#endif $ +$%ClassComment $class %Class %Inherits { $ $public: @@ -393,7 +397,8 @@ $%Methods -- extraction of a storable class -- ============================== -@template StorableClass(%Class, +@template StorableClass(%ClassComment, + %Class, %TICIncludes, %Inherits, %TICPublicmets, @@ -442,6 +447,7 @@ $#endif $ $Standard_EXPORT Handle_Standard_Type& %Class_Type_(); $ +$%ClassComment $class %Class %Inherits { $ $public: @@ -541,7 +547,7 @@ $%Methods -- Enum extraction -- =============== -@template EnumHXX(%Class,%Values) is +@template EnumHXX(%EnumComment,%Class,%Values) is $// File generated by CPPExt (Enum) $// $// Copyright (C) 1991 - 2000 by @@ -566,6 +572,7 @@ $ $#ifndef _%Class_HeaderFile $#define _%Class_HeaderFile $ +$%EnumComment $enum %Class { $ %Values $}; @@ -859,11 +866,14 @@ $%Class::%Class(%Arguments)\^ $%Virtual %RetSpec %Return%And %Class::%MethodName(%Arguments) %MetSpec\^ @end; -@template MethodTemplateDec(%Method) is +@template MethodTemplateDec(%MethodComment,%Method) is +$ +$%MethodComment $Standard_EXPORT %Method; @end; -@template MethodTemplateDecInlineWNT(%Method) is +@template MethodTemplateDecInlineWNT(%MethodComment,%Method) is +$%MethodComment $%Method; @end; diff --git a/src/CPPExt/CPPExt_Transient.cxx b/src/CPPExt/CPPExt_Transient.cxx index f661341..0e59d9c 100755 --- a/src/CPPExt/CPPExt_Transient.cxx +++ b/src/CPPExt/CPPExt_Transient.cxx @@ -82,6 +82,7 @@ void CPP_TransientDerivated(const Handle(MS_MetaSchema)& aMeta, if (theClass.IsNull()) return; api->AddVariable(VClass,aClass->FullName()->ToCString()); + //api->AddVariable(VClassComment,aClass->Comment()->ToCString()); api->AddVariable(VSuffix,"hxx"); @@ -219,6 +220,8 @@ void CPP_TransientClass(const Handle(MS_MetaSchema)& aMeta, api->AddVariable(VTICSuppMethod,""); api->AddVariable(VClass,theClass->FullName()->ToCString()); + api->AddVariable(VClassComment,theClass->Comment()->ToCString()); + api->AddVariable(VInherits,theClass->GetInheritsNames()->Value(1)->ToCString()); for (i = 1; i <= theClass->GetFriendsNames()->Length(); i++) { -- 2.39.5