fix index_range implementation

This commit is contained in:
bolero-MURAKAMI 2013-03-31 15:14:10 +09:00
parent 331aaa3559
commit 049d4592c2
78 changed files with 178 additions and 225 deletions

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/iterator/clamp_iterator.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
@ -52,7 +53,7 @@ namespace sprout {
{
return sprout::fixed::detail::clamp_range_copy_impl_ra(
first, last, result, low, high, comp,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first, last)

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
#include <sprout/pit/pit.hpp>
@ -43,7 +44,7 @@ namespace sprout {
{
return sprout::fixed::detail::copy_impl_ra(
first, last, result,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first, last)

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
#include <sprout/pit/pit.hpp>
@ -43,7 +44,7 @@ namespace sprout {
{
return sprout::fixed::detail::copy_backward_impl_ra(
first, last, result,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_end_offset(result),
sprout::size(result),
sprout::distance(first, last)

View file

@ -39,7 +39,7 @@ namespace sprout {
fill(Container const& cont, T const& value) {
return sprout::fixed::detail::fill_impl(
cont, value,
sprout::index_range<0, sprout::container_traits<Container>::static_size>::make(),
sprout::container_indexes<Container>::make(),
sprout::internal_begin_offset(cont),
sprout::size(cont)
);

View file

@ -5,6 +5,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/value_iterator.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
#include <sprout/algorithm/fixed/fill.hpp>
@ -21,7 +22,7 @@ namespace sprout {
fill_n(Container const& cont, Size n, T const& value) {
return sprout::fixed::detail::fill_impl(
cont, value,
sprout::index_range<0, sprout::container_traits<Container>::static_size>::make(),
sprout::container_indexes<Container>::make(),
sprout::internal_begin_offset(cont),
n
);

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/iterator/replace_iterator.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
@ -47,7 +48,7 @@ namespace sprout {
return sprout::fixed::detail::replace_copy_impl_ra(
first, last,
result, old_value, new_value,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first, last)

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/iterator/replace_if_iterator.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
@ -46,7 +47,7 @@ namespace sprout {
return sprout::fixed::detail::replace_copy_if_impl_ra(
first, last,
result, pred, new_value,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first, last)

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/iterator/reverse_iterator.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
@ -44,7 +45,7 @@ namespace sprout {
{
return sprout::fixed::detail::reverse_copy_impl_ra(
first, last, result,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first, last)

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/iterator/joint_iterator.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
@ -50,7 +51,7 @@ namespace sprout {
return sprout::fixed::detail::rotate_copy_impl_ra(
first, middle, last,
result,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first, last)

View file

@ -8,6 +8,7 @@
#include <sprout/pit/pit.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/utility/forward.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
@ -95,7 +96,7 @@ namespace sprout {
shuffle(Container const& cont, UniformRandomNumberGenerator&& g) {
return sprout::fixed::detail::shuffle_impl(
cont,
sprout::index_range<0, sprout::container_traits<Container>::static_size>::make(),
sprout::container_indexes<Container>::make(),
sprout::forward<UniformRandomNumberGenerator>(g),
sprout::internal_begin_offset(cont),
sprout::size(cont)

View file

@ -9,6 +9,7 @@
#include <sprout/pit/pit.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/utility/forward.hpp>
#include <sprout/utility/pair/pair.hpp>
@ -110,7 +111,7 @@ namespace sprout {
shuffle_result(Container const& cont, UniformRandomNumberGenerator&& g) {
return sprout::fixed::detail::shuffle_result_impl(
cont,
sprout::index_range<0, sprout::container_traits<Container>::static_size>::make(),
sprout::container_indexes<Container>::make(),
sprout::forward<UniformRandomNumberGenerator>(g),
sprout::internal_begin_offset(cont),
sprout::size(cont)

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/algorithm/fixed/result_of.hpp>
#include <sprout/pit/pit.hpp>
@ -53,7 +54,7 @@ namespace sprout {
first, last,
result,
pos1, pos2,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first, last)

View file

@ -7,6 +7,7 @@
#include <sprout/index_tuple.hpp>
#include <sprout/container/traits.hpp>
#include <sprout/container/functions.hpp>
#include <sprout/container/indexes.hpp>
#include <sprout/iterator/operation.hpp>
#include <sprout/iterator/transform_iterator.hpp>
#include <sprout/iterator/type_traits/common.hpp>
@ -47,7 +48,7 @@ namespace sprout {
return sprout::fixed::detail::transform_impl_ra(
first, last,
result, op,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first, last)
@ -165,7 +166,7 @@ namespace sprout {
return sprout::fixed::detail::transform_impl_ra(
first1, last1, first2,
result, op,
sprout::index_range<0, sprout::container_traits<Result>::static_size>::make(),
sprout::container_indexes<Result>::make(),
sprout::internal_begin_offset(result),
sprout::size(result),
sprout::distance(first1, last1)