summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp')
-rw-r--r--TAO/TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp178
1 files changed, 51 insertions, 127 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp b/TAO/TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp
index 22992468549..91c67e64215 100644
--- a/TAO/TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_argument/vardecl_ss.cpp
@@ -86,25 +86,25 @@ int be_visitor_args_vardecl_ss::visit_array (be_array *node)
case AST_Argument::dir_IN:
case AST_Argument::dir_INOUT:
os->indent ();
- *os << bt->name () << " " << arg->local_name () << ";" << be_nl
- << bt->name () << "_forany _tao_forany_"
- << arg->local_name () << " (" << be_idt << be_idt_nl
- << arg->local_name () << be_uidt_nl
- << ");\n" << be_uidt;
+ *os << bt->name () << " " << arg->local_name () << ";\n";
break;
-
case AST_Argument::dir_OUT:
os->indent ();
if (node->size_type () == be_type::VARIABLE)
{
- *os << bt->name () << "_var " << arg->local_name ()
- << ";\n\n";
+#if 0 /* ASG */
+ *os << bt->name () << "_var _tao_var_"
+ << arg->local_name () << ";" << be_nl;
+ *os << bt->name () << "_slice *&_tao_ptr_" << arg->local_name ()
+ << " = _tao_var_" << arg->local_name () << ".out ();" << be_nl;
+ *os << bt->name () << "_out " << arg->local_name ()
+ << " (_tao_ptr_" << arg->local_name () << ");\n";
+#endif
+ *os << bt->name () << "_var "
+ << arg->local_name () << ";\n";
}
else
- {
- *os << bt->name () << " " << arg->local_name ()
- << ";\n\n";
- }
+ *os << bt->name () << " " << arg->local_name () << ";\n";
break;
}
return 0;
@@ -166,16 +166,16 @@ int be_visitor_args_vardecl_ss::visit_interface (be_interface *node)
os->indent ();
#if 0 /* ASG */
*os << bt->name () << "_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << "CORBA::Object_ptr _tao_base_ptr_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << bt->name () << "_out " << arg->local_name ()
<< " (_tao_var_" << arg->local_name () << ".out ());\n";
#endif
*os << bt->name () << "_var "
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << "CORBA::Object_var _tao_base_var_"
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
break;
}
return 0;
@@ -213,36 +213,21 @@ int be_visitor_args_vardecl_ss::visit_interface_fwd (be_interface_fwd *node)
os->indent ();
#if 0 /* ASG */
*os << bt->name () << "_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << "CORBA::Object_ptr _tao_base_ptr_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << bt->name () << "_out " << arg->local_name ()
<< " (_tao_var_" << arg->local_name () << ".out ());\n";
#endif
*os << bt->name () << "_var "
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << "CORBA::Object_var _tao_base_var_"
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
break;
}
return 0;
}
-
-#ifdef IDL_HAS_VALUETYPE
-
-int be_visitor_args_vardecl_ss::visit_valuetype (be_valuetype *node)
-{
- return -1;
-}
-
-int be_visitor_args_vardecl_ss::visit_valuetype_fwd (be_valuetype_fwd *node)
-{
- return -1;
-}
-
-#endif /* IDL_HAS_VALUETYPE */
-
int be_visitor_args_vardecl_ss::visit_predefined_type (be_predefined_type *node)
{
TAO_OutStream *os = this->ctx_->stream (); // get output stream
@@ -259,31 +244,31 @@ int be_visitor_args_vardecl_ss::visit_predefined_type (be_predefined_type *node)
if (node->pt () == AST_PredefinedType::PT_any)
{
switch (this->direction ())
- {
- case AST_Argument::dir_IN:
- case AST_Argument::dir_INOUT:
+ {
+ case AST_Argument::dir_IN:
+ case AST_Argument::dir_INOUT:
os->indent ();
*os << bt->name () << " " << arg->local_name () << ";\n";
- break;
- case AST_Argument::dir_OUT:
+ break;
+ case AST_Argument::dir_OUT:
os->indent ();
#if 0 /* ASG */
*os << bt->name () << "_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << bt->name () << "_ptr &_tao_ptr_" << arg->local_name ()
<< " = _tao_var_" << arg->local_name () << ".out ();" << be_nl;
*os << bt->name () << "_out " << arg->local_name ()
<< " (_tao_ptr_" << arg->local_name () << ");\n";
#endif
*os << bt->name () << "_var "
- << arg->local_name () << ";\n";
- break;
- } // end switch direction
+ << arg->local_name () << ";\n";
+ break;
+ } // end switch direction
} // end of if
else if (node->pt () == AST_PredefinedType::PT_pseudo) // e.g., CORBA::Object
{
switch (this->direction ())
- {
+ {
case AST_Argument::dir_IN:
case AST_Argument::dir_INOUT:
os->indent ();
@@ -300,28 +285,28 @@ int be_visitor_args_vardecl_ss::visit_predefined_type (be_predefined_type *node)
os->indent ();
#if 0 /* ASG */
*os << bt->name () << "_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << bt->name () << "_ptr &_tao_ptr_" << arg->local_name ()
<< " = _tao_var_" << arg->local_name () << ".out ();" << be_nl;
*os << bt->name () << "_out " << arg->local_name ()
<< " (_tao_ptr_" << arg->local_name () << ");" << be_nl;
#endif
*os << bt->name () << "_var "
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
break;
- } // end switch direction
+ } // end switch direction
} // end else if
else // simple predefined types
{
switch (this->direction ())
- {
- case AST_Argument::dir_IN:
- case AST_Argument::dir_INOUT:
- case AST_Argument::dir_OUT:
+ {
+ case AST_Argument::dir_IN:
+ case AST_Argument::dir_INOUT:
+ case AST_Argument::dir_OUT:
os->indent ();
*os << bt->name () << " " << arg->local_name () << ";\n";
- break;
- } // end switch direction
+ break;
+ } // end switch direction
} // end of else
return 0;
@@ -350,14 +335,14 @@ int be_visitor_args_vardecl_ss::visit_sequence (be_sequence *node)
os->indent ();
#if 0 /* ASG */
*os << bt->name () << "_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << bt->name () << " *&_tao_ptr_" << arg->local_name ()
<< " = _tao_var_" << arg->local_name () << ".out ();" << be_nl;
*os << bt->name () << "_out " << arg->local_name ()
<< " (_tao_ptr_" << arg->local_name () << ");\n";
#endif
*os << bt->name () << "_var "
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
break;
}
return 0;
@@ -376,25 +361,25 @@ int be_visitor_args_vardecl_ss::visit_string (be_string *)
os->indent ();
#if 0 /* ASG */
*os << "CORBA::String_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << "char *&" << arg->local_name () << " = _tao_var_"
<< arg->local_name () << ".out ();" << be_nl;
#endif
*os << "CORBA::String_var "
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
break;
case AST_Argument::dir_OUT:
os->indent ();
#if 0 /* ASG */
*os << "CORBA::String_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << "char *&_tao_ptr_" << arg->local_name () << " = _tao_var_"
<< arg->local_name () << ".out ();" << be_nl;
*os << "CORBA::String_out " << arg->local_name ()
<< " (_tao_ptr_" << arg->local_name () << ");\n";
#endif
*os << "CORBA::String_var "
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
break;
}
return 0;
@@ -426,14 +411,14 @@ int be_visitor_args_vardecl_ss::visit_structure (be_structure *node)
{
#if 0 /* ASG */
*os << bt->name () << "_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << bt->name () << " *&_tao_ptr_" << arg->local_name ()
<< " = _tao_var_" << arg->local_name () << ".out ();" << be_nl;
*os << bt->name () << "_out " << arg->local_name ()
<< " (_tao_ptr_" << arg->local_name () << ");\n";
#endif
*os << bt->name () << "_var "
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
}
else
*os << bt->name () << " " << arg->local_name () << ";\n";
@@ -468,14 +453,14 @@ int be_visitor_args_vardecl_ss::visit_union (be_union *node)
{
#if 0 /* ASG */
*os << bt->name () << "_var _tao_var_"
- << arg->local_name () << ";" << be_nl;
+ << arg->local_name () << ";" << be_nl;
*os << bt->name () << " *&_tao_ptr_" << arg->local_name ()
<< " = _tao_var_" << arg->local_name () << ".out ();" << be_nl;
*os << bt->name () << "_out " << arg->local_name ()
<< " (_tao_ptr_" << arg->local_name () << ");\n";
#endif
*os << bt->name () << "_var "
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
}
else
@@ -539,7 +524,7 @@ int be_compiled_visitor_args_vardecl_ss::visit_interface (be_interface *node)
case AST_Argument::dir_OUT:
os->indent ();
*os << bt->name () << "_var "
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
break;
}
return 0;
@@ -567,70 +552,9 @@ int be_compiled_visitor_args_vardecl_ss::visit_interface_fwd (be_interface_fwd *
case AST_Argument::dir_OUT:
os->indent ();
*os << bt->name () << "_var "
- << arg->local_name () << ";\n";
- break;
- }
- return 0;
-}
-
-
-#ifdef IDL_HAS_VALUETYPE
-
-int be_compiled_visitor_args_vardecl_ss::visit_valuetype (be_valuetype *node)
-{
- TAO_OutStream *os = this->ctx_->stream (); // get output stream
- be_argument *arg = this->ctx_->be_node_as_argument (); // get the argument
- // node
- // if the current type is an alias, use that
- be_type *bt;
- if (this->ctx_->alias ())
- bt = this->ctx_->alias ();
- else
- bt = node;
-
- switch (this->direction ())
- {
- case AST_Argument::dir_IN:
- case AST_Argument::dir_INOUT:
- os->indent ();
- *os << bt->name () << "_var " << arg->local_name () << ";\n";
- break;
- case AST_Argument::dir_OUT:
- os->indent ();
- *os << bt->name () << "_var "
- << arg->local_name () << ";\n";
- break;
- }
- return 0;
-}
-
-int
-be_compiled_visitor_args_vardecl_ss::visit_valuetype_fwd (be_valuetype_fwd *node)
-{
- TAO_OutStream *os = this->ctx_->stream (); // get output stream
- be_argument *arg = this->ctx_->be_node_as_argument (); // get the argument
- // node
- // if the current type is an alias, use that
- be_type *bt;
- if (this->ctx_->alias ())
- bt = this->ctx_->alias ();
- else
- bt = node;
-
- switch (this->direction ())
- {
- case AST_Argument::dir_IN:
- case AST_Argument::dir_INOUT:
- os->indent ();
- *os << bt->name () << "_var " << arg->local_name () << ";\n";
- break;
- case AST_Argument::dir_OUT:
- os->indent ();
- *os << bt->name () << "_var "
- << arg->local_name () << ";\n";
+ << arg->local_name () << ";\n";
break;
}
return 0;
}
-#endif /* IDL_HAS_VALUETYPE */