diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2004-03-12 17:06:23 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 2004-03-12 17:06:23 +0000 |
commit | 53687261838c748fa8e6f73f40b358ede45b80ac (patch) | |
tree | 5632885e300d766b173ed4e9433dde049195f263 | |
parent | 9c4f7f23550a1bfb2dd3a92ef27721c11dcf3475 (diff) | |
download | ATCD-53687261838c748fa8e6f73f40b358ede45b80ac.tar.gz |
ChangeLogTag: Fri Mar 12 11:03:38 2004 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r-- | TAO/CIAO/CIDLC/TypeNameEmitter.cpp | 24 | ||||
-rw-r--r-- | TAO/CIAO/CIDLC/TypeNameEmitter.hpp | 5 | ||||
-rw-r--r-- | TAO/CIAO/ChangeLog | 9 |
3 files changed, 38 insertions, 0 deletions
diff --git a/TAO/CIAO/CIDLC/TypeNameEmitter.cpp b/TAO/CIAO/CIDLC/TypeNameEmitter.cpp index fde84ae7573..71d4ca964b5 100644 --- a/TAO/CIAO/CIDLC/TypeNameEmitter.cpp +++ b/TAO/CIAO/CIDLC/TypeNameEmitter.cpp @@ -131,6 +131,12 @@ ReturnTypeNameEmitter::traverse (Any&) } void +ReturnTypeNameEmitter::traverse (SemanticGraph::Enum& e) +{ + os << e.scoped_name (); +} + +void ReturnTypeNameEmitter::traverse (SemanticGraph::Struct& s) { // This should always be in the context, since the SizeTypeCalculator @@ -306,6 +312,12 @@ INArgTypeNameEmitter::traverse (Any&) } void +INArgTypeNameEmitter::traverse (SemanticGraph::Enum& e) +{ + os << e.scoped_name (); +} + +void INArgTypeNameEmitter::traverse (SemanticGraph::Struct& s) { os << "const " << s.scoped_name () << " &";; @@ -463,6 +475,12 @@ INOUTArgTypeNameEmitter::traverse (Any&) } void +INOUTArgTypeNameEmitter::traverse (SemanticGraph::Enum& e) +{ + os << e.scoped_name () << " &"; +} + +void INOUTArgTypeNameEmitter::traverse (SemanticGraph::Struct& s) { os << s.scoped_name () << " &"; @@ -620,6 +638,12 @@ OUTArgTypeNameEmitter::traverse (Any&) } void +OUTArgTypeNameEmitter::traverse (SemanticGraph::Enum& e) +{ + os << e.scoped_name () << "_out"; +} + +void OUTArgTypeNameEmitter::traverse (SemanticGraph::Struct& s) { os << s.scoped_name () << "_out"; diff --git a/TAO/CIAO/CIDLC/TypeNameEmitter.hpp b/TAO/CIAO/CIDLC/TypeNameEmitter.hpp index 31b4e32da3c..89fd89eb519 100644 --- a/TAO/CIAO/CIDLC/TypeNameEmitter.hpp +++ b/TAO/CIAO/CIDLC/TypeNameEmitter.hpp @@ -33,6 +33,7 @@ class TypeNameEmitter : public Traversal::Void, public Traversal::Object, public Traversal::ValueBase, public Traversal::Any, + public Traversal::Enum, public Traversal::Struct, public Traversal::Union, public Traversal::UnboundedSequence, @@ -73,6 +74,7 @@ public: virtual void traverse (Object&); virtual void traverse (ValueBase&); virtual void traverse (Any&); + virtual void traverse (SemanticGraph::Enum&); virtual void traverse (SemanticGraph::Struct&); virtual void traverse (SemanticGraph::Union&); virtual void traverse (SemanticGraph::UnboundedSequence&); @@ -108,6 +110,7 @@ public: virtual void traverse (Object&); virtual void traverse (ValueBase&); virtual void traverse (Any&); + virtual void traverse (SemanticGraph::Enum&); virtual void traverse (SemanticGraph::Struct&); virtual void traverse (SemanticGraph::Union&); virtual void traverse (SemanticGraph::UnboundedSequence&); @@ -143,6 +146,7 @@ public: virtual void traverse (Object&); virtual void traverse (ValueBase&); virtual void traverse (Any&); + virtual void traverse (SemanticGraph::Enum&); virtual void traverse (SemanticGraph::Struct&); virtual void traverse (SemanticGraph::Union&); virtual void traverse (SemanticGraph::UnboundedSequence&); @@ -178,6 +182,7 @@ public: virtual void traverse (Object&); virtual void traverse (ValueBase&); virtual void traverse (Any&); + virtual void traverse (SemanticGraph::Enum&); virtual void traverse (SemanticGraph::Struct&); virtual void traverse (SemanticGraph::Union&); virtual void traverse (SemanticGraph::UnboundedSequence&); diff --git a/TAO/CIAO/ChangeLog b/TAO/CIAO/ChangeLog index 76f079540f1..56d49c3f833 100644 --- a/TAO/CIAO/ChangeLog +++ b/TAO/CIAO/ChangeLog @@ -1,3 +1,12 @@ +Fri Mar 12 11:03:38 2004 Jeff Parsons <j.parsons@vanderbilt.edu> + + * CIDLC/TypeNameEmitter.cpp: + * CIDLC/TypeNameEmitter.hpp: + + Added missing operations to generate enum type names. Thanks to + Jessica Pistole <Jessica.Pistole@jhuapl.edu> for reporting + the missing type names in generated servant glue code. + Thu Mar 11 16:30:45 2004 Boris Kolpackov <boris@dre.vanderbilt.edu> * CCF/CCF/IDL2/LexicalAnalyzer.cpp: |