2 * @file Servant_var.inl
4 * @author Jody Hagins <jody@atdesk.com>
5 * @author Carlos O'Ryan <coryan@uci.edu>
10 template<class SERVANT> ACE_INLINE SERVANT *
11 Servant_var<SERVANT>::duplicate (SERVANT *servant)
18 template<class SERVANT> ACE_INLINE
19 Servant_var<SERVANT>::Servant_var (SERVANT *s)
24 template<class SERVANT> ACE_INLINE
25 Servant_var<SERVANT>::Servant_var (const Servant_var<SERVANT> &rhs)
26 : ptr_ (Servant_var<SERVANT>::duplicate (rhs.ptr_))
30 template<class SERVANT> ACE_INLINE Servant_var<SERVANT>&
31 Servant_var<SERVANT>::operator= (const Servant_var<SERVANT> &rhs)
33 Servant_var<SERVANT> tmp (rhs);
34 std::swap (this->ptr_, tmp.ptr_);
38 template<class SERVANT> ACE_INLINE Servant_var<SERVANT>&
39 Servant_var<SERVANT>::operator= (SERVANT *rhs)
41 Servant_var<SERVANT> tmp (rhs);
42 std::swap (this->ptr_, tmp.ptr_);
46 template<class SERVANT> ACE_INLINE SERVANT*
47 Servant_var<SERVANT>::operator-> ()
52 template<class SERVANT> ACE_INLINE const SERVANT*
53 Servant_var<SERVANT>::operator-> () const
58 template<class SERVANT> ACE_INLINE
59 Servant_var<SERVANT>::operator SERVANT *()
64 template<class SERVANT> ACE_INLINE
65 Servant_var<SERVANT>::operator const SERVANT * () const
70 template<class SERVANT> ACE_INLINE SERVANT *
71 Servant_var<SERVANT>::in () const
76 template<class SERVANT> ACE_INLINE SERVANT *&
77 Servant_var<SERVANT>::out ()
79 Servant_var<SERVANT> tmp;
80 std::swap (tmp.ptr_, this->ptr_);
85 template<class SERVANT> ACE_INLINE SERVANT *&
86 Servant_var<SERVANT>::inout ()