mirror of
https://github.com/bolero-MURAKAMI/Sprout.git
synced 2025-10-19 13:49:23 +00:00
[desuructive changes] container traits new interface [破壊的変更]
This commit is contained in:
parent
52a2178ac1
commit
ad60c8c530
356 changed files with 3183 additions and 3251 deletions
|
@ -2,8 +2,8 @@
|
|||
#define SPROUT_NUMERIC_FIT_ADJACENT_DIFFERENCE_HPP
|
||||
|
||||
#include <sprout/config.hpp>
|
||||
#include <sprout/fixed_container/traits.hpp>
|
||||
#include <sprout/fixed_container/functions.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/numeric/fixed/adjacent_difference.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array.hpp>
|
||||
|
@ -18,11 +18,11 @@ namespace sprout {
|
|||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::difference_type offset
|
||||
typename sprout::container_traits<Result>::difference_type offset
|
||||
)
|
||||
{
|
||||
return sprout::sub_copy(
|
||||
sprout::get_fixed(sprout::fixed::adjacent_difference(first, last, result)),
|
||||
sprout::get_internal(sprout::fixed::adjacent_difference(first, last, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT_DETAIL::min(NS_SSCRISK_CEL_OR_SPROUT_DETAIL::distance(first, last), sprout::size(result))
|
||||
);
|
||||
|
@ -38,7 +38,7 @@ namespace sprout {
|
|||
Result const& result
|
||||
)
|
||||
{
|
||||
return sprout::fit::detail::adjacent_difference_impl(first, last, result, sprout::fixed_begin_offset(result));
|
||||
return sprout::fit::detail::adjacent_difference_impl(first, last, result, sprout::internal_begin_offset(result));
|
||||
}
|
||||
|
||||
namespace detail {
|
||||
|
@ -48,11 +48,11 @@ namespace sprout {
|
|||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::difference_type offset
|
||||
typename sprout::container_traits<Result>::difference_type offset
|
||||
)
|
||||
{
|
||||
return sprout::sub_copy(
|
||||
sprout::get_fixed(sprout::fixed::adjacent_difference(first, last, result, binary_op)),
|
||||
sprout::get_internal(sprout::fixed::adjacent_difference(first, last, result, binary_op)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT_DETAIL::min(NS_SSCRISK_CEL_OR_SPROUT_DETAIL::distance(first, last), sprout::size(result))
|
||||
);
|
||||
|
@ -69,7 +69,7 @@ namespace sprout {
|
|||
BinaryOperation binary_op
|
||||
)
|
||||
{
|
||||
return sprout::fit::detail::adjacent_difference_impl(first, last, result, binary_op, sprout::fixed_begin_offset(result));
|
||||
return sprout::fit::detail::adjacent_difference_impl(first, last, result, binary_op, sprout::internal_begin_offset(result));
|
||||
}
|
||||
} // namespace fit
|
||||
} // namespace sprout
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
#define SPROUT_NUMERIC_FIT_IOTA_HPP
|
||||
|
||||
#include <sprout/config.hpp>
|
||||
#include <sprout/fixed_container/traits.hpp>
|
||||
#include <sprout/fixed_container/functions.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/numeric/fixed/iota.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array.hpp>
|
||||
|
@ -15,11 +15,11 @@ namespace sprout {
|
|||
SPROUT_CONSTEXPR inline typename sprout::fit::result_of::algorithm<Container>::type iota_impl(
|
||||
Container const& cont,
|
||||
T const& value,
|
||||
typename sprout::fixed_container_traits<Container>::difference_type offset
|
||||
typename sprout::container_traits<Container>::difference_type offset
|
||||
)
|
||||
{
|
||||
return sprout::sub_copy(
|
||||
sprout::get_fixed(sprout::fixed::iota(cont, value)),
|
||||
sprout::get_internal(sprout::fixed::iota(cont, value)),
|
||||
offset,
|
||||
offset + sprout::size(cont)
|
||||
);
|
||||
|
@ -34,7 +34,7 @@ namespace sprout {
|
|||
T const& value
|
||||
)
|
||||
{
|
||||
return sprout::fit::detail::iota_impl(cont, value, sprout::fixed_begin_offset(cont));
|
||||
return sprout::fit::detail::iota_impl(cont, value, sprout::internal_begin_offset(cont));
|
||||
}
|
||||
} // namespace fit
|
||||
} // namespace sprout
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
#define SPROUT_NUMERIC_FIT_PARTIAL_SUM_HPP
|
||||
|
||||
#include <sprout/config.hpp>
|
||||
#include <sprout/fixed_container/traits.hpp>
|
||||
#include <sprout/fixed_container/functions.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/numeric/fixed/partial_sum.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array.hpp>
|
||||
|
@ -18,11 +18,11 @@ namespace sprout {
|
|||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::difference_type offset
|
||||
typename sprout::container_traits<Result>::difference_type offset
|
||||
)
|
||||
{
|
||||
return sprout::sub_copy(
|
||||
sprout::get_fixed(sprout::fixed::partial_sum(first, last, result)),
|
||||
sprout::get_internal(sprout::fixed::partial_sum(first, last, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT_DETAIL::min(NS_SSCRISK_CEL_OR_SPROUT_DETAIL::distance(first, last), sprout::size(result))
|
||||
);
|
||||
|
@ -38,7 +38,7 @@ namespace sprout {
|
|||
Result const& result
|
||||
)
|
||||
{
|
||||
return sprout::fit::detail::partial_sum_impl(first, last, result, sprout::fixed_begin_offset(result));
|
||||
return sprout::fit::detail::partial_sum_impl(first, last, result, sprout::internal_begin_offset(result));
|
||||
}
|
||||
|
||||
namespace detail {
|
||||
|
@ -48,11 +48,11 @@ namespace sprout {
|
|||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::difference_type offset
|
||||
typename sprout::container_traits<Result>::difference_type offset
|
||||
)
|
||||
{
|
||||
return sprout::sub_copy(
|
||||
sprout::get_fixed(sprout::fixed::partial_sum(first, last, result, binary_op)),
|
||||
sprout::get_internal(sprout::fixed::partial_sum(first, last, result, binary_op)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT_DETAIL::min(NS_SSCRISK_CEL_OR_SPROUT_DETAIL::distance(first, last), sprout::size(result))
|
||||
);
|
||||
|
@ -69,7 +69,7 @@ namespace sprout {
|
|||
BinaryOperation binary_op
|
||||
)
|
||||
{
|
||||
return sprout::fit::detail::partial_sum_impl(first, last, result, binary_op, sprout::fixed_begin_offset(result));
|
||||
return sprout::fit::detail::partial_sum_impl(first, last, result, binary_op, sprout::internal_begin_offset(result));
|
||||
}
|
||||
} // namespace fit
|
||||
} // namespace sprout
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
|
||||
#include <type_traits>
|
||||
#include <sprout/config.hpp>
|
||||
#include <sprout/fixed_container/traits.hpp>
|
||||
#include <sprout/fixed_container/functions.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/iterator/operation.hpp>
|
||||
#include <sprout/algorithm/fixed/result_of.hpp>
|
||||
|
||||
|
@ -13,29 +13,29 @@ namespace sprout {
|
|||
namespace detail {
|
||||
template<typename InputIterator, typename Result, typename... Args>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size == sizeof...(Args),
|
||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type adjacent_difference_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size,
|
||||
typename sprout::fixed_container_traits<Result>::value_type const& value,
|
||||
typename sprout::container_traits<Result>::size_type size,
|
||||
typename sprout::container_traits<Result>::value_type const& value,
|
||||
Args const&... args
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Result>(result, sprout::size(result), args...);
|
||||
return sprout::remake<Result>(result, sprout::size(result), args...);
|
||||
}
|
||||
template<typename InputIterator, typename Result, typename... Args>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size != sizeof...(Args),
|
||||
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type adjacent_difference_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size,
|
||||
typename sprout::fixed_container_traits<Result>::value_type const& value,
|
||||
typename sprout::container_traits<Result>::size_type size,
|
||||
typename sprout::container_traits<Result>::value_type const& value,
|
||||
Args const&... args
|
||||
)
|
||||
{
|
||||
|
@ -46,26 +46,26 @@ namespace sprout {
|
|||
}
|
||||
template<typename InputIterator, typename Result>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size == 0,
|
||||
sprout::container_traits<Result>::static_size == 0,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type adjacent_difference_impl(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size
|
||||
typename sprout::container_traits<Result>::size_type size
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Result>(result, sprout::size(result));
|
||||
return sprout::remake<Result>(result, sprout::size(result));
|
||||
}
|
||||
template<typename InputIterator, typename Result>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size != 0,
|
||||
sprout::container_traits<Result>::static_size != 0,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type adjacent_difference_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size
|
||||
typename sprout::container_traits<Result>::size_type size
|
||||
)
|
||||
{
|
||||
return first != last
|
||||
|
@ -90,31 +90,31 @@ namespace sprout {
|
|||
namespace detail {
|
||||
template<typename InputIterator, typename Result, typename BinaryOperation, typename... Args>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size == sizeof...(Args),
|
||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type adjacent_difference_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size,
|
||||
typename sprout::fixed_container_traits<Result>::value_type const& value,
|
||||
typename sprout::container_traits<Result>::size_type size,
|
||||
typename sprout::container_traits<Result>::value_type const& value,
|
||||
Args const&... args
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Result>(result, sprout::size(result), args...);
|
||||
return sprout::remake<Result>(result, sprout::size(result), args...);
|
||||
}
|
||||
template<typename InputIterator, typename Result, typename BinaryOperation, typename... Args>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size != sizeof...(Args),
|
||||
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type adjacent_difference_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size,
|
||||
typename sprout::fixed_container_traits<Result>::value_type const& value,
|
||||
typename sprout::container_traits<Result>::size_type size,
|
||||
typename sprout::container_traits<Result>::value_type const& value,
|
||||
Args const&... args
|
||||
)
|
||||
{
|
||||
|
@ -125,28 +125,28 @@ namespace sprout {
|
|||
}
|
||||
template<typename InputIterator, typename Result, typename BinaryOperation>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size == 0,
|
||||
sprout::container_traits<Result>::static_size == 0,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type adjacent_difference_impl(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size
|
||||
typename sprout::container_traits<Result>::size_type size
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Result>(result, sprout::size(result));
|
||||
return sprout::remake<Result>(result, sprout::size(result));
|
||||
}
|
||||
template<typename InputIterator, typename Result, typename BinaryOperation>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size != 0,
|
||||
sprout::container_traits<Result>::static_size != 0,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type adjacent_difference_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size
|
||||
typename sprout::container_traits<Result>::size_type size
|
||||
)
|
||||
{
|
||||
return first != last
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
|
||||
#include <sprout/config.hpp>
|
||||
#include <sprout/index_tuple.hpp>
|
||||
#include <sprout/fixed_container/traits.hpp>
|
||||
#include <sprout/fixed_container/functions.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/iterator/operation.hpp>
|
||||
#include <sprout/algorithm/fixed/result_of.hpp>
|
||||
|
||||
|
@ -16,16 +16,16 @@ namespace sprout {
|
|||
Container const& cont,
|
||||
sprout::index_tuple<Indexes...>,
|
||||
T value,
|
||||
typename sprout::fixed_container_traits<Container>::difference_type offset,
|
||||
typename sprout::fixed_container_traits<Container>::size_type size
|
||||
typename sprout::container_traits<Container>::difference_type offset,
|
||||
typename sprout::container_traits<Container>::size_type size
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Container>(
|
||||
return sprout::remake<Container>(
|
||||
cont,
|
||||
sprout::size(cont),
|
||||
(Indexes >= offset && Indexes < offset + size
|
||||
? value + (Indexes - offset)
|
||||
: *sprout::next(sprout::fixed_begin(cont), Indexes)
|
||||
: *sprout::next(sprout::internal_begin(cont), Indexes)
|
||||
)...
|
||||
);
|
||||
}
|
||||
|
@ -41,9 +41,9 @@ namespace sprout {
|
|||
{
|
||||
return sprout::fixed::detail::iota_impl(
|
||||
cont,
|
||||
typename sprout::index_range<0, sprout::fixed_container_traits<Container>::fixed_size>::type(),
|
||||
typename sprout::index_range<0, sprout::container_traits<Container>::static_size>::type(),
|
||||
value,
|
||||
sprout::fixed_begin_offset(cont),
|
||||
sprout::internal_begin_offset(cont),
|
||||
sprout::size(cont)
|
||||
);
|
||||
}
|
||||
|
|
|
@ -3,8 +3,8 @@
|
|||
|
||||
#include <type_traits>
|
||||
#include <sprout/config.hpp>
|
||||
#include <sprout/fixed_container/traits.hpp>
|
||||
#include <sprout/fixed_container/functions.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/iterator/operation.hpp>
|
||||
#include <sprout/algorithm/fixed/result_of.hpp>
|
||||
|
||||
|
@ -13,29 +13,29 @@ namespace sprout {
|
|||
namespace detail {
|
||||
template<typename InputIterator, typename Result, typename... Args>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size == sizeof...(Args) + 1,
|
||||
sprout::container_traits<Result>::static_size == sizeof...(Args) + 1,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type partial_sum_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size,
|
||||
typename sprout::fixed_container_traits<Result>::value_type const& value,
|
||||
typename sprout::container_traits<Result>::size_type size,
|
||||
typename sprout::container_traits<Result>::value_type const& value,
|
||||
Args const&... args
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Result>(result, sprout::size(result), args...);
|
||||
return sprout::remake<Result>(result, sprout::size(result), args...);
|
||||
}
|
||||
template<typename InputIterator, typename Result, typename... Args>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size != sizeof...(Args) + 1,
|
||||
sprout::container_traits<Result>::static_size != sizeof...(Args) + 1,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type partial_sum_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size,
|
||||
typename sprout::fixed_container_traits<Result>::value_type const& value,
|
||||
typename sprout::container_traits<Result>::size_type size,
|
||||
typename sprout::container_traits<Result>::value_type const& value,
|
||||
Args const&... args
|
||||
)
|
||||
{
|
||||
|
@ -46,26 +46,26 @@ namespace sprout {
|
|||
}
|
||||
template<typename InputIterator, typename Result>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size == 0,
|
||||
sprout::container_traits<Result>::static_size == 0,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type partial_sum_impl(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size
|
||||
typename sprout::container_traits<Result>::size_type size
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Result>(result, sprout::size(result));
|
||||
return sprout::remake<Result>(result, sprout::size(result));
|
||||
}
|
||||
template<typename InputIterator, typename Result>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size != 0,
|
||||
sprout::container_traits<Result>::static_size != 0,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type partial_sum_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size
|
||||
typename sprout::container_traits<Result>::size_type size
|
||||
)
|
||||
{
|
||||
return first != last
|
||||
|
@ -90,31 +90,31 @@ namespace sprout {
|
|||
namespace detail {
|
||||
template<typename InputIterator, typename Result, typename BinaryOperation, typename... Args>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size == sizeof...(Args) + 1,
|
||||
sprout::container_traits<Result>::static_size == sizeof...(Args) + 1,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type partial_sum_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size,
|
||||
typename sprout::fixed_container_traits<Result>::value_type const& value,
|
||||
typename sprout::container_traits<Result>::size_type size,
|
||||
typename sprout::container_traits<Result>::value_type const& value,
|
||||
Args const&... args
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Result>(result, sprout::size(result), args...);
|
||||
return sprout::remake<Result>(result, sprout::size(result), args...);
|
||||
}
|
||||
template<typename InputIterator, typename Result, typename BinaryOperation, typename... Args>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size != sizeof...(Args) + 1,
|
||||
sprout::container_traits<Result>::static_size != sizeof...(Args) + 1,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type partial_sum_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size,
|
||||
typename sprout::fixed_container_traits<Result>::value_type const& value,
|
||||
typename sprout::container_traits<Result>::size_type size,
|
||||
typename sprout::container_traits<Result>::value_type const& value,
|
||||
Args const&... args
|
||||
)
|
||||
{
|
||||
|
@ -125,28 +125,28 @@ namespace sprout {
|
|||
}
|
||||
template<typename InputIterator, typename Result, typename BinaryOperation>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size == 0,
|
||||
sprout::container_traits<Result>::static_size == 0,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type partial_sum_impl(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size
|
||||
typename sprout::container_traits<Result>::size_type size
|
||||
)
|
||||
{
|
||||
return sprout::remake_clone<Result>(result, sprout::size(result));
|
||||
return sprout::remake<Result>(result, sprout::size(result));
|
||||
}
|
||||
template<typename InputIterator, typename Result, typename BinaryOperation>
|
||||
SPROUT_CONSTEXPR inline typename std::enable_if<
|
||||
sprout::fixed_container_traits<Result>::fixed_size != 0,
|
||||
sprout::container_traits<Result>::static_size != 0,
|
||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||
>::type partial_sum_impl_1(
|
||||
InputIterator first,
|
||||
InputIterator last,
|
||||
Result const& result,
|
||||
BinaryOperation binary_op,
|
||||
typename sprout::fixed_container_traits<Result>::size_type size
|
||||
typename sprout::container_traits<Result>::size_type size
|
||||
)
|
||||
{
|
||||
return first != last
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue