summaryrefslogtreecommitdiff
path: root/CIAO/tools/IDL3_to_IDL2/be_helper.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'CIAO/tools/IDL3_to_IDL2/be_helper.cpp')
-rw-r--r--CIAO/tools/IDL3_to_IDL2/be_helper.cpp436
1 files changed, 0 insertions, 436 deletions
diff --git a/CIAO/tools/IDL3_to_IDL2/be_helper.cpp b/CIAO/tools/IDL3_to_IDL2/be_helper.cpp
deleted file mode 100644
index c5000558c24..00000000000
--- a/CIAO/tools/IDL3_to_IDL2/be_helper.cpp
+++ /dev/null
@@ -1,436 +0,0 @@
-// $Id$
-
-// ============================================================================
-//
-//
-// = LIBRARY
-// TAO IDL
-//
-// = FILENAME
-// be_helper.cpp
-//
-// = DESCRIPTION
-// Provides helper classes to print generated code to the output
-//
-// = AUTHOR
-// Aniruddha Gokhale
-//
-// Improvements by Carlos O'Ryan
-//
-// ============================================================================
-
-#include "be_helper.h"
-#include "idl_defines.h"
-#include "ace/OS_NS_stdio.h"
-#include "ace/OS_NS_string.h"
-#include "ace/os_include/os_ctype.h"
-
-ACE_RCSID (be,
- be_helper,
- "$Id$")
-
-static const char copyright[] =
-"// -*- C++ -*-\n"
-"//\n"
-"// $I" "d$\n\n"
-"// **** Code generated by the The ACE ORB (TAO) IDL Compiler ****\n"
-"// TAO and the TAO IDL Compiler have been developed by:\n"
-"// Center for Distributed Object Computing\n"
-"// Washington University\n"
-"// St. Louis, MO\n"
-"// USA\n"
-"// http://www.cs.wustl.edu/~schmidt/doc-center.html\n"
-"// and\n"
-"// Distributed Object Computing Laboratory\n"
-"// University of California at Irvine\n"
-"// Irvine, CA\n"
-"// USA\n"
-"// http://doc.ece.uci.edu/\n"
-"// and\n"
-"// Institute for Software Integrated Systems\n"
-"// Vanderbilt University\n"
-"// Nashville, TN\n"
-"// USA\n"
-"// http://www.isis.vanderbilt.edu/\n"
-"//\n"
-"// Information about TAO is available at:\n"
-"// http://www.cs.wustl.edu/~schmidt/TAO.html";
-
-TAO_NL::TAO_NL (void)
-{
-}
-
-TAO_INDENT::TAO_INDENT (int do_now)
- : do_now_ (do_now)
-{
-}
-
-TAO_UNINDENT::TAO_UNINDENT (int do_now)
- : do_now_ (do_now)
-{
-}
-
-const TAO_NL be_nl;
-const TAO_INDENT be_idt;
-const TAO_INDENT be_idt_nl (1);
-const TAO_UNINDENT be_uidt;
-const TAO_UNINDENT be_uidt_nl (1);
-
-// Methods of the TAO_OutStream class.
-
-TAO_OutStream::TAO_OutStream (void)
- : fp_ (0),
- indent_level_ (0)
-{
-}
-
-TAO_OutStream::~TAO_OutStream (void)
-{
- // Close the underlying I/O handle only if it exists.
- if (this->fp_ != 0)
- {
- ACE_OS::fclose (this->fp_);
- this->fp_ = 0;
- }
-
- indent_level_ = 0;
-}
-
-int
-TAO_OutStream::open (const char *fname)
-{
- if (fname != 0)
- {
- // File name exists, open an I/O file handle.
- this->fp_ = ACE_OS::fopen (fname, "w");
-
- if (this->fp_ != 0)
- {
- // Put the copyright notice.
- ACE_OS::fprintf (this->fp_,
- "%s\n",
- copyright);
-
- ACE_OS::fflush (this->fp_);
-
- return 0;
- }
- else
- {
- return -1;
- }
- }
- else
- {
- return -1;
- }
-}
-
-// Return the underlying lowlevel file pointer.
-// indentation.
-FILE *
-TAO_OutStream::file (void)
-{
- return this->fp_;
-}
-
-int
-TAO_OutStream::incr_indent (unsigned short flag)
-{
- indent_level_++;
-
- if (flag != 0)
- {
- return this->indent ();
- }
- else
- {
- // Do not indent output.
- return 0;
- }
-}
-
-// Indentation
-int
-TAO_OutStream::decr_indent (unsigned short flag)
-{
- this->indent_level_--;
- // Just in case somebody gets "unindent happy".
- if (this->indent_level_ < 0)
- {
- // ACE_DEBUG ((LM_DEBUG, "negative indentation?\n"));
- this->indent_level_ = 0;
- }
- if (flag != 0)
- {
- return this->indent ();
- }
- else
- {
- // Do not indent output.
- return 0;
- }
-}
-
-int
-TAO_OutStream::reset (void)
-{
- this->indent_level_ = 0;
- return 0;
-}
-
-// Indented print.
-int
-TAO_OutStream::indent (void)
-{
- // Based on the current indentation level, leave appropriate number of blank
- // spaces in the output.
- if (this->indent_level_ > 0)
- {
- for (int i = 0; i < this->indent_level_; i++)
- {
- ACE_OS::fprintf (this->fp_, " ");
- ACE_OS::fflush (this->fp_);
- }
- }
-
- return 0;
-}
-
-int
-TAO_OutStream::nl (void)
-{
- ACE_OS::fprintf (this->fp_, "\n");
- this->indent ();
- return 0;
-}
-
-// Printf style variable argument print.
-int
-TAO_OutStream::print (const char *format, ...)
-{
- int result = 0;
- va_list ap;
- va_start (ap, format);
- ACE_OSCALL (::vfprintf (this->fp_,
- format,
- ap),
- int,
- -1,
- result);
-
- ACE_OS::fflush (this->fp_);
- va_end (ap);
-
- return result;
-}
-
-void
-TAO_OutStream::gen_ifndef_string (const char *fname,
- const char *prefix,
- const char *suffix)
-{
- static char macro_name [NAMEBUFSIZE];
-
- ACE_OS::memset (macro_name,
- '\0',
- NAMEBUFSIZE);
-
- const char *extension = ACE_OS::strrchr (fname, '.');
-
- if (extension == 0)
- {
- // File seems to have no extension, so let us take the name
- // as it is.
- extension = fname;
- }
-
- ACE_OS::sprintf (macro_name, prefix);
-
- size_t offset = ACE_OS::strlen (prefix);
-
- // Convert letters in fname to upper case.
- for (int i = 0; i < (extension - fname); i++)
- {
- if (isalpha (fname [i]))
- {
- macro_name[i + offset] = (char) toupper (fname [i]);
- }
- else if (isdigit (fname [i]))
- {
- macro_name[i + offset] = fname[i];
- }
- else
- {
- macro_name[i + offset] = '_';
- }
- }
-
- ACE_OS::strcat (macro_name, suffix);
-
- // Generate the #ifndef ... #define statements.
- this->print ("#ifndef %s\n",
- macro_name);
- this->print ("#define %s",
- macro_name);
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const char *str)
-{
- ACE_OS::fprintf (this->fp_, "%s", str);
- ACE_OS::fflush (this->fp_);
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const ACE_CDR::UShort num)
-{
- ACE_OS::fprintf (this->fp_,
- "%hu",
- num);
-
- ACE_OS::fflush (this->fp_);
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const ACE_CDR::Short num)
-{
- ACE_OS::fprintf (this->fp_,
- "%hd",
- num);
-
- ACE_OS::fflush (this->fp_);
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const ACE_CDR::ULong num)
-{
- ACE_OS::fprintf (this->fp_,
- "%lu",
- (unsigned long) num);
-
- ACE_OS::fflush (this->fp_);
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const ACE_CDR::Long num)
-{
- ACE_OS::fprintf (this->fp_,
- "%ld",
- (long) num);
-
- ACE_OS::fflush (this->fp_);
-
- return *this;
-}
-
-#if defined (ACE_WIN64)
-TAO_OutStream &
-TAO_OutStream::operator<< (const ACE_CDR::ULongLong num)
-{
- ACE_OS::fprintf (this->fp_,
- ACE_UINT64_FORMAT_SPECIFIER,
- num);
-
- ACE_OS::fflush (this->fp_);
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const ACE_CDR::LongLong num)
-{
- ACE_OS::fprintf (this->fp_,
- ACE_INT64_FORMAT_SPECIFIER,
- num);
-
- ACE_OS::fflush (this->fp_);
-
- return *this;
-}
-#endif /* ACE_WIN64 */
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const unsigned long num)
-{
- ACE_OS::fprintf (this->fp_,
- "%lu",
- num);
-
- ACE_OS::fflush (this->fp_);
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const long num)
-{
- ACE_OS::fprintf (this->fp_,
- "%ld",
- num);
-
- ACE_OS::fflush (this->fp_);
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const TAO_NL&)
-{
- ACE_OS::fprintf (this->fp_ ,
- "\n");
- this->indent ();
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const TAO_INDENT& i)
-{
- this->incr_indent (0);
-
- if (i.do_now_)
- {
- this->nl ();
- }
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (const TAO_UNINDENT& i)
-{
- this->decr_indent (0);
-
- if (i.do_now_)
- {
- this->nl ();
- }
-
- return *this;
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (Identifier *id)
-{
- return this->print (id);
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (UTL_IdList *id)
-{
- return this->print (id);
-}
-
-TAO_OutStream &
-TAO_OutStream::operator<< (AST_Expression *expr)
-{
- return this->print (expr);
-}