1
0
Fork 0
mirror of https://github.com/bolero-MURAKAMI/Sprout synced 2025-08-03 12:49:50 +00:00

add sprout/io.hpp

fix complex.hpp include header
fix partial_sum bug
fix range_return bug
This commit is contained in:
bolero-MURAKAMI 2012-04-23 18:37:14 +09:00
parent 9ff67fe582
commit be70a2e4ef
6 changed files with 815 additions and 7 deletions

View file

@ -118,6 +118,18 @@ namespace sprout {
struct is_range_container<sprout::range::range_container<Iterator> >
: public std::true_type
{};
//
// make_range_container
//
template<typename Range>
inline SPROUT_CONSTEXPR sprout::range::range_container<typename sprout::range::lvalue_iterator<Range>::type>
make_range_container(Range&& range) {
return sprout::range::range_container<typename sprout::range::lvalue_iterator<Range>::type>(
sprout::begin(sprout::forward<Range>(range)),
sprout::end(sprout::forward<Range>(range))
);
}
} // namespace range
//

View file

@ -31,7 +31,7 @@ namespace sprout {
typedef typename sprout::range::lvalue_iterator<Range>::type type;
public:
static SPROUT_CONSTEXPR type pack(
typename sprout::container_traits<Range>::iterator found,
typename sprout::range::lvalue_iterator<Range>::type found,
Range&& range
)
{
@ -44,7 +44,7 @@ namespace sprout {
typedef typename sprout::range::lvalue_range<Range>::type type;
public:
static SPROUT_CONSTEXPR type pack(
typename sprout::container_traits<Range>::iterator found,
typename sprout::range::lvalue_iterator<Range>::type found,
Range&& range
)
{
@ -57,7 +57,7 @@ namespace sprout {
typedef typename sprout::range::lvalue_range<Range>::type type;
public:
static SPROUT_CONSTEXPR type pack(
typename sprout::container_traits<Range>::iterator found,
typename sprout::range::lvalue_iterator<Range>::type found,
Range&& range
)
{