certi-cvs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[certi-cvs] certi/scripts CERTI_Message.msg GenMsgCXX.py


From: certi-cvs
Subject: [certi-cvs] certi/scripts CERTI_Message.msg GenMsgCXX.py
Date: Thu, 11 Mar 2010 10:38:01 +0000

CVSROOT:        /sources/certi
Module name:    certi
Changes by:     Eric NOULARD <erk>      10/03/11 10:38:01

Modified files:
        scripts        : CERTI_Message.msg GenMsgCXX.py 

Log message:
        Avoid enum message name clash. in C++ 
        use namespace.

CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/certi/scripts/CERTI_Message.msg?cvsroot=certi&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/certi/scripts/GenMsgCXX.py?cvsroot=certi&r1=1.6&r2=1.7

Patches:
Index: CERTI_Message.msg
===================================================================
RCS file: /sources/certi/certi/scripts/CERTI_Message.msg,v
retrieving revision 1.14
retrieving revision 1.15
diff -u -b -r1.14 -r1.15
--- CERTI_Message.msg   8 Mar 2010 11:35:30 -0000       1.14
+++ CERTI_Message.msg   11 Mar 2010 10:38:01 -0000      1.15
@@ -779,8 +779,8 @@
     language CXX [#include "SocketUN.hh"]
 }
 
-native StreamType {
-    language CXX [typedef SocketUN* StreamType;]
+native MStreamType {
+    language CXX [typedef SocketUN* MStreamType;]
 }
 
 native M_Type {
@@ -789,5 +789,5 @@
 
 factory M_Factory {
        factoryCreator  Message create(M_Type)
-       factoryReceiver Message receive(StreamType)
+       factoryReceiver Message receive(MStreamType)
 }

Index: GenMsgCXX.py
===================================================================
RCS file: /sources/certi/certi/scripts/GenMsgCXX.py,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -b -r1.6 -r1.7
--- GenMsgCXX.py        7 Mar 2010 18:46:25 -0000       1.6
+++ GenMsgCXX.py        11 Mar 2010 10:38:01 -0000      1.7
@@ -17,7 +17,7 @@
 ## Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307
 ## USA
 ##
-## $Id: GenMsgCXX.py,v 1.6 2010/03/07 18:46:25 erk Exp $
+## $Id: GenMsgCXX.py,v 1.7 2010/03/11 10:38:01 erk Exp $
 ## ----------------------------------------------------------------------------
 
 """
@@ -288,6 +288,10 @@
             
             # Generate enum
             lastname = ""
+            # Put enum in a namespace in order to avoid conflict
+            stream.write(self.getIndent())
+            stream.write("namespace %s {\n" % self.AST.name.split(".")[0])
+            self.indent()
             for enum in self.AST.enums:            
                 self.writeComment(stream, enum)
                 stream.write(self.getIndent())
@@ -312,6 +316,10 @@
                 stream.write(self.getIndent())          
                 stream.write("} %s_t; " %  enum.name) 
                 stream.write(self.commentLineBeginWith + "end of enum %s \n" % 
enum.name)
+            # close enum namespace            
+            self.unIndent()
+            stream.write(self.getIndent())
+            stream.write("}\n")
              
             # Generate message type
             for msg in self.AST.messages:




reply via email to

[Prev in Thread] Current Thread [Next in Thread]