Merge pull request #2216 from jwillemsen/jwi-cxxversionchecks
[ACE_TAO.git] / TAO / tao / Valuetype / AbstractBase.inl
blob8fe77db69d444ea8c91bd6065a314c547759b2eb
1 // -*- C++ -*-
2 #include "ace/OS_NS_string.h"
4 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
6 ACE_INLINE
7 CORBA::AbstractBase_ptr
8 CORBA::AbstractBase::_duplicate (CORBA::AbstractBase_ptr obj)
10   if (obj)
11     {
12       obj->_add_ref ();
13     }
15   return obj;
18 ACE_INLINE
19 CORBA::AbstractBase_ptr
20 CORBA::AbstractBase::_nil ()
22   return nullptr;
25 ACE_INLINE CORBA::AbstractBase_ptr
26 CORBA::AbstractBase::_narrow (CORBA::AbstractBase_ptr obj)
28   return CORBA::AbstractBase::_duplicate (obj);
31 ACE_INLINE
32 CORBA::Boolean
33 CORBA::AbstractBase::_is_objref () const
35   return this->is_objref_;
38 ACE_INLINE
39 TAO_Stub *
40 CORBA::AbstractBase::_stubobj () const
42   if (this->is_objref_)
43     {
44       if (!CORBA::is_nil (this->equivalent_obj_.in ()))
45         {
46           return this->equivalent_obj_->_stubobj ();
47         }
48     }
49   return nullptr;
52 ACE_INLINE
53 CORBA::Boolean
54 CORBA::AbstractBase::_is_collocated () const
56   return this->is_collocated_;
59 ACE_INLINE
60 TAO_Abstract_ServantBase *
61 CORBA::AbstractBase::_servant () const
63   return this->servant_;
66 ACE_INLINE
67 CORBA::Object_ptr
68 CORBA::AbstractBase::equivalent_objref ()
70   return this->equivalent_obj_.in ();
73 ACE_INLINE void
74 CORBA::AbstractBase::_decr_refcount ()
76   this->_remove_ref ();
79 TAO_END_VERSIONED_NAMESPACE_DECL