mirror of
https://github.com/boostorg/tuple.git
synced 2025-07-29 12:17:32 +02:00
Compare commits
13 Commits
boost-1.38
...
svn-branch
Author | SHA1 | Date | |
---|---|---|---|
ec7ea0beb5 | |||
70e04d2965 | |||
451415ebce | |||
e9dc95ae93 | |||
1d1970d81d | |||
4e452cb734 | |||
776be602e5 | |||
a30a7f9604 | |||
62d366fa68 | |||
d08c9bfab1 | |||
19b8004830 | |||
0af5b76442 | |||
defe1c94d6 |
@ -2,14 +2,13 @@
|
||||
<html>
|
||||
<head>
|
||||
<title>Tuple library advanced features</title>
|
||||
</head>
|
||||
|
||||
<body bgcolor="#FFFFFF" text="#000000">
|
||||
|
||||
<IMG SRC="../../../boost.png"
|
||||
ALT="C++ Boost" width="277" height="86">
|
||||
|
||||
</head>
|
||||
|
||||
<body>
|
||||
<h1>Tuple library advanced features</h1>
|
||||
|
||||
The advanced features described in this document are all under namespace <code>::boost::tuples</code>
|
||||
|
@ -213,7 +213,7 @@ struct element_impl<0, T, true /* IsConst */>
|
||||
|
||||
|
||||
template<int N, class T>
|
||||
struct element:
|
||||
struct element:
|
||||
public detail::element_impl<N, T, ::boost::is_const<T>::value>
|
||||
{
|
||||
};
|
||||
@ -488,11 +488,20 @@ struct length<tuple<> > {
|
||||
BOOST_STATIC_CONSTANT(int, value = 0);
|
||||
};
|
||||
|
||||
template<>
|
||||
struct length<tuple<> const> {
|
||||
BOOST_STATIC_CONSTANT(int, value = 0);
|
||||
};
|
||||
|
||||
template<>
|
||||
struct length<null_type> {
|
||||
BOOST_STATIC_CONSTANT(int, value = 0);
|
||||
};
|
||||
|
||||
template<>
|
||||
struct length<null_type const> {
|
||||
BOOST_STATIC_CONSTANT(int, value = 0);
|
||||
};
|
||||
|
||||
namespace detail {
|
||||
|
||||
|
@ -69,8 +69,8 @@ inline bool neq<null_type,null_type>(const null_type&, const null_type&) { retur
|
||||
template<class T1, class T2>
|
||||
inline bool lt(const T1& lhs, const T2& rhs) {
|
||||
return lhs.get_head() < rhs.get_head() ||
|
||||
!(rhs.get_head() < lhs.get_head()) &&
|
||||
lt(lhs.get_tail(), rhs.get_tail());
|
||||
( !(rhs.get_head() < lhs.get_head()) &&
|
||||
lt(lhs.get_tail(), rhs.get_tail()));
|
||||
}
|
||||
template<>
|
||||
inline bool lt<null_type,null_type>(const null_type&, const null_type&) { return false; }
|
||||
@ -78,8 +78,8 @@ inline bool lt<null_type,null_type>(const null_type&, const null_type&) { return
|
||||
template<class T1, class T2>
|
||||
inline bool gt(const T1& lhs, const T2& rhs) {
|
||||
return lhs.get_head() > rhs.get_head() ||
|
||||
!(rhs.get_head() > lhs.get_head()) &&
|
||||
gt(lhs.get_tail(), rhs.get_tail());
|
||||
( !(rhs.get_head() > lhs.get_head()) &&
|
||||
gt(lhs.get_tail(), rhs.get_tail()));
|
||||
}
|
||||
template<>
|
||||
inline bool gt<null_type,null_type>(const null_type&, const null_type&) { return false; }
|
||||
|
Reference in New Issue
Block a user