BDE 4.14.0 Production release
Loading...
Searching...
No Matches
s_baltst_testsequenceutil.h
Go to the documentation of this file.
1/// @file s_baltst_testsequenceutil.h
2///
3/// The content of this file has been pre-processed for Doxygen.
4///
5
6
7// s_baltst_testsequenceutil.h -*-C++-*-
8#ifndef INCLUDED_S_BALTST_TESTSEQUENCEUTIL
9#define INCLUDED_S_BALTST_TESTSEQUENCEUTIL
10
11#include <bsls_ident.h>
12BSLS_IDENT("$Id: $")
13
14/// @defgroup s_baltst_testsequenceutil s_baltst_testsequenceutil
15/// @brief Provide non-primitive operations on `s_baltst::TestSequence`.
16/// @addtogroup Standalones
17/// @{
18/// @addtogroup s_baltst
19/// @{
20/// @addtogroup s_baltst_testsequenceutil
21/// @{
22///
23/// <h1> Outline </h1>
24/// * <a href="#s_baltst_testsequenceutil-purpose"> Purpose</a>
25/// * <a href="#s_baltst_testsequenceutil-classes"> Classes </a>
26///
27/// # Purpose {#s_baltst_testsequenceutil-purpose}
28/// Provide non-primitive operations on `s_baltst::TestSequence`.
29///
30/// # Classes {#s_baltst_testsequenceutil-classes}
31///
32/// - s_baltst::TestSequenceUtil: utilities for test sequences
33/// @}
34/** @} */
35/** @} */
36
37/** @addtogroup Standalones
38 * @{
39 */
40/** @addtogroup s_baltst
41 * @{
42 */
43/** @addtogroup s_baltst_testsequenceutil
44 * @{
45 */
46/
50
51
52namespace s_baltst {
53
54 // =======================
55 // struct TestSequenceUtil
56 // =======================
57
59 // CLASS METHODS
60 template <class ATTRIBUTE_0, class TYPE_0>
62 const ATTRIBUTE_0&,
63 const TYPE_0& value);
64
65 template <class ATTRIBUTE_0, class ATTRIBUTE_1, class TYPE_0, class TYPE_1>
68 generate(const ATTRIBUTE_0&,
69 const ATTRIBUTE_1&,
70 const TYPE_0& value0,
71 const TYPE_1& value1);
72
73 template <class ATTRIBUTE_0,
74 class ATTRIBUTE_1,
75 class ATTRIBUTE_2,
76 class TYPE_0,
77 class TYPE_1,
78 class TYPE_2>
82 generate(const ATTRIBUTE_0&,
83 const ATTRIBUTE_1&,
84 const ATTRIBUTE_2&,
85 const TYPE_0& value0,
86 const TYPE_1& value1,
87 const TYPE_2& value2);
88
89 template <class ATTRIBUTE_0, class TYPE_0>
90 static
92 generatePlaceHolder(const ATTRIBUTE_0&, const TestPlaceHolder<TYPE_0>&);
93
94 template <class ATTRIBUTE_0, class ATTRIBUTE_1, class TYPE_0, class TYPE_1>
95 static TestPlaceHolder<
98 generatePlaceHolder(const ATTRIBUTE_0&,
99 const ATTRIBUTE_1&,
102
103 template <class ATTRIBUTE_0,
104 class ATTRIBUTE_1,
105 class ATTRIBUTE_2,
106 class TYPE_0,
107 class TYPE_1,
108 class TYPE_2>
109 static TestPlaceHolder<
113 generatePlaceHolder(const ATTRIBUTE_0&,
114 const ATTRIBUTE_1&,
115 const ATTRIBUTE_2&,
119};
120
121// ============================================================================
122// INLINE DEFINITIONS
123// ============================================================================
124
125 // ----------------------
126 // class TestSequenceUtil
127 // ----------------------
128
129// CLASS METHODS
130template <class ATTRIBUTE_0, class TYPE_0>
132TestSequenceUtil::generate(const ATTRIBUTE_0&, const TYPE_0& value)
133{
135
136 return TestSequence<Attribute0>(value);
137}
138
139template <class ATTRIBUTE_0, class ATTRIBUTE_1, class TYPE_0, class TYPE_1>
142TestSequenceUtil::generate(const ATTRIBUTE_0&,
143 const ATTRIBUTE_1&,
144 const TYPE_0& value0,
145 const TYPE_1& value1)
146{
149
150 return TestSequence<Attribute0, Attribute1>(value0, value1);
151}
152
153template <class ATTRIBUTE_0,
154 class ATTRIBUTE_1,
155 class ATTRIBUTE_2,
156 class TYPE_0,
157 class TYPE_1,
158 class TYPE_2>
162TestSequenceUtil::generate(const ATTRIBUTE_0&,
163 const ATTRIBUTE_1&,
164 const ATTRIBUTE_2&,
165 const TYPE_0& value0,
166 const TYPE_1& value1,
167 const TYPE_2& value2)
168{
172
174 value1,
175 value2);
176}
177
178template <class ATTRIBUTE_0, class TYPE_0>
182{
184 typedef TestSequence<Attribute0> Sequence;
185
187}
188
189template <class ATTRIBUTE_0, class ATTRIBUTE_1, class TYPE_0, class TYPE_1>
193 const ATTRIBUTE_1&,
196{
200
202}
203
204template <class ATTRIBUTE_0,
205 class ATTRIBUTE_1,
206 class ATTRIBUTE_2,
207 class TYPE_0,
208 class TYPE_1,
209 class TYPE_2>
214 const ATTRIBUTE_1&,
215 const ATTRIBUTE_2&,
219{
224
226}
227
228} // close package namespace
229
230
231#endif // INCLUDED_S_BALTST_TESTSEQUENCEUTIL
232
233// ----------------------------------------------------------------------------
234// Copyright 2021 Bloomberg Finance L.P.
235//
236// Licensed under the Apache License, Version 2.0 (the "License");
237// you may not use this file except in compliance with the License.
238// You may obtain a copy of the License at
239//
240// http://www.apache.org/licenses/LICENSE-2.0
241//
242// Unless required by applicable law or agreed to in writing, software
243// distributed under the License is distributed on an "AS IS" BASIS,
244// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
245// See the License for the specific language governing permissions and
246// limitations under the License.
247// ----------------------------- END-OF-FILE ----------------------------------
248
249/** @} */
250/** @} */
251/** @} */
Definition s_baltst_testplaceholder.h:63
Definition s_baltst_testsequence.h:127
Definition s_baltst_testattribute.h:138
#define BSLS_IDENT(str)
Definition bsls_ident.h:195
Definition s_baltst_address.h:66
Definition s_baltst_testsequenceutil.h:58
static TestPlaceHolder< TestSequence< TypedTestAttribute< TYPE_0, ATTRIBUTE_0 > > > generatePlaceHolder(const ATTRIBUTE_0 &, const TestPlaceHolder< TYPE_0 > &)
Definition s_baltst_testsequenceutil.h:180
static TestSequence< TypedTestAttribute< TYPE_0, ATTRIBUTE_0 > > generate(const ATTRIBUTE_0 &, const TYPE_0 &value)
Definition s_baltst_testsequenceutil.h:132