fusion: merge of associative iterators/views and the new fold interface

[SVN r58618]
This commit is contained in:
Christopher Schmidt
2010-01-01 22:00:21 +00:00
parent b605617c4f
commit cda74605fc
379 changed files with 28481 additions and 2185 deletions
+2 -2
View File
@@ -250,14 +250,14 @@ namespace
template<typename Lhs, typename Rhs>
struct result
{
typedef Rhs type;
typedef Lhs type;
};
template<typename Lhs, typename Rhs>
typename result<Lhs,Rhs>::type
operator()(const Lhs& lhs, const Rhs& rhs) const
{
return rhs + boost::fusion::at_c<0>(lhs) * boost::fusion::at_c<1>(lhs);
return lhs + boost::fusion::at_c<0>(rhs) * boost::fusion::at_c<1>(rhs);
}
};
+2 -2
View File
@@ -121,14 +121,14 @@ namespace
template<typename Lhs, typename Rhs>
struct result<poly_combine(Lhs, Rhs)>
: boost::remove_reference<Rhs>
: boost::remove_reference<Lhs>
{};
template<typename Lhs, typename Rhs>
typename result<poly_combine(Lhs,Rhs)>::type
operator()(const Lhs& lhs, const Rhs& rhs) const
{
return rhs + boost::fusion::at_c<0>(lhs) * boost::fusion::at_c<1>(lhs);
return lhs + boost::fusion::at_c<0>(rhs) * boost::fusion::at_c<1>(rhs);
}
};