Bolt
1.1
C++ template library with support for OpenCL
Main Page
Related Pages
Modules
Namespaces
Classes
Files
File List
File Members
Bolt_Clone_master
include
bolt
cl
pair.h
Go to the documentation of this file.
1
/***************************************************************************
2
* Copyright 2012 - 2013 Advanced Micro Devices, Inc.
3
*
4
* Licensed under the Apache License, Version 2.0 (the "License");
5
* you may not use this file except in compliance with the License.
6
* You may obtain a copy of the License at
7
*
8
* http://www.apache.org/licenses/LICENSE-2.0
9
*
10
* Unless required by applicable law or agreed to in writing, software
11
* distributed under the License is distributed on an "AS IS" BASIS,
12
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13
* See the License for the specific language governing permissions and
14
* limitations under the License.
15
16
***************************************************************************/
17
18
19
24
#pragma once
25
#if !defined( BOLT_CL_PAIR_H )
26
#define BOLT_CL_PAIR_H
27
28
#include <iterator>
29
#include <type_traits>
30
#include <numeric>
31
#include "
bolt/cl/bolt.h
"
32
33
namespace
bolt
34
{
35
36
namespace
cl
37
{
57
template
<
typename
T1,
typename
T2>
58
struct
pair
59
{
62
typedef
T1
first_type
;
63
66
typedef
T2
second_type
;
67
70
first_type
first
;
71
74
second_type
second
;
75
80
pair
(
void
);
81
87
pair
(
const
T1 &x,
const
T2 &y);
88
98
template
<
typename
U1,
typename
U2>
99
pair
(
const
pair<U1,U2>
&p);
100
110
template
<
typename
U1,
typename
U2>
111
pair
(
const
std::pair<U1,U2> &p);
112
113
};
// end pair
114
115
125
template
<
typename
T1,
typename
T2>
126
bool
operator==
(
const
pair<T1,T2>
&x,
const
pair<T1,T2>
&y);
127
128
138
template
<
typename
T1,
typename
T2>
139
bool
operator<(const pair<T1,T2> &x,
const
pair<T1,T2>
&y);
140
141
151
template
<
typename
T1,
typename
T2>
152
bool
operator!=
(
const
pair<T1,T2>
&x,
const
pair<T1,T2>
&y);
153
154
164
template
<
typename
T1,
typename
T2>
165
bool
operator>
(
const
pair<T1,T2>
&x,
const
pair<T1,T2>
&y);
166
167
177
template
<
typename
T1,
typename
T2>
178
bool
operator<=(const pair<T1,T2> &x,
const
pair<T1,T2>
&y);
179
180
190
template
<
typename
T1,
typename
T2>
191
bool
operator>=
(
const
pair<T1,T2>
&x,
const
pair<T1,T2>
&y);
192
193
194
204
template
<
typename
T1,
typename
T2>
205
pair<T1,T2>
make_pair
(T1 x, T2 y);
206
207
215
template
<
int
N,
typename
T>
struct
tuple_element
;
216
217
224
template
<
typename
Pair>
struct
tuple_size
;
225
226
227
233
}
//end cl
234
}
// end bolt
235
236
#include <bolt/cl/detail/pair.inl>
237
238
#endif
Generated on Mon Nov 11 2013 14:17:19 for Bolt by
1.8.3