18 #if !defined( BOLT_CL_REDUCE_BY_KEY_H )
19 #define BOLT_CL_REDUCE_BY_KEY_H
85 typename InputIterator1,
86 typename InputIterator2,
87 typename OutputIterator1,
88 typename OutputIterator2>
89 pair<OutputIterator1, OutputIterator2>
92 InputIterator1 keys_first,
93 InputIterator1 keys_last,
94 InputIterator2 values_first,
95 OutputIterator1 keys_output,
96 OutputIterator2 values_output,
97 const std::string& user_code=
"" );
100 typename InputIterator1,
101 typename InputIterator2,
102 typename OutputIterator1,
103 typename OutputIterator2>
104 pair<OutputIterator1, OutputIterator2>
106 InputIterator1 keys_first,
107 InputIterator1 keys_last,
108 InputIterator2 values_first,
109 OutputIterator1 keys_output,
110 OutputIterator2 values_output,
111 const std::string& user_code=
"" );
156 typename InputIterator1,
157 typename InputIterator2,
158 typename OutputIterator1,
159 typename OutputIterator2,
160 typename BinaryPredicate>
161 pair<OutputIterator1, OutputIterator2>
164 InputIterator1 keys_first,
165 InputIterator1 keys_last,
166 InputIterator2 values_first,
167 OutputIterator1 keys_output,
168 OutputIterator2 values_output,
169 BinaryPredicate binary_pred,
170 const std::string& user_code=
"" );
173 typename InputIterator1,
174 typename InputIterator2,
175 typename OutputIterator1,
176 typename OutputIterator2,
177 typename BinaryPredicate>
178 pair<OutputIterator1, OutputIterator2>
180 InputIterator1 keys_first,
181 InputIterator1 keys_last,
182 InputIterator2 values_first,
183 OutputIterator1 keys_output,
184 OutputIterator2 values_output,
185 BinaryPredicate binary_pred,
186 const std::string& user_code=
"" );
233 typename InputIterator1,
234 typename InputIterator2,
235 typename OutputIterator1,
236 typename OutputIterator2,
237 typename BinaryPredicate,
238 typename BinaryFunction>
239 pair<OutputIterator1, OutputIterator2>
242 InputIterator1 keys_first,
243 InputIterator1 keys_last,
244 InputIterator2 values_first,
245 OutputIterator1 keys_output,
246 OutputIterator2 values_output,
247 BinaryPredicate binary_pred,
248 BinaryFunction binary_op,
249 const std::string& user_code=
"" );
252 typename InputIterator1,
253 typename InputIterator2,
254 typename OutputIterator1,
255 typename OutputIterator2,
256 typename BinaryPredicate,
257 typename BinaryFunction>
258 pair<OutputIterator1, OutputIterator2>
260 InputIterator1 keys_first,
261 InputIterator1 keys_last,
262 InputIterator2 values_first,
263 OutputIterator1 keys_output,
264 OutputIterator2 values_output,
265 BinaryPredicate binary_pred,
266 BinaryFunction binary_op,
267 const std::string& user_code=
"" );
274 #include <bolt/cl/detail/reduce_by_key.inl>