GB 85, GB 87
git-svn-id: https://llvm.org/svn/llvm-project/libcxx/trunk@111546 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
2794e6cca5
commit
e3263b4dbe
@ -103,12 +103,6 @@ template <class... Types, class Alloc>
|
|||||||
template <class... Types>
|
template <class... Types>
|
||||||
void swap(tuple<Types...>& x, tuple<Types...>& y);
|
void swap(tuple<Types...>& x, tuple<Types...>& y);
|
||||||
|
|
||||||
template <class InputIterator>
|
|
||||||
InputIterator begin(const std::tuple<InputIterator, InputIterator>& t);
|
|
||||||
|
|
||||||
template <class InputIterator>
|
|
||||||
InputIterator end(const std::tuple<InputIterator, InputIterator>& t);
|
|
||||||
|
|
||||||
} // std
|
} // std
|
||||||
|
|
||||||
*/
|
*/
|
||||||
@ -793,22 +787,6 @@ template <class ..._Tp, class _Alloc>
|
|||||||
struct uses_allocator<tuple<_Tp...>, _Alloc>
|
struct uses_allocator<tuple<_Tp...>, _Alloc>
|
||||||
: true_type {};
|
: true_type {};
|
||||||
|
|
||||||
template <class _InputIterator>
|
|
||||||
inline
|
|
||||||
_InputIterator
|
|
||||||
begin(const std::tuple<_InputIterator, _InputIterator>& __t)
|
|
||||||
{
|
|
||||||
return get<0>(__t);
|
|
||||||
}
|
|
||||||
|
|
||||||
template <class _InputIterator>
|
|
||||||
inline
|
|
||||||
_InputIterator
|
|
||||||
end(const std::tuple<_InputIterator, _InputIterator>& __t)
|
|
||||||
{
|
|
||||||
return get<1>(__t);
|
|
||||||
}
|
|
||||||
|
|
||||||
template <class _T1, class _T2>
|
template <class _T1, class _T2>
|
||||||
template <class... _Args1, class... _Args2, size_t ..._I1, size_t ..._I2>
|
template <class... _Args1, class... _Args2, size_t ..._I1, size_t ..._I2>
|
||||||
inline _LIBCPP_INLINE_VISIBILITY
|
inline _LIBCPP_INLINE_VISIBILITY
|
||||||
|
@ -100,11 +100,6 @@ template<size_t I, class T1, class T2>
|
|||||||
const typename const tuple_element<I, std::pair<T1, T2> >::type&
|
const typename const tuple_element<I, std::pair<T1, T2> >::type&
|
||||||
get(const std::pair<T1, T2>&);
|
get(const std::pair<T1, T2>&);
|
||||||
|
|
||||||
template <class InputIterator>
|
|
||||||
InputIterator begin(const std::pair<InputIterator, InputIterator>& p);
|
|
||||||
template <class InputIterator>
|
|
||||||
InputIterator end(const std::pair<InputIterator, InputIterator>& p);
|
|
||||||
|
|
||||||
} // std
|
} // std
|
||||||
|
|
||||||
*/
|
*/
|
||||||
@ -462,22 +457,6 @@ get(const pair<_T1, _T2>& __p)
|
|||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
template <class _InputIterator>
|
|
||||||
_LIBCPP_INLINE_VISIBILITY inline
|
|
||||||
_InputIterator
|
|
||||||
begin(const pair<_InputIterator, _InputIterator>& __p)
|
|
||||||
{
|
|
||||||
return __p.first;
|
|
||||||
}
|
|
||||||
|
|
||||||
template <class _InputIterator>
|
|
||||||
_LIBCPP_INLINE_VISIBILITY inline
|
|
||||||
_InputIterator
|
|
||||||
end(const pair<_InputIterator, _InputIterator>& __p)
|
|
||||||
{
|
|
||||||
return __p.second;
|
|
||||||
}
|
|
||||||
|
|
||||||
_LIBCPP_END_NAMESPACE_STD
|
_LIBCPP_END_NAMESPACE_STD
|
||||||
|
|
||||||
#endif // _LIBCPP_UTILITY
|
#endif // _LIBCPP_UTILITY
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
//===----------------------------------------------------------------------===//
|
|
||||||
//
|
|
||||||
// The LLVM Compiler Infrastructure
|
|
||||||
//
|
|
||||||
// This file is distributed under the University of Illinois Open Source
|
|
||||||
// License. See LICENSE.TXT for details.
|
|
||||||
//
|
|
||||||
//===----------------------------------------------------------------------===//
|
|
||||||
|
|
||||||
// <tuple>
|
|
||||||
|
|
||||||
// template <class... Types> class tuple;
|
|
||||||
|
|
||||||
// template <class InputIterator>
|
|
||||||
// InputIterator begin(const tuple<InputIterator, InputIterator>& t);
|
|
||||||
|
|
||||||
// template <class InputIterator>
|
|
||||||
// InputIterator end(const tuple<InputIterator, InputIterator>& t);
|
|
||||||
|
|
||||||
#include <tuple>
|
|
||||||
#include <iterator>
|
|
||||||
#include <cassert>
|
|
||||||
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
{
|
|
||||||
typedef std::tuple<int*, int*> T;
|
|
||||||
int array[5] = {0, 1, 2, 3, 4};
|
|
||||||
const T t(std::begin(array), std::end(array));
|
|
||||||
assert(begin(t) == std::begin(array));
|
|
||||||
assert(end(t) == std::end(array));
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
//===----------------------------------------------------------------------===//
|
|
||||||
//
|
|
||||||
// The LLVM Compiler Infrastructure
|
|
||||||
//
|
|
||||||
// This file is distributed under the University of Illinois Open Source
|
|
||||||
// License. See LICENSE.TXT for details.
|
|
||||||
//
|
|
||||||
//===----------------------------------------------------------------------===//
|
|
||||||
|
|
||||||
// <utility>
|
|
||||||
|
|
||||||
// template <class T1, class T2> struct pair
|
|
||||||
|
|
||||||
// template <class InputIterator>
|
|
||||||
// InputIterator
|
|
||||||
// begin(const std::pair<InputIterator, InputIterator>& p);
|
|
||||||
|
|
||||||
#include <utility>
|
|
||||||
#include <iterator>
|
|
||||||
#include <cassert>
|
|
||||||
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
{
|
|
||||||
typedef std::pair<int*, int*> P;
|
|
||||||
int a[3] = {0};
|
|
||||||
P p(std::begin(a), std::end(a));
|
|
||||||
assert(std::begin(p) == a);
|
|
||||||
}
|
|
||||||
}
|
|
@ -1,30 +0,0 @@
|
|||||||
//===----------------------------------------------------------------------===//
|
|
||||||
//
|
|
||||||
// The LLVM Compiler Infrastructure
|
|
||||||
//
|
|
||||||
// This file is distributed under the University of Illinois Open Source
|
|
||||||
// License. See LICENSE.TXT for details.
|
|
||||||
//
|
|
||||||
//===----------------------------------------------------------------------===//
|
|
||||||
|
|
||||||
// <utility>
|
|
||||||
|
|
||||||
// template <class T1, class T2> struct pair
|
|
||||||
|
|
||||||
// template <class InputIterator>
|
|
||||||
// InputIterator
|
|
||||||
// end(const std::pair<InputIterator, InputIterator>& p);
|
|
||||||
|
|
||||||
#include <utility>
|
|
||||||
#include <iterator>
|
|
||||||
#include <cassert>
|
|
||||||
|
|
||||||
int main()
|
|
||||||
{
|
|
||||||
{
|
|
||||||
typedef std::pair<int*, int*> P;
|
|
||||||
int a[3] = {0};
|
|
||||||
P p(std::begin(a), std::end(a));
|
|
||||||
assert(std::end(p) == a+3);
|
|
||||||
}
|
|
||||||
}
|
|
Loading…
x
Reference in New Issue
Block a user