summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be/be_valuetype_fwd.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/TAO_IDL/be/be_valuetype_fwd.cpp')
-rw-r--r--TAO/TAO_IDL/be/be_valuetype_fwd.cpp245
1 files changed, 126 insertions, 119 deletions
diff --git a/TAO/TAO_IDL/be/be_valuetype_fwd.cpp b/TAO/TAO_IDL/be/be_valuetype_fwd.cpp
index d6165e74e31..6f8eb673de3 100644
--- a/TAO/TAO_IDL/be/be_valuetype_fwd.cpp
+++ b/TAO/TAO_IDL/be/be_valuetype_fwd.cpp
@@ -21,28 +21,30 @@
// ============================================================================
-#include "idl.h"
-#include "idl_extern.h"
-#include "be.h"
+#include "idl.h"
+#include "idl_extern.h"
+#include "be.h"
#ifdef IDL_HAS_VALUETYPE
ACE_RCSID(be, be_valuetype_fwd, "$Id$")
-/*
- * BE_ValuetypeFwd
- */
-
-
be_valuetype_fwd::be_valuetype_fwd (void)
{
}
be_valuetype_fwd::be_valuetype_fwd (AST_Interface *dummy,
- UTL_ScopedName *n, UTL_StrList *p)
- : be_interface_fwd (dummy, n, p),
- AST_InterfaceFwd (dummy, n, p),
- AST_Decl (AST_Decl::NT_interface_fwd, n, p)
+ UTL_ScopedName *n,
+ UTL_StrList *p)
+ : be_interface_fwd (dummy,
+ n,
+ p),
+ AST_InterfaceFwd (dummy,
+ n,
+ p),
+ AST_Decl (AST_Decl::NT_interface_fwd,
+ n,
+ p)
{
}
@@ -52,19 +54,19 @@ be_valuetype_fwd::~be_valuetype_fwd (void)
void
-be_valuetype_fwd::set_abstract_valuetype ()
+be_valuetype_fwd::set_abstract_valuetype (void)
{
- this->full_definition()->set_abstract_valuetype();
+ this->full_definition ()->set_abstract_valuetype ();
}
-// generate the var definition
+// Generate the var definition
int
be_valuetype_fwd::gen_var_defn (char *)
{
ACE_ASSERT (0);
- TAO_OutStream *ch; // output stream
- TAO_NL nl; // end line
- char namebuf [NAMEBUFSIZE]; // names
+ TAO_OutStream *ch = 0;
+ TAO_NL nl;
+ char namebuf [NAMEBUFSIZE];
ACE_OS::memset (namebuf,
'\0',
@@ -74,67 +76,66 @@ be_valuetype_fwd::gen_var_defn (char *)
"%s_var",
this->local_name ()->get_string ());
- // retrieve a singleton instance of the code generator
- TAO_CodeGen *cg = TAO_CODEGEN::instance ();
-
- ch = cg->client_header ();
+ ch = tao_cg->client_header ();
- // generate the var definition (always in the client header).
+ // Generate the var definition (always in the client header).
// Depending upon the data type, there are some differences which we account
// for over here.
- ch->indent (); // start with whatever was our current indent level
- *ch << "class " << idl_global->stub_export_macro ()
+ // Start with whatever was our current indent level.
+ ch->indent ();
+ *ch << "class " << be_global->stub_export_macro ()
<< " " << namebuf << nl;
*ch << "{" << nl;
*ch << "public:\n";
ch->incr_indent ();
- // default constr
+ // Default constructor.
*ch << namebuf << " (void); // default constructor" << nl;
*ch << namebuf << " (" << this->local_name () << "_ptr);" << nl;
- // copy constructor
+ // Copy constructor.
*ch << namebuf << " (const " << namebuf <<
" &); // copy constructor" << nl;
- // destructor
+ // Destructor.
*ch << "~" << namebuf << " (void); // destructor" << nl;
*ch << nl;
- // assignment operator from a pointer
+ // Assignment operator from a pointer.
*ch << namebuf << " &operator= (" << this->local_name ()
<< "_ptr);" << nl;
- // assignment from _var
+ // Assignment from _var.
*ch << namebuf << " &operator= (const " << namebuf <<
" &);" << nl;
- // arrow operator
+ // Arrow operator.
*ch << this->local_name () << "_ptr operator-> (void) const;" << nl;
*ch << nl;
- // other extra types (cast operators, [] operator, and others)
+ // Other extra types (cast operators, [] operator, and others).
*ch << "operator const " << this->local_name ()
<< "_ptr &() const;" << nl;
*ch << "operator " << this->local_name () << "_ptr &();" << nl;
*ch << "// in, inout, out, _retn " << nl;
- // the return types of in, out, inout, and _retn are based on the parameter
- // passing rules and the base type
+ // The return types of in, out, inout, and _retn are based on the parameter
+ // passing rules and the base type.
*ch << this->local_name () << "_ptr in (void) const;" << nl;
*ch << this->local_name () << "_ptr &inout (void);" << nl;
*ch << this->local_name () << "_ptr &out (void);" << nl;
*ch << this->local_name () << "_ptr _retn (void);" << nl;
- // generate an additional member function that returns the underlying pointer
+ // Generate an additional member function that returns
+ // the underlying pointer.
*ch << this->local_name () << "_ptr ptr (void) const;\n";
*ch << "\n";
ch->decr_indent ();
- // private
+ // Private.
*ch << "private:\n";
ch->incr_indent ();
*ch << this->local_name () << "_ptr ptr_;\n";
@@ -145,17 +146,19 @@ be_valuetype_fwd::gen_var_defn (char *)
return 0;
}
-// implementation of the _var class. All of these get generated in the inline
-// file
+// Implementation of the _var class. All of these get generated in the inline
+// file.
int
be_valuetype_fwd::gen_var_impl (char *,
char *)
{
ACE_ASSERT (0);
- TAO_OutStream *ci; // output stream
- TAO_NL nl; // end line
- char fname [NAMEBUFSIZE]; // to hold the full and
- char lname [NAMEBUFSIZE]; // local _var names
+ TAO_OutStream *ci = 0;
+ TAO_NL nl;
+
+ // To hold the full and local _var names.
+ char fname [NAMEBUFSIZE];
+ char lname [NAMEBUFSIZE];
ACE_OS::memset (fname,
'\0',
@@ -173,30 +176,28 @@ be_valuetype_fwd::gen_var_impl (char *,
"%s_var",
this->local_name ()->get_string ());
- // retrieve a singleton instance of the code generator
- TAO_CodeGen *cg = TAO_CODEGEN::instance ();
-
- ci = cg->client_inline ();
+ ci = tao_cg->client_inline ();
- // generate the var implementation in the inline file
+ // Generate the var implementation in the inline file
// Depending upon the data type, there are some differences which we account
// for over here.
- ci->indent (); // start with whatever was our current indent level
+ // Start with whatever was our current indent level.
+ ci->indent ();
*ci << "// *************************************************************"
<< nl;
*ci << "// Inline operations for class " << fname << nl;
*ci << "// *************************************************************\n\n";
- // default constr
+ // Default constructor.
*ci << "ACE_INLINE" << nl;
- *ci << fname << "::" << lname <<
- " (void) // default constructor" << nl;
+ *ci << fname << "::" << lname
+ << " (void) // default constructor" << nl;
*ci << " " << ": ptr_ (" << this->name () << "::_nil ())" << nl;
*ci << "{}\n\n";
- // constr from a _ptr
+ // Constructor from a _ptr.
ci->indent ();
*ci << "ACE_INLINE" << nl;
*ci << fname << "::" << lname << " (" << this->name ()
@@ -204,7 +205,7 @@ be_valuetype_fwd::gen_var_impl (char *,
*ci << " : ptr_ (p)" << nl;
*ci << "{}\n\n";
- // the additional ptr () member function. This member function must be
+ // The additional ptr () member function. This member function must be
// defined before the remaining member functions including the copy
// constructor because this inline function is used elsewhere. Hence to make
// inlining of this function possible, we must define it before its use.
@@ -217,15 +218,15 @@ be_valuetype_fwd::gen_var_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // copy constructor
+ // Copy constructor.
ci->indent ();
*ci << "ACE_INLINE" << nl;
- *ci << fname << "::" << lname << " (const " << fname <<
- " &p) // copy constructor" << nl;
+ *ci << fname << "::" << lname << " (const " << fname
+ << " &p) // copy constructor" << nl;
*ci << " : ptr_ (" << this->name () << "::_duplicate (p.ptr ()))" << nl;
*ci << "{}\n\n";
- // destructor
+ // Destructor.
ci->indent ();
*ci << "ACE_INLINE" << nl;
*ci << fname << "::~" << lname << " (void) // destructor" << nl;
@@ -235,11 +236,11 @@ be_valuetype_fwd::gen_var_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // assignment operator
+ // Assignment operator.
ci->indent ();
*ci << "ACE_INLINE " << fname << " &" << nl;
- *ci << fname << "::operator= (" << this->name () <<
- "_ptr p)" << nl;
+ *ci << fname << "::operator= (" << this->name ()
+ << "_ptr p)" << nl;
*ci << "{\n";
ci->incr_indent ();
*ci << "CORBA::release (this->ptr_);" << nl;
@@ -248,11 +249,11 @@ be_valuetype_fwd::gen_var_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // assignment operator from _var
+ // Assignment operator from _var.
ci->indent ();
*ci << "ACE_INLINE " << fname << " &" << nl;
- *ci << fname << "::operator= (const " << fname <<
- " &p)" << nl;
+ *ci << fname << "::operator= (const " << fname
+ << " &p)" << nl;
*ci << "{\n";
ci->incr_indent ();
*ci << "if (this != &p)" << nl;
@@ -266,11 +267,11 @@ be_valuetype_fwd::gen_var_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // other extra methods - cast operator ()
+ // Other extra methods - cast operator ().
ci->indent ();
*ci << "ACE_INLINE " << nl;
- *ci << fname << "::operator const " << this->name () <<
- "_ptr &() const // cast" << nl;
+ *ci << fname << "::operator const " << this->name ()
+ << "_ptr &() const // cast" << nl;
*ci << "{\n";
ci->incr_indent ();
*ci << "return this->ptr_;\n";
@@ -297,7 +298,7 @@ be_valuetype_fwd::gen_var_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // in, inout, out, and _retn
+ // in, inout, out, and _retn.
ci->indent ();
*ci << "ACE_INLINE " << this->name () << "_ptr" << nl;
*ci << fname << "::in (void) const" << nl;
@@ -342,14 +343,14 @@ be_valuetype_fwd::gen_var_impl (char *,
return 0;
}
-// generate the _out definition
+// Generate the _out definition.
int
be_valuetype_fwd::gen_out_defn (char *)
{
ACE_ASSERT (0);
- TAO_OutStream *ch; // output stream
- TAO_NL nl; // end line
- char namebuf [NAMEBUFSIZE]; // to hold the _out name
+ TAO_OutStream *ch = 0;
+ TAO_NL nl;
+ char namebuf [NAMEBUFSIZE];
ACE_OS::memset (namebuf,
'\0',
@@ -359,41 +360,47 @@ be_valuetype_fwd::gen_out_defn (char *)
"%s_out",
this->local_name ()->get_string ());
- // retrieve a singleton instance of the code generator
- TAO_CodeGen *cg = TAO_CODEGEN::instance ();
+ ch = tao_cg->client_header ();
- ch = cg->client_header ();
+ // Generate the out definition (always in the client header).
- // generate the out definition (always in the client header)
- ch->indent (); // start with whatever was our current indent level
+ // Start with whatever was our current indent level.
+ ch->indent ();
- *ch << "class " << idl_global->stub_export_macro ()
+ *ch << "class " << be_global->stub_export_macro ()
<< " " << namebuf << nl;
*ch << "{" << nl;
*ch << "public:\n";
ch->incr_indent ();
- // No default constructor
+ // No default constructor.
- // constructor from a pointer
+ // Constructor from a pointer.
*ch << namebuf << " (" << this->local_name () << "_ptr &);" << nl;
- // constructor from a _var &
+
+ // Constructor from a _var &.
*ch << namebuf << " (" << this->local_name () << "_var &);" << nl;
- // constructor from a _out &
+
+ // Constructor from a _out &.
*ch << namebuf << " (const " << namebuf << " &);" << nl;
- // assignment operator from a _out &
+
+ // Assignment operator from a _out &.
*ch << namebuf << " &operator= (const " << namebuf << " &);" << nl;
- // assignment operator from a pointer &, cast operator, ptr fn, operator
- // -> and any other extra operators
- // only valuetype allows assignment from var &
+
+ // Assignment operator from a pointer &, cast operator, ptr fn, operator
+ // -> and any other extra operators.
+ // Only valuetype allows assignment from var &.
*ch << namebuf << " &operator= (const " << this->local_name ()
<< "_var &);" << nl;
*ch << namebuf << " &operator= (" << this->local_name ()
<< "_ptr);" << nl;
- // cast
+
+ // Cast.
*ch << "operator " << this->local_name () << "_ptr &();" << nl;
- // ptr fn
+
+ // ptr function.
*ch << this->local_name () << "_ptr &ptr (void);" << nl;
+
// operator ->
*ch << this->local_name () << "_ptr operator-> (void);" << nl;
@@ -414,10 +421,12 @@ be_valuetype_fwd::gen_out_impl (char *,
char *)
{
ACE_ASSERT (0);
- TAO_OutStream *ci; // output stream
- TAO_NL nl; // end line
- char fname [NAMEBUFSIZE]; // to hold the full and
- char lname [NAMEBUFSIZE]; // local _out names
+ TAO_OutStream *ci = 0;
+ TAO_NL nl;
+
+ // To hold the full and local _out names.
+ char fname [NAMEBUFSIZE];
+ char lname [NAMEBUFSIZE];
ACE_OS::memset (fname,
'\0',
@@ -435,23 +444,21 @@ be_valuetype_fwd::gen_out_impl (char *,
"%s_out",
this->local_name ()->get_string ());
- // retrieve a singleton instance of the code generator
- TAO_CodeGen *cg = TAO_CODEGEN::instance ();
-
- ci = cg->client_inline ();
+ ci = tao_cg->client_inline ();
- // generate the var implementation in the inline file
+ // Generate the var implementation in the inline file
// Depending upon the data type, there are some differences which we account
// for over here.
- ci->indent (); // start with whatever was our current indent level
+ // Start with whatever was our current indent level.
+ ci->indent ();
*ci << "// *************************************************************"
<< nl;
*ci << "// Inline operations for class " << fname << nl;
*ci << "// *************************************************************\n\n";
- // constr from a _ptr
+ // Constructor from a _ptr.
ci->indent ();
*ci << "ACE_INLINE" << nl;
*ci << fname << "::" << lname << " (" << this->name ()
@@ -463,11 +470,11 @@ be_valuetype_fwd::gen_out_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // constructor from _var &
+ // Constructor from _var &.
ci->indent ();
*ci << "ACE_INLINE" << nl;
- *ci << fname << "::" << lname << " (" << this->name () <<
- "_var &p) // constructor from _var" << nl;
+ *ci << fname << "::" << lname << " (" << this->name ()
+ << "_var &p) // constructor from _var" << nl;
*ci << " : ptr_ (p.out ())" << nl;
*ci << "{\n";
ci->incr_indent ();
@@ -476,20 +483,20 @@ be_valuetype_fwd::gen_out_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // copy constructor
+ // Copy constructor.
ci->indent ();
*ci << "ACE_INLINE" << nl;
- *ci << fname << "::" << lname << " (const " << fname <<
- " &p) // copy constructor" << nl;
+ *ci << fname << "::" << lname << " (const " << fname
+ << " &p) // copy constructor" << nl;
*ci << " : ptr_ (ACE_const_cast (" << fname
<< "&,p).ptr_)" << nl;
*ci << "{}\n\n";
- // assignment operator from _out &
+ // Assignment operator from _out &.
ci->indent ();
*ci << "ACE_INLINE " << fname << " &" << nl;
- *ci << fname << "::operator= (const " << fname <<
- " &p)" << nl;
+ *ci << fname << "::operator= (const " << fname
+ << " &p)" << nl;
*ci << "{\n";
ci->incr_indent ();
*ci << "this->ptr_ = ACE_const_cast (" << fname << "&,p).ptr_;" << nl;
@@ -497,11 +504,11 @@ be_valuetype_fwd::gen_out_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // assignment operator from _var
+ // Assignment operator from _var.
ci->indent ();
*ci << "ACE_INLINE " << fname << " &" << nl;
- *ci << fname << "::operator= (const " << this->name () <<
- "_var &p)" << nl;
+ *ci << fname << "::operator= (const " << this->name ()
+ << "_var &p)" << nl;
*ci << "{\n";
ci->incr_indent ();
*ci << "this->ptr_ = " << this->name () << "::_duplicate (p.ptr ());" << nl;
@@ -509,11 +516,11 @@ be_valuetype_fwd::gen_out_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // assignment operator from _ptr
+ // Assignment operator from _ptr.
ci->indent ();
*ci << "ACE_INLINE " << fname << " &" << nl;
- *ci << fname << "::operator= (" << this->name () <<
- "_ptr p)" << nl;
+ *ci << fname << "::operator= (" << this->name ()
+ << "_ptr p)" << nl;
*ci << "{\n";
ci->incr_indent ();
*ci << "this->ptr_ = p;" << nl;
@@ -521,18 +528,18 @@ be_valuetype_fwd::gen_out_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // other extra methods - cast operator ()
+ // Other extra methods - cast operator ().
ci->indent ();
*ci << "ACE_INLINE " << nl;
- *ci << fname << "::operator " << this->name () <<
- "_ptr &() // cast" << nl;
+ *ci << fname << "::operator " << this->name ()
+ << "_ptr &() // cast" << nl;
*ci << "{\n";
ci->incr_indent ();
*ci << "return this->ptr_;\n";
ci->decr_indent ();
*ci << "}\n\n";
- // ptr function
+ // ptr function.
ci->indent ();
*ci << "ACE_INLINE " << this->name () << "_ptr &" << nl;
*ci << fname << "::ptr (void) // ptr" << nl;
@@ -542,7 +549,7 @@ be_valuetype_fwd::gen_out_impl (char *,
ci->decr_indent ();
*ci << "}\n\n";
- // operator->
+ // operator->
ci->indent ();
*ci << "ACE_INLINE " << this->name () << "_ptr " << nl;
*ci << fname << "::operator-> (void)" << nl;
@@ -561,7 +568,7 @@ be_valuetype_fwd::accept (be_visitor *visitor)
return visitor->visit_valuetype_fwd (this);
}
-// Narrowing
+// Narrowing.
IMPL_NARROW_METHODS1 (be_valuetype_fwd, be_interface_fwd)
IMPL_NARROW_FROM_DECL (be_valuetype_fwd)