diff options
Diffstat (limited to 'TAO/TAO_IDL/be/be_string.cpp')
-rw-r--r-- | TAO/TAO_IDL/be/be_string.cpp | 175 |
1 files changed, 0 insertions, 175 deletions
diff --git a/TAO/TAO_IDL/be/be_string.cpp b/TAO/TAO_IDL/be/be_string.cpp deleted file mode 100644 index c883c6e80eb..00000000000 --- a/TAO/TAO_IDL/be/be_string.cpp +++ /dev/null @@ -1,175 +0,0 @@ -// ============================================================================ -// -// = LIBRARY -// TAO IDL -// -// = FILENAME -// be_string.cpp -// -// = DESCRIPTION -// Extension of class AST_Array that provides additional means for C++ -// mapping. -// -// = AUTHOR -// Copyright 1994-1995 by Sun Microsystems, Inc. -// and -// Aniruddha Gokhale -// -// ============================================================================ - -#include "idl.h" -#include "idl_extern.h" -#include "be.h" - -/* - * BE_String - */ -be_string::be_string (void) -{ - this->size_type (be_decl::VARIABLE); // always the case -} - -be_string::be_string (AST_Expression *v) - : AST_String (v), - AST_Decl (AST_Decl::NT_string, - new UTL_ScopedName(new Identifier("string", 1, 0, I_FALSE), - NULL), - NULL) -{ - this->size_type (be_decl::VARIABLE); // always the case -} - -be_string::be_string (AST_Expression *v, long wide) - : AST_String (v, wide), - AST_Decl (AST_Decl::NT_string, - wide == 1 - ? new UTL_ScopedName(new Identifier("string",1,0,I_FALSE), - NULL) - : new UTL_ScopedName(new Identifier("wstring_t", - 1, - 0, - I_FALSE), - NULL), - NULL) -{ - this->size_type (be_decl::VARIABLE); // always the case -} - -// overriden method -void -be_string::compute_tc_name (void) -{ - // start with the head as the CORBA namespace - this->tc_name_ = new UTL_ScopedName (new Identifier ("CORBA", 1, 0, I_FALSE), - NULL); - - this->tc_name_->nconc (new UTL_ScopedName (new Identifier ("_tc_string", 1, 0, - I_FALSE), NULL)); -} - -// Code generation - -int -be_string::gen_client_header (void) -{ - TAO_OutStream *ch; // output stream - - // retrieve a singleton instance of the code generator - TAO_CodeGen *cg = TAO_CODEGEN::instance (); - - ch = cg->client_header (); - ch->indent (); - *ch << "char *"; - - return 0; -} - -int -be_string::gen_client_stubs (void) -{ - return 0; -} - -int -be_string::gen_server_header (void) -{ - return 0; -} - -int -be_string::gen_server_skeletons (void) -{ - return 0; -} - -// Generates the client-side inline information -int -be_string::gen_client_inline (void) -{ - // nothing to be done - return 0; -} - -// Generates the server-side inline -int -be_string::gen_server_inline (void) -{ - // nothing to be done - return 0; -} - -int -be_string::gen_typecode (void) -{ - TAO_OutStream *cs; // output stream - TAO_NL nl; // end line - TAO_CodeGen *cg = TAO_CODEGEN::instance (); - - cs = cg->client_stubs (); - cs->indent (); // start from the current indentation level - // emit the enumeration - *cs << "CORBA::tk_string, " << nl; - *cs << this->max_size () << ", // string length\n"; - return 0; -} - -// compute typecode size -long -be_string::tc_size (void) -{ - // 4 bytes for enumeration, 4 bytes for storing string length - return 4 + 4; -} - -int -be_string::gen_encapsulation (void) -{ - return 0; -} - -long -be_string::tc_encap_len (void) -{ - if (this->encap_len_ == -1) - { - this->encap_len_ = 0; // no encapsulation - } - return this->encap_len_; -} - -int be_string::write_as_return (TAO_OutStream *stream, - be_type * /* type */) -{ - *stream << "char* "; - return 0; -} - -int -be_string::accept (be_visitor *visitor) -{ - return visitor->visit_string (this); -} - -// Narrowing -IMPL_NARROW_METHODS2 (be_string, AST_String, be_type) -IMPL_NARROW_FROM_DECL (be_string) |