diff options
Diffstat (limited to 'TAO/tao/UB_String_Argument_T.cpp')
-rw-r--r-- | TAO/tao/UB_String_Argument_T.cpp | 217 |
1 files changed, 115 insertions, 102 deletions
diff --git a/TAO/tao/UB_String_Argument_T.cpp b/TAO/tao/UB_String_Argument_T.cpp index f9f459b552b..6cb066d2b50 100644 --- a/TAO/tao/UB_String_Argument_T.cpp +++ b/TAO/tao/UB_String_Argument_T.cpp @@ -10,7 +10,7 @@ ACE_RCSID (tao, "$Id$") template<typename S> -TAO::In_UB_String_Argument_T<S>::In_UB_String_Argument_T (S * const & x) +TAO::In_UB_String_Argument_T<S>::In_UB_String_Argument_T (const S * x) : x_ (x) {} @@ -22,18 +22,18 @@ TAO::In_UB_String_Argument_T<S>::marshal (TAO_OutputCDR & cdr) } template<typename S> -CORBA::Boolean -TAO::In_UB_String_Argument_T<S>::demarshal (TAO_InputCDR &) +void +TAO::In_UB_String_Argument_T<S>::interceptor_param (Dynamic::Parameter & p) { - return 1; + p.argument <<= this->x_; + p.mode = CORBA::PARAM_IN; } template<typename S> -void -TAO::In_UB_String_Argument_T<S>::add_to_interceptor (Dynamic::Parameter & p) +CORBA::Boolean +TAO::In_UB_String_Argument_T<S>::interceptor_replace (CORBA::Any & any) { - p.argument <<= this->x_; - p.mode = CORBA::PARAM_IN; + return any >>= this->x_; } // =========================================================== @@ -54,204 +54,217 @@ template<typename S> CORBA::Boolean TAO::Inout_UB_String_Argument_T<S>::demarshal (TAO_InputCDR & cdr) { + CORBA::string_free (this->x_); return cdr >> this->x_; } template<typename S> void -TAO::Inout_UB_String_Argument_T<S>::add_to_interceptor (Dynamic::Parameter & p) +TAO::Inout_UB_String_Argument_T<S>::interceptor_param (Dynamic::Parameter & p) { p.argument <<= this->x_; p.mode = CORBA::PARAM_INOUT; } -// ============================================================== - -template<typename S> -TAO::Out_UB_String_Argument_T<S>::Out_UB_String_Argument_T (S *& x) - : x_ (x) -{} - template<typename S> CORBA::Boolean -TAO::Out_UB_String_Argument_T<S>::marshal (TAO_OutputCDR &) +TAO::Inout_UB_String_Argument_T<S>::interceptor_replace (CORBA::Any & any) { - return 1; + return any >>= this->x_; } -template<typename S> +// ============================================================== + +template<typename S, typename S_out> +TAO::Out_UB_String_Argument_T<S,S_out>::Out_UB_String_Argument_T (S_out & x) + : x_ (x.ptr ()) +{} + +template<typename S, typename S_out> CORBA::Boolean -TAO::Out_UB_String_Argument_T<S>::demarshal (TAO_InputCDR & cdr) +TAO::Out_UB_String_Argument_T<S,S_out>::demarshal (TAO_InputCDR & cdr) { return cdr >> this->x_; } -template<typename S> -void -TAO::Out_UB_String_Argument_T<S>::add_to_interceptor (Dynamic::Parameter &) +// ============================================================ + +template<typename S, typename S_var> +TAO::Ret_UB_String_Argument_T<S,S_var>::Ret_UB_String_Argument_T (void) { } -// ============================================================ +template<typename S, typename S_var> +CORBA::Boolean +TAO::Ret_UB_String_Argument_T<S,S_var>::demarshal (TAO_InputCDR & cdr) +{ + return cdr >> this->x_.out (); +} -template<typename S> -TAO::Ret_UB_String_Argument_T<S>::Ret_UB_String_Argument_T (void) +template<typename S, typename S_var> +void +TAO::Ret_UB_String_Argument_T<S,S_var>::interceptor_result (CORBA::Any * any) { + (*any) <<= this->x_.in (); } -template<typename S> +template<typename S, typename S_var> CORBA::Boolean -TAO::Ret_UB_String_Argument_T<S>::demarshal (TAO_InputCDR & cdr) +TAO::Ret_UB_String_Argument_T<S,S_var>::interceptor_replace (CORBA::Any & any) { - return cdr >> this->x_; + return any >>= this->x_; } -template<typename S> -void -TAO::Ret_UB_String_Argument_T<S>::add_to_interceptor (CORBA::Any * any) +template<typename S, typename S_var> +S * +TAO::Ret_UB_String_Argument_T<S,S_var>::excp (void) { - (*any) <<= this->x_; + return this->x_.ptr (); } -template<typename S> -TAO::Ret_UB_String_Argument_T<S>::operator S * () const +template<typename S, typename S_var> +S * +TAO::Ret_UB_String_Argument_T<S,S_var>::retn (void) { - return this->x_; + return this->x_._retn (); } // ============================================================ -template<typename S> -TAO::In_UB_String_SArgument_T<S>::In_UB_String_SArgument_T (void) +template<typename S, typename S_var> +TAO::In_UB_String_SArgument_T<S,S_var>::In_UB_String_SArgument_T (void) {} -template<typename S> +template<typename S, typename S_var> CORBA::Boolean -TAO::In_UB_String_SArgument_T<S>::marshal (TAO_OutputCDR &) +TAO::In_UB_String_SArgument_T<S,S_var>::demarshal (TAO_InputCDR &cdr) { - return 1; + return cdr >> this->x_.out (); } -template<typename S> -CORBA::Boolean -TAO::In_UB_String_SArgument_T<S>::demarshal (TAO_InputCDR &cdr) +template<typename S, typename S_var> +void +TAO::In_UB_String_SArgument_T<S,S_var>::interceptor_param ( + Dynamic::Parameter & p + ) { - return cdr >> this->x_; + p.argument <<= this->x_.in (); + p.mode = CORBA::PARAM_IN; } -template<typename S> -void -TAO::In_UB_String_SArgument_T<S>::add_to_interceptor (Dynamic::Parameter & p) +template<typename S, typename S_var> +CORBA::Boolean +TAO::In_UB_String_SArgument_T<S,S_var>::interceptor_replace (CORBA::Any & any) { - p.argument <<= this->x_; - p.mode = CORBA::PARAM_IN; + return any >>= this->x_.out (); } -template<typename S> -TAO::In_UB_String_SArgument_T<S>::operator S * () const +template<typename S, typename S_var> +const S * +TAO::In_UB_String_SArgument_T<S,S_var>::arg (void) const { - return this->x_; + return this->x_.in (); } // =========================================================== -template<typename S> -TAO::Inout_UB_String_SArgument_T<S>::Inout_UB_String_SArgument_T (void) +template<typename S, typename S_var> +TAO::Inout_UB_String_SArgument_T<S,S_var>::Inout_UB_String_SArgument_T (void) {} -template<typename S> +template<typename S, typename S_var> CORBA::Boolean -TAO::Inout_UB_String_SArgument_T<S>::marshal (TAO_OutputCDR & cdr) +TAO::Inout_UB_String_SArgument_T<S,S_var>::marshal (TAO_OutputCDR & cdr) { - return cdr << this->x_; + return cdr << this->x_.in (); } -template<typename S> +template<typename S, typename S_var> CORBA::Boolean -TAO::Inout_UB_String_SArgument_T<S>::demarshal (TAO_InputCDR & cdr) +TAO::Inout_UB_String_SArgument_T<S,S_var>::demarshal (TAO_InputCDR & cdr) { - return cdr >> this->x_; + return cdr >> this->x_.out (); } -template<typename S> +template<typename S, typename S_var> void -TAO::Inout_UB_String_SArgument_T<S>::add_to_interceptor ( +TAO::Inout_UB_String_SArgument_T<S,S_var>::interceptor_param ( Dynamic::Parameter & p ) { - p.argument <<= this->x_; + p.argument <<= this->x_.in (); p.mode = CORBA::PARAM_INOUT; } -template<typename S> -TAO::Inout_UB_String_SArgument_T<S>::operator S *& () +template<typename S, typename S_var> +CORBA::Boolean +TAO::Inout_UB_String_SArgument_T<S,S_var>::interceptor_replace (CORBA::Any & any) { - return this->x_; + return any >>= this->x_.out (); +} + +template<typename S, typename S_var> +S *& +TAO::Inout_UB_String_SArgument_T<S,S_var>::arg (void) +{ + return this->x_.inout (); } // ============================================================== -template<typename S> -TAO::Out_UB_String_SArgument_T<S>::Out_UB_String_SArgument_T (void) +template<typename S, typename S_var, typename S_out> +TAO::Out_UB_String_SArgument_T<S,S_var,S_out>::Out_UB_String_SArgument_T ( + void + ) {} -template<typename S> -CORBA::Boolean -TAO::Out_UB_String_SArgument_T<S>::marshal (TAO_OutputCDR &cdr) -{ - return cdr << this->x_; -} - -template<typename S> +template<typename S, typename S_var, typename S_out> CORBA::Boolean -TAO::Out_UB_String_SArgument_T<S>::demarshal (TAO_InputCDR &) -{ - return 1; -} - -template<typename S> -void -TAO::Out_UB_String_SArgument_T<S>::add_to_interceptor (Dynamic::Parameter &) +TAO::Out_UB_String_SArgument_T<S,S_var,S_out>::marshal (TAO_OutputCDR &cdr) { + return cdr << this->x_.in (); } -template<typename S> -TAO::Out_UB_String_SArgument_T<S>::operator S *& () +template<typename S, typename S_var, typename S_out> +S_out +TAO::Out_UB_String_SArgument_T<S,S_var,S_out>::arg (void) { - return this->x_; + return this->x_.out (); } // ============================================================ -template<typename S> -TAO::Ret_UB_String_SArgument_T<S>::Ret_UB_String_SArgument_T (void) +template<typename S, typename S_var> +TAO::Ret_UB_String_SArgument_T<S,S_var>::Ret_UB_String_SArgument_T (void) { } -template<typename S> +template<typename S, typename S_var> CORBA::Boolean -TAO::Ret_UB_String_SArgument_T<S>::marshal (TAO_OutputCDR & cdr) +TAO::Ret_UB_String_SArgument_T<S,S_var>::marshal (TAO_OutputCDR & cdr) { - return cdr << this->x_; + return cdr << this->x_.in (); } -template<typename S> +template<typename S, typename S_var> void -TAO::Ret_UB_String_SArgument_T<S>::add_to_interceptor (CORBA::Any * any) +TAO::Ret_UB_String_SArgument_T<S,S_var>::interceptor_result (CORBA::Any * any) { - (*any) <<= this->x_; + (*any) <<= this->x_.in (); } -template<typename S> -TAO::Ret_UB_String_SArgument_T<S>::operator S * () const +template<typename S, typename S_var> +CORBA::Boolean +TAO::Ret_UB_String_SArgument_T<S,S_var>::interceptor_replace (CORBA::Any & any) { - return this->x_; + return any >>= this->x_.out (); } -template<typename S> -TAO::Ret_UB_String_SArgument_T<S>::operator S *& () +template<typename S, typename S_var> +S *& +TAO::Ret_UB_String_SArgument_T<S,S_var>::arg (void) { - return this->x_; + return this->x_.out (); } #endif /* TAO_UB_STRING_ARGUMENT_T_C */ |