#include <String_TypeCode_Static.h>
Inheritance diagram for TAO::TypeCode::String< TAO::Null_RefCount_Policy >:
@c TAO CORBA::TypeCode Template Methods | |
CORBA::TypeCode template methods specific to tk_string TypeCodes .
| |
virtual CORBA::Boolean | equal_i (CORBA::TypeCode_ptr tc) const |
virtual CORBA::Boolean | equivalent_i (CORBA::TypeCode_ptr tc) const |
virtual CORBA::TypeCode_ptr | get_compact_typecode_i (void) const |
virtual CORBA::ULong | length_i (void) const |
CORBA::ULong const | length_ |
Public Member Functions | |
String (CORBA::TCKind kind, CORBA::ULong length) | |
Constructor. | |
TAO-specific @c CORBA::TypeCode Methods | |
virtual bool | tao_marshal (TAO_OutputCDR &cdr, CORBA::ULong offset) const |
Marshal this TypeCode into a CDR output stream. | |
virtual void | tao_duplicate (void) |
Increase the reference count on this TypeCode . | |
virtual void | tao_release (void) |
Decrease the reference count on this object. |
Definition at line 47 of file String_TypeCode_Static.h.
TAO_BEGIN_VERSIONED_NAMESPACE_DECL ACE_INLINE TAO::TypeCode::String< TAO::Null_RefCount_Policy >::String | ( | CORBA::TCKind | kind, | |
CORBA::ULong | length | |||
) |
Constructor.
Definition at line 8 of file String_TypeCode_Static.inl.
00011 : ::CORBA::TypeCode (kind) 00012 , ::TAO::Null_RefCount_Policy () 00013 , length_ (length) 00014 { 00015 // ACE_ASSERT (kind == CORBA::tk_string || kind == CORBA::tk_wstring); 00016 }
CORBA::Boolean TAO::TypeCode::String< TAO::Null_RefCount_Policy >::equal_i | ( | CORBA::TypeCode_ptr | tc | ) | const [protected, virtual] |
Implements CORBA::TypeCode.
Definition at line 44 of file String_TypeCode_Static.cpp.
References CORBA::TypeCode::length().
00046 { 00047 // The following call won't throw since CORBA::TypeCode::equal() has 00048 // already established the kind of tc is the same as our kind. 00049 CORBA::ULong const tc_length = tc->length (); 00050 00051 return (this->length_ == tc_length); 00052 }
CORBA::Boolean TAO::TypeCode::String< TAO::Null_RefCount_Policy >::equivalent_i | ( | CORBA::TypeCode_ptr | tc | ) | const [protected, virtual] |
Implements CORBA::TypeCode.
Definition at line 55 of file String_TypeCode_Static.cpp.
References TAO::TypeCode::String< RefCountPolicy >::equal_i().
00058 { 00059 // Since TCKind comparisons must be performed before equal_i() is 00060 // called, we can also call it to determine equivalence of 00061 // tk_string-based TypeCodes. 00062 return this->equal_i (tc); 00063 }
CORBA::TypeCode_ptr TAO::TypeCode::String< TAO::Null_RefCount_Policy >::get_compact_typecode_i | ( | void | ) | const [protected, virtual] |
Implements CORBA::TypeCode.
Definition at line 66 of file String_TypeCode_Static.cpp.
References CORBA::TypeCode::_duplicate().
00068 { 00069 // Already compact since tk_string and tk_wstring TypeCodes have no 00070 // name or member names, meaning that we can simply call 00071 // _duplicate() on this TypeCode. 00072 00073 CORBA::TypeCode_ptr mutable_tc = 00074 const_cast<TAO::TypeCode::String<TAO::Null_RefCount_Policy> *> (this); 00075 00076 return CORBA::TypeCode::_duplicate (mutable_tc); 00077 }
CORBA::ULong TAO::TypeCode::String< TAO::Null_RefCount_Policy >::length_i | ( | void | ) | const [protected, virtual] |
Reimplemented from CORBA::TypeCode.
Definition at line 80 of file String_TypeCode_Static.cpp.
References TAO::TypeCode::String< RefCountPolicy >::length_.
00082 { 00083 return this->length_; 00084 }
void TAO::TypeCode::String< TAO::Null_RefCount_Policy >::tao_duplicate | ( | void | ) | [virtual] |
Increase the reference count on this TypeCode
.
Implements CORBA::TypeCode.
Definition at line 34 of file String_TypeCode_Static.cpp.
TAO_BEGIN_VERSIONED_NAMESPACE_DECL bool TAO::TypeCode::String< TAO::Null_RefCount_Policy >::tao_marshal | ( | TAO_OutputCDR & | cdr, | |
CORBA::ULong | offset | |||
) | const [virtual] |
Marshal this TypeCode
into a CDR output stream.
Marshal this TypeCode
into the cdr output CDR stream, excluding the TypeCode
kind. Existing cdr contents will not be altered. The marshaled TypeCode
will be appended to the given cdr CDR output stream.
cdr | Output CDR stream into which the TypeCode will be marshaled. | |
offset | Number of bytes currently in the output CDR stream, including the top-level TypeCode TCKind . This argument is useful for recursive TypeCodes . TypeCodes that contain other TypeCodes should pass an updated offset value to the marshaling operation for those contained TypeCodes . |
true
if marshaling was successful.CORBA::TypeCode
interface.If this method returns false, the contents of the cdr output CDR stream are undefined.
Implements CORBA::TypeCode.
Definition at line 20 of file String_TypeCode_Static.cpp.
00023 { 00024 // A tk_string TypeCode has a "simple" parameter list type (see 00025 // Table 15-2 in Section 15.3.5.1 "TypeCode" in the CDR section of 00026 // the CORBA specification), meaning that its parameter(s) must be 00027 // marshaled immediately following the TCKind. No CDR encapsulation 00028 // is to be created. 00029 00030 return (cdr << this->length_); 00031 }
void TAO::TypeCode::String< TAO::Null_RefCount_Policy >::tao_release | ( | void | ) | [virtual] |
Decrease the reference count on this object.
Implements CORBA::TypeCode.
Definition at line 39 of file String_TypeCode_Static.cpp.
CORBA::ULong const TAO::TypeCode::String< TAO::Null_RefCount_Policy >::length_ [private] |
Length of the string
. A length of zero indicates an unbounded string
.
Definition at line 94 of file String_TypeCode_Static.h.