00001 // -*- C++ -*- 00002 // 00003 // $Id: TypeCode.inl 77243 2007-02-20 15:10:51Z johnnyw $ 00004 00005 TAO_BEGIN_VERSIONED_NAMESPACE_DECL 00006 00007 ACE_INLINE CORBA::Boolean 00008 CORBA::is_nil (CORBA::TypeCode_ptr obj) 00009 { 00010 return obj == 0; 00011 } 00012 00013 ACE_INLINE void 00014 CORBA::release (CORBA::TypeCode_ptr obj) 00015 { 00016 if (obj) 00017 obj->tao_release (); 00018 } 00019 00020 // -------------------------------------------------------------- 00021 00022 ACE_INLINE 00023 CORBA::TypeCode::TypeCode (CORBA::TCKind k) 00024 : kind_ (k) 00025 { 00026 } 00027 00028 ACE_INLINE CORBA::TypeCode_ptr 00029 CORBA::TypeCode::_duplicate (CORBA::TypeCode_ptr tc) 00030 { 00031 if (!CORBA::is_nil (tc)) 00032 tc->tao_duplicate (); 00033 00034 return tc; 00035 } 00036 00037 ACE_INLINE CORBA::TypeCode_ptr 00038 CORBA::TypeCode::_nil (void) 00039 { 00040 return static_cast<CORBA::TypeCode_ptr> (0); 00041 } 00042 00043 ACE_INLINE CORBA::TCKind 00044 CORBA::TypeCode::kind (void) const 00045 { 00046 return this->kind_; 00047 } 00048 00049 ACE_INLINE CORBA::TypeCode_ptr 00050 CORBA::TypeCode::get_compact_typecode (void) const 00051 { 00052 return this->get_compact_typecode_i (); 00053 } 00054 00055 ACE_INLINE char const * 00056 CORBA::TypeCode::id (void) const 00057 { 00058 return this->id_i (); 00059 } 00060 00061 ACE_INLINE char const * 00062 CORBA::TypeCode::name (void) const 00063 { 00064 return this->name_i (); 00065 } 00066 00067 ACE_INLINE CORBA::ULong 00068 CORBA::TypeCode::member_count (void) const 00069 { 00070 return this->member_count_i (); 00071 } 00072 00073 ACE_INLINE char const * 00074 CORBA::TypeCode::member_name (ULong index) const 00075 { 00076 return this->member_name_i (index); 00077 } 00078 00079 ACE_INLINE CORBA::TypeCode_ptr 00080 CORBA::TypeCode::member_type (ULong index) const 00081 { 00082 return this->member_type_i (index); 00083 } 00084 00085 ACE_INLINE CORBA::Any * 00086 CORBA::TypeCode::member_label (ULong index) const 00087 { 00088 return this->member_label_i (index); 00089 } 00090 00091 ACE_INLINE CORBA::TypeCode_ptr 00092 CORBA::TypeCode::discriminator_type (void) const 00093 { 00094 return this->discriminator_type_i (); 00095 } 00096 00097 ACE_INLINE CORBA::Long 00098 CORBA::TypeCode::default_index (void) const 00099 { 00100 return this->default_index_i (); 00101 } 00102 00103 ACE_INLINE CORBA::ULong 00104 CORBA::TypeCode::length (void) const 00105 { 00106 return this->length_i (); 00107 } 00108 00109 ACE_INLINE CORBA::TypeCode_ptr 00110 CORBA::TypeCode::content_type (void) const 00111 { 00112 return this->content_type_i (); 00113 } 00114 00115 ACE_INLINE CORBA::UShort 00116 CORBA::TypeCode::fixed_digits (void) const 00117 { 00118 return this->fixed_digits_i (); 00119 } 00120 00121 ACE_INLINE CORBA::UShort 00122 CORBA::TypeCode::fixed_scale (void) const 00123 { 00124 return this->fixed_scale_i (); 00125 } 00126 00127 ACE_INLINE CORBA::Visibility 00128 CORBA::TypeCode::member_visibility (ULong index) const 00129 { 00130 return this->member_visibility_i (index); 00131 } 00132 00133 ACE_INLINE CORBA::ValueModifier 00134 CORBA::TypeCode::type_modifier (void) const 00135 { 00136 return this->type_modifier_i (); 00137 } 00138 00139 ACE_INLINE CORBA::TypeCode_ptr 00140 CORBA::TypeCode::concrete_base_type (void) const 00141 { 00142 return this->concrete_base_type_i (); 00143 } 00144 00145 ACE_INLINE void 00146 CORBA::TypeCode::_tao_any_destructor (void * x) 00147 { 00148 ::CORBA::release (static_cast <CORBA::TypeCode_ptr> (x)); 00149 } 00150 00151 00152 TAO_END_VERSIONED_NAMESPACE_DECL