Revert "Minor modernization of DynamicAny code"
[ACE_TAO.git] / TAO / tao / PortableServer / Basic_SArguments.h
blobf916b637c00daa20707a7ff7fe8c7c33f5accc12
1 // -*- C++ -*-
3 //=============================================================================
4 /**
5 * @file Basic_SArguments.h
7 * @authors Jeff Parsons and Carlos O'Ryan
8 */
9 //=============================================================================
11 #ifndef TAO_BASIC_SARGUMENTS_H
12 #define TAO_BASIC_SARGUMENTS_H
14 #include /**/ "ace/pre.h"
16 #include "tao/PortableServer/portableserver_export.h"
18 #if !defined (ACE_LACKS_PRAGMA_ONCE)
19 # pragma once
20 #endif /* ACE_LACKS_PRAGMA_ONCE */
22 #include "tao/PortableServer/Basic_SArgument_T.h"
23 #include "tao/PortableServer/SArg_Traits_T.h"
24 #include "tao/Any_Insert_Policy_T.h"
26 TAO_BEGIN_VERSIONED_NAMESPACE_DECL
28 namespace TAO
30 /**
32 * @brief Specialization for void return type.
35 template<>
36 class TAO_PortableServer_Export SArg_Traits<void>
38 public:
39 typedef void ret_type;
40 typedef RetArgument ret_val;
43 /**
45 * @brief Specializations for basic skeleton arg types,
46 * except (w)char/boolean/octet.
50 template<>
51 class TAO_PortableServer_Export SArg_Traits<CORBA::Short>
52 : public
53 Basic_SArg_Traits_T<
54 CORBA::Short,
55 TAO::Any_Insert_Policy_Stream>
59 template<>
60 class TAO_PortableServer_Export SArg_Traits<CORBA::Long>
61 : public
62 Basic_SArg_Traits_T<
63 CORBA::Long,
64 TAO::Any_Insert_Policy_Stream>
68 template<>
69 class TAO_PortableServer_Export SArg_Traits<CORBA::UShort>
70 : public
71 Basic_SArg_Traits_T<
72 CORBA::UShort,
73 TAO::Any_Insert_Policy_Stream>
77 template<>
78 class TAO_PortableServer_Export SArg_Traits<CORBA::ULong>
79 : public
80 Basic_SArg_Traits_T<
81 CORBA::ULong,
82 TAO::Any_Insert_Policy_Stream>
86 template<>
87 class TAO_PortableServer_Export SArg_Traits<CORBA::Float>
88 : public
89 Basic_SArg_Traits_T<
90 CORBA::Float,
91 TAO::Any_Insert_Policy_Stream>
95 template<>
96 class TAO_PortableServer_Export SArg_Traits<CORBA::Double>
97 : public
98 Basic_SArg_Traits_T<
99 CORBA::Double,
100 TAO::Any_Insert_Policy_Stream>
104 template<>
105 class TAO_PortableServer_Export SArg_Traits<CORBA::LongLong>
106 : public
107 Basic_SArg_Traits_T<
108 CORBA::LongLong,
109 TAO::Any_Insert_Policy_Stream>
113 template<>
114 class TAO_PortableServer_Export SArg_Traits<CORBA::ULongLong>
115 : public
116 Basic_SArg_Traits_T<
117 CORBA::ULongLong,
118 TAO::Any_Insert_Policy_Stream>
122 template<>
123 class TAO_PortableServer_Export SArg_Traits<CORBA::LongDouble>
124 : public
125 Basic_SArg_Traits_T<
126 CORBA::LongDouble,
127 TAO::Any_Insert_Policy_Stream>
131 template<>
132 class TAO_PortableServer_Export SArg_Traits<std::string>
133 : public Basic_SArg_Traits_T<
134 std::string,
135 TAO::Any_Insert_Policy_Stream>
139 #if !defined(ACE_LACKS_STD_WSTRING)
140 template<>
141 class TAO_PortableServer_Export SArg_Traits<std::wstring>
142 : public Basic_SArg_Traits_T<
143 std::wstring,
144 TAO::Any_Insert_Policy_Stream>
147 #endif
150 TAO_END_VERSIONED_NAMESPACE_DECL
152 #include /**/ "ace/post.h"
154 #endif /* TAO_BASIC_SARGUMENTS_H */