~ubuntu-branches/ubuntu/vivid/emscripten/vivid-proposed

« back to all changes in this revision

Viewing changes to system/include/libcxx/__tuple

  • Committer: Package Import Robot
  • Author(s): Sylvestre Ledru
  • Date: 2014-01-19 14:12:40 UTC
  • mfrom: (4.1.2 sid)
  • Revision ID: package-import@ubuntu.com-20140119141240-nfiw0p8033oitpfz
Tags: 1.9.0~20140119~7dc8c2f-1
* New snapshot release (Closes: #733714)
* Provide sources for javascript and flash. Done in orig-tar.sh
  Available in third_party/websockify/include/web-socket-js/src/
  (Closes: #735903)

Show diffs side-by-side

added added

removed removed

Lines of Context:
27
27
 
28
28
_LIBCPP_BEGIN_NAMESPACE_STD
29
29
 
30
 
template <class _Tp> class _LIBCPP_TYPE_VIS tuple_size;
31
 
 
32
 
template <class _Tp>
33
 
class _LIBCPP_TYPE_VIS tuple_size<const _Tp>
34
 
    : public tuple_size<_Tp> {};
35
 
 
36
 
template <class _Tp>
37
 
class _LIBCPP_TYPE_VIS tuple_size<volatile _Tp>
38
 
    : public tuple_size<_Tp> {};
39
 
 
40
 
template <class _Tp>
41
 
class _LIBCPP_TYPE_VIS tuple_size<const volatile _Tp>
42
 
    : public tuple_size<_Tp> {};
43
 
 
44
 
template <size_t _Ip, class _Tp> class _LIBCPP_TYPE_VIS tuple_element;
 
30
template <class _Tp> class _LIBCPP_TYPE_VIS_ONLY tuple_size;
 
31
 
 
32
template <class _Tp>
 
33
class _LIBCPP_TYPE_VIS_ONLY tuple_size<const _Tp>
 
34
    : public tuple_size<_Tp> {};
 
35
 
 
36
template <class _Tp>
 
37
class _LIBCPP_TYPE_VIS_ONLY tuple_size<volatile _Tp>
 
38
    : public tuple_size<_Tp> {};
 
39
 
 
40
template <class _Tp>
 
41
class _LIBCPP_TYPE_VIS_ONLY tuple_size<const volatile _Tp>
 
42
    : public tuple_size<_Tp> {};
 
43
 
 
44
template <size_t _Ip, class _Tp> class _LIBCPP_TYPE_VIS_ONLY tuple_element;
45
45
 
46
46
template <size_t _Ip, class _Tp>
47
 
class _LIBCPP_TYPE_VIS tuple_element<_Ip, const _Tp>
 
47
class _LIBCPP_TYPE_VIS_ONLY tuple_element<_Ip, const _Tp>
48
48
{
49
49
public:
50
50
    typedef typename add_const<typename tuple_element<_Ip, _Tp>::type>::type type;
51
51
};
52
52
 
53
53
template <size_t _Ip, class _Tp>
54
 
class _LIBCPP_TYPE_VIS tuple_element<_Ip, volatile _Tp>
 
54
class _LIBCPP_TYPE_VIS_ONLY tuple_element<_Ip, volatile _Tp>
55
55
{
56
56
public:
57
57
    typedef typename add_volatile<typename tuple_element<_Ip, _Tp>::type>::type type;
58
58
};
59
59
 
60
60
template <size_t _Ip, class _Tp>
61
 
class _LIBCPP_TYPE_VIS tuple_element<_Ip, const volatile _Tp>
 
61
class _LIBCPP_TYPE_VIS_ONLY tuple_element<_Ip, const volatile _Tp>
62
62
{
63
63
public:
64
64
    typedef typename add_cv<typename tuple_element<_Ip, _Tp>::type>::type type;
65
65
};
66
66
 
67
 
template <class ..._Tp> class _LIBCPP_TYPE_VIS tuple;
68
 
template <class _T1, class _T2> struct _LIBCPP_TYPE_VIS pair;
69
 
template <class _Tp, size_t _Size> struct _LIBCPP_TYPE_VIS array;
 
67
template <class ..._Tp> class _LIBCPP_TYPE_VIS_ONLY tuple;
 
68
template <class _T1, class _T2> struct _LIBCPP_TYPE_VIS_ONLY pair;
 
69
template <class _Tp, size_t _Size> struct _LIBCPP_TYPE_VIS_ONLY array;
70
70
 
71
71
template <class _Tp> struct __tuple_like : false_type {};
72
72
 
154
154
template <class ..._Tp> struct __tuple_types {};
155
155
 
156
156
template <size_t _Ip>
157
 
class _LIBCPP_TYPE_VIS tuple_element<_Ip, __tuple_types<> >
 
157
class _LIBCPP_TYPE_VIS_ONLY tuple_element<_Ip, __tuple_types<> >
158
158
{
159
159
public:
160
160
    static_assert(_Ip == 0, "tuple_element index out of range");
162
162
};
163
163
 
164
164
template <class _Hp, class ..._Tp>
165
 
class _LIBCPP_TYPE_VIS tuple_element<0, __tuple_types<_Hp, _Tp...> >
 
165
class _LIBCPP_TYPE_VIS_ONLY tuple_element<0, __tuple_types<_Hp, _Tp...> >
166
166
{
167
167
public:
168
168
    typedef _Hp type;
169
169
};
170
170
 
171
171
template <size_t _Ip, class _Hp, class ..._Tp>
172
 
class _LIBCPP_TYPE_VIS tuple_element<_Ip, __tuple_types<_Hp, _Tp...> >
 
172
class _LIBCPP_TYPE_VIS_ONLY tuple_element<_Ip, __tuple_types<_Hp, _Tp...> >
173
173
{
174
174
public:
175
175
    typedef typename tuple_element<_Ip-1, __tuple_types<_Tp...> >::type type;
176
176
};
177
177
 
178
178
template <class ..._Tp>
179
 
class _LIBCPP_TYPE_VIS tuple_size<__tuple_types<_Tp...> >
 
179
class _LIBCPP_TYPE_VIS_ONLY tuple_size<__tuple_types<_Tp...> >
180
180
    : public integral_constant<size_t, sizeof...(_Tp)>
181
181
{
182
182
};