Sync from trunk (except adapt class)

[SVN r56714]
This commit is contained in:
Joel de Guzman
2009-10-11 16:12:54 +00:00
parent 7615b492af
commit 46fc256c2f
257 changed files with 13732 additions and 16068 deletions

View File

@ -28,48 +28,48 @@ BOOST_FUSION_ADAPT_STRUCT(
(double, double_)
);
using namespace boost::fusion;
namespace fusion = boost::fusion;
template <typename Sequence>
bool check_size(Sequence& s, int seqsize)
bool check_size(Sequence const& s, int seqsize)
{
return size(s) == seqsize;
return fusion::size(s) == seqsize;
}
template <typename Sequence, typename T>
bool check_deref_begin(Sequence& s, T val)
bool check_deref_begin(Sequence const& s, T val)
{
return deref(begin(s)) == val;
return fusion::deref(fusion::begin(s)) == val;
}
template <typename Sequence, typename T>
bool check_deref_next(Sequence& s, T val)
bool check_deref_next(Sequence const& s, T val)
{
return deref(next(begin(s))) == val;
return fusion::deref(fusion::next(fusion::begin(s))) == val;
}
template <int N, typename Sequence, typename T>
bool check_deref_advance(Sequence& s, T val)
bool check_deref_advance(Sequence const& s, T val)
{
return deref(advance_c<N>(begin(s))) == val;
return fusion::deref(fusion::advance_c<N>(fusion::begin(s))) == val;
}
template <typename Sequence, typename T>
bool check_deref_prior(Sequence& s, T val)
bool check_deref_prior(Sequence const& s, T val)
{
return deref(prior(end(s))) == val;
return fusion::deref(fusion::prior(fusion::end(s))) == val;
}
template <int N, typename Sequence, typename T>
bool check_at(Sequence& s, T val)
bool check_at(Sequence const& s, T val)
{
return at_c<N>(s) == val;
return fusion::at_c<N>(s) == val;
}
template <typename Sequence>
bool check_distance(Sequence& s, int val)
bool check_distance(Sequence const& s, int val)
{
return distance(begin(s), end(s)) == val;
return fusion::distance(fusion::begin(s), fusion::end(s)) == val;
}
int main()
@ -79,6 +79,8 @@ int main()
t.string_ = "test";
t.double_ = 2.0;
using fusion::as_nview;
// check size()
{
BOOST_TEST(check_size(as_nview<0>(t), 1));

View File

@ -0,0 +1,16 @@
#include <boost/mpl/vector.hpp>
#include <boost/fusion/support.hpp>
typedef boost::fusion::traits::deduce_sequence <
boost::mpl::vector<int, char>
>::type seq1_t;
typedef boost::fusion::traits::deduce_sequence <
boost::fusion::vector<int, char>
>::type seq2_t;