summaryrefslogtreecommitdiff
path: root/modules/TAO/TAO_IDL/be/be_visitor_root/any_op.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'modules/TAO/TAO_IDL/be/be_visitor_root/any_op.cpp')
-rw-r--r--modules/TAO/TAO_IDL/be/be_visitor_root/any_op.cpp68
1 files changed, 68 insertions, 0 deletions
diff --git a/modules/TAO/TAO_IDL/be/be_visitor_root/any_op.cpp b/modules/TAO/TAO_IDL/be/be_visitor_root/any_op.cpp
index 9455e261b8a..cc81d7719c3 100644
--- a/modules/TAO/TAO_IDL/be/be_visitor_root/any_op.cpp
+++ b/modules/TAO/TAO_IDL/be/be_visitor_root/any_op.cpp
@@ -64,6 +64,74 @@ be_visitor_root_any_op::visit_root (be_root *node)
"codegen for scope failed\n"),
-1);
}
+
+ TAO_OutStream *os = this->ctx_->stream ();
+ TAO_CodeGen::CG_STATE cg_state = this->ctx_->state ();
+
+ if (cg_state == TAO_CodeGen::TAO_ROOT_ANY_OP_CH)
+ {
+ *os << be_nl << be_nl
+ << "TAO_BEGIN_VERSIONED_NAMESPACE_DECL";
+
+ *os << be_nl << be_nl
+ << "void operator<<= ( ::CORBA::Any &, const std::string);"
+ << be_nl
+ << "::CORBA::Boolean operator>>= (const ::CORBA::Any &, std::string &);"
+ << be_nl << be_nl
+ << "TAO_END_VERSIONED_NAMESPACE_DECL" << be_nl << be_nl
+ << "TAO_BEGIN_VERSIONED_NAMESPACE_DECL"
+ << be_nl << be_nl
+ << "void operator<<= ( ::CORBA::Any &, const Param_Test::UB_Long_Seq);"
+ << be_nl
+ << "::CORBA::Boolean operator>>= (const ::CORBA::Any &, Param_Test::UB_Long_Seq &);";
+
+ *os << be_nl << be_nl
+ << "TAO_END_VERSIONED_NAMESPACE_DECL";
+ }
+ else if (cg_state == TAO_CodeGen::TAO_ROOT_ANY_OP_CS)
+ {
+ *os << be_nl << be_nl
+ << "TAO_BEGIN_VERSIONED_NAMESPACE_DECL";
+
+ *os << be_nl << be_nl
+ << "void operator<<= (" << be_idt_nl
+ << "::CORBA::Any &," << be_nl
+ << "const std::string)" << be_uidt_nl
+ << "{" << be_nl
+ << "}";
+
+ *os << be_nl << be_nl
+ << "::CORBA::Boolean operator>>= (" << be_idt_nl
+ << "const ::CORBA::Any &," << be_nl
+ << "std::string &)" << be_uidt_nl
+ << "{" << be_idt_nl
+ << "return true;" << be_uidt_nl
+ << "}";
+
+ *os << be_nl << be_nl
+ << "TAO_END_VERSIONED_NAMESPACE_DECL";
+
+ *os << be_nl << be_nl
+ << "TAO_BEGIN_VERSIONED_NAMESPACE_DECL";
+
+ *os << be_nl << be_nl
+ << "void operator<<= (" << be_idt_nl
+ << "::CORBA::Any &," << be_nl
+ << "const Param_Test::UB_Long_Seq)" << be_uidt_nl
+ << "{" << be_nl
+ << "}";
+
+ *os << be_nl << be_nl
+ << "::CORBA::Boolean operator>>= (" << be_idt_nl
+ << "const ::CORBA::Any &," << be_nl
+ << "Param_Test::UB_Long_Seq &)" << be_uidt_nl
+ << "{" << be_idt_nl
+ << "return true;" << be_uidt_nl
+ << "}";
+
+ *os << be_nl << be_nl
+ << "TAO_END_VERSIONED_NAMESPACE_DECL";
+ }
return 0;
}