summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_arglist_ch.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_arglist_ch.cpp')
-rw-r--r--TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_arglist_ch.cpp58
1 files changed, 26 insertions, 32 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_arglist_ch.cpp b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_arglist_ch.cpp
index 5b621ca3272..c31295d6c78 100644
--- a/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_arglist_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_valuetype/valuetype_init_arglist_ch.cpp
@@ -19,23 +19,24 @@
//
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
-
+#include "be.h"
#include "be_visitor_valuetype.h"
-ACE_RCSID(be_visitor_valuetype_init, arglist_ch, "$Id$")
+ACE_RCSID (be_visitor_valuetype_init,
+ arglist_ch,
+ "$Id$")
-be_visitor_valuetype_init_arglist_ch::
-be_visitor_valuetype_init_arglist_ch (be_visitor_context *ctx)
+be_visitor_valuetype_init_arglist_ch::be_visitor_valuetype_init_arglist_ch (
+ be_visitor_context *ctx
+ )
: be_visitor_scope (ctx)
{
}
-be_visitor_valuetype_init_arglist_ch::
-~be_visitor_valuetype_init_arglist_ch (void)
+be_visitor_valuetype_init_arglist_ch::~be_visitor_valuetype_init_arglist_ch (
+ void
+ )
{
}
@@ -43,10 +44,11 @@ int
be_visitor_valuetype_init_arglist_ch::visit_factory (be_factory *node)
{
TAO_OutStream& os = *(this->ctx_->stream ());
- os << " (" << be_idt // idt = 1
- << be_idt_nl; // idt = 2
- // all we do is hand over code generation to our scope
+ os << " (" << be_idt
+ << be_idt_nl;
+
+ // All we do is hand over code generation to our scope.
if (this->visit_scope (node) == -1)
{
ACE_ERROR_RETURN ((LM_ERROR,
@@ -56,8 +58,8 @@ be_visitor_valuetype_init_arglist_ch::visit_factory (be_factory *node)
-1);
}
- os << be_uidt_nl // idt = 1
- << ")" << be_uidt; // idt = 0
+ os << be_uidt_nl
+ << ")" << be_uidt;
return 0;
}
@@ -65,15 +67,20 @@ be_visitor_valuetype_init_arglist_ch::visit_factory (be_factory *node)
int
be_visitor_valuetype_init_arglist_ch::visit_argument (be_argument *node)
{
- // get the visitor that will dump the argument's mapping in the operation
+ // Get the visitor that will dump the argument's mapping in the operation
// signature.
be_visitor_context ctx (*this->ctx_);
+ int status = 0;
switch (this->ctx_->state ())
{
case TAO_CodeGen::TAO_VALUETYPE_INIT_ARGLIST_CH:
- ctx.state (TAO_CodeGen::TAO_ARGUMENT_ARGLIST_CH);
- break;
+ {
+ ctx.state (TAO_CodeGen::TAO_ARGUMENT_ARGLIST_CH);
+ be_visitor_args_arglist visitor (&ctx);
+ status = node->accept (&visitor);
+ break;
+ }
default:
{
ACE_ERROR_RETURN ((LM_ERROR,
@@ -84,20 +91,8 @@ be_visitor_valuetype_init_arglist_ch::visit_argument (be_argument *node)
}
}
- // grab a visitor
- be_visitor *visitor = tao_cg->make_visitor (&ctx);
- if (!visitor)
- {
- ACE_ERROR_RETURN ((LM_ERROR,
- "(%N:%l) be_visitor_valuetype_init_arglist_ch::"
- "visit_argument - "
- "Bad visitor\n"),
- -1);
- }
-
- if (node->accept (visitor) == -1)
+ if (status == -1)
{
- delete visitor;
ACE_ERROR_RETURN ((LM_ERROR,
"(%N:%l) be_visitor_valuetype_init_arglist_ch::"
"visit_argument - "
@@ -105,7 +100,6 @@ be_visitor_valuetype_init_arglist_ch::visit_argument (be_argument *node)
-1);
}
- delete visitor;
return 0;
}
@@ -114,7 +108,7 @@ be_visitor_valuetype_init_arglist_ch::post_process (be_decl *bd)
{
TAO_OutStream *os = this->ctx_->stream ();
- // if we are not the last node in the list of arguments, generate a comma.
+ // If we are not the last node in the list of arguments, generate a comma.
if (!this->last_node (bd))
{
*os << "," << be_nl;