mirror of
https://github.com/bolero-MURAKAMI/Sprout
synced 2025-07-02 14:04:09 +00:00
add back_inserter, front_inserter
This commit is contained in:
parent
7c706381d4
commit
74e83e31a7
70 changed files with 1094 additions and 186 deletions
|
@ -56,6 +56,8 @@
|
|||
#include <sprout/algorithm/fit/copy_until.hpp>
|
||||
#include <sprout/algorithm/fit/clamp_range.hpp>
|
||||
#include <sprout/algorithm/fit/clamp_range_copy.hpp>
|
||||
#include <sprout/algorithm/fit/swap_element.hpp>
|
||||
#include <sprout/algorithm/fit/swap_element_copy.hpp>
|
||||
#include <sprout/algorithm/fit/random_swap.hpp>
|
||||
#include <sprout/algorithm/fit/random_swap_result.hpp>
|
||||
#include <sprout/algorithm/fit/bogo_sort.hpp>
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -28,7 +27,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::clamp_range_copy(first, last, result, low, high, comp)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
@ -61,7 +60,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::clamp_range_copy(first, last, result, low, high)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -25,7 +24,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::copy(first, last, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
|
||||
namespace sprout {
|
||||
namespace fit {
|
||||
|
@ -23,7 +22,7 @@ namespace sprout {
|
|||
{
|
||||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::copy_backward(first, last, result)),
|
||||
offset - NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result)),
|
||||
offset - sprout::fit_size(result, sprout::distance(first, last)),
|
||||
offset
|
||||
);
|
||||
}
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
#include <sprout/config.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/count_if.hpp>
|
||||
#include <sprout/algorithm/fixed/copy_if.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -24,7 +24,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::copy_if(first, last, result, pred)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(NS_SSCRISK_CEL_OR_SPROUT::count_if(first, last, pred), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::count_if(first, last, pred))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
|
||||
namespace sprout {
|
||||
namespace fit {
|
||||
|
@ -23,7 +22,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::copy_n(first, n, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(n, sprout::size(result))
|
||||
offset + sprout::fit_size(result, n)
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -5,12 +5,11 @@
|
|||
#include <sprout/iterator/distance.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/find_if.hpp>
|
||||
#include <sprout/algorithm/fixed/copy_while.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/algorithm/find_if.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -26,10 +25,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::copy_until(first, last, result, pred)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first, sprout::find_if(first, last, pred)),
|
||||
sprout::size(result)
|
||||
)
|
||||
offset + sprout::fit_size(result, sprout::distance(first, sprout::find_if(first, last, pred)))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -5,12 +5,11 @@
|
|||
#include <sprout/iterator/distance.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/find_if_not.hpp>
|
||||
#include <sprout/algorithm/fixed/copy_while.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/algorithm/find_if_not.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -26,10 +25,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::copy_while(first, last, result, pred)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first, sprout::find_if_not(first, last, pred)),
|
||||
sprout::size(result)
|
||||
)
|
||||
offset + sprout::fit_size(result, sprout::distance(first, sprout::find_if_not(first, last, pred)))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -27,10 +26,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::merge(first1, last1, first2, last2, result, comp)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first1, last1) + sprout::distance(first2, last2),
|
||||
sprout::size(result)
|
||||
)
|
||||
offset + sprout::fit_size(result, sprout::distance(first1, last1) + sprout::distance(first2, last2))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
@ -65,10 +61,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::merge(first1, last1, first2, last2, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first1, last1) + sprout::distance(first2, last2),
|
||||
sprout::size(result)
|
||||
)
|
||||
offset + sprout::fit_size(result, sprout::distance(first1, last1) + sprout::distance(first2, last2))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
#include <sprout/config.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/count_if.hpp>
|
||||
#include <sprout/algorithm/fixed/partition.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
|
||||
namespace sprout {
|
||||
namespace fit {
|
||||
|
@ -23,7 +23,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::partition(cont, pred)),
|
||||
offset,
|
||||
offset + sprout::size(cont) - NS_SSCRISK_CEL_OR_SPROUT::count_if(sprout::begin(cont), sprout::end(cont), pred)
|
||||
offset + sprout::size(cont) - sprout::count_if(sprout::begin(cont), sprout::end(cont), pred)
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -11,7 +11,6 @@
|
|||
#include <sprout/sub_array/sub.hpp>
|
||||
#include <sprout/detail/algorithm/count_n_if.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include HDR_FUNCTIONAL_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -27,12 +26,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::partition_copy(first, last, result, pred)),
|
||||
offset,
|
||||
offset + sprout::detail::count_n_if(
|
||||
first,
|
||||
NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first, last), sprout::size(result)
|
||||
),
|
||||
pred
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::detail::count_n_if(first, NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result)), pred)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
#include <sprout/config.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/fixed/remove.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/algorithm/count.hpp>
|
||||
#include <sprout/algorithm/fixed/remove.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
|
||||
namespace sprout {
|
||||
namespace fit {
|
||||
|
@ -23,7 +23,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::remove(cont, value)),
|
||||
offset,
|
||||
offset + sprout::size(cont) - NS_SSCRISK_CEL_OR_SPROUT::count(sprout::begin(cont), sprout::end(cont), value)
|
||||
offset + sprout::size(cont) - sprout::count(sprout::begin(cont), sprout::end(cont), value)
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
#include <sprout/iterator/distance.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/count.hpp>
|
||||
#include <sprout/algorithm/fixed/remove_copy.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -25,10 +25,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::remove_copy(first, last, result, value)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first, last) - NS_SSCRISK_CEL_OR_SPROUT::count(first, last, value),
|
||||
sprout::size(result)
|
||||
)
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last) - sprout::count(first, last, value))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -5,11 +5,11 @@
|
|||
#include <sprout/iterator/distance.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/count_if.hpp>
|
||||
#include <sprout/algorithm/fixed/remove_copy_if.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -25,10 +25,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::remove_copy_if(first, last, result, pred)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first, last) - NS_SSCRISK_CEL_OR_SPROUT::count_if(first, last, pred),
|
||||
sprout::size(result)
|
||||
)
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last) - sprout::count_if(first, last, pred))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
#include <sprout/config.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/count_if.hpp>
|
||||
#include <sprout/algorithm/fixed/remove_if.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
|
||||
namespace sprout {
|
||||
namespace fit {
|
||||
|
@ -23,7 +23,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::remove_if(cont, pred)),
|
||||
offset,
|
||||
offset + sprout::size(cont) - NS_SSCRISK_CEL_OR_SPROUT::count_if(sprout::begin(cont), sprout::end(cont), pred)
|
||||
offset + sprout::size(cont) - sprout::count_if(sprout::begin(cont), sprout::end(cont), pred)
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -25,7 +24,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::replace_copy(first, last, result, old_value, new_value)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -25,7 +24,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::replace_copy_if(first, last, result, pred, new_value)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
|
||||
namespace sprout {
|
||||
namespace fit {
|
||||
|
@ -24,7 +23,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::reverse_copy(first, last, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
|
||||
namespace sprout {
|
||||
namespace fit {
|
||||
|
@ -24,7 +23,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::rotate_copy(first, middle, last, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include <sprout/detail/algorithm/set_overlap_count.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -28,11 +27,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::set_difference(first1, last1, first2, last2, result, comp)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first1, last1)
|
||||
- sprout::detail::set_overlap_count(first1, last1, first2, last2, comp)
|
||||
,
|
||||
sprout::size(result)
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::distance(first1, last1) - sprout::detail::set_overlap_count(first1, last1, first2, last2, comp)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
@ -68,11 +64,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::set_difference(first1, last1, first2, last2, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first1, last1)
|
||||
- sprout::detail::set_overlap_count(first1, last1, first2, last2)
|
||||
,
|
||||
sprout::size(result)
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::distance(first1, last1) - sprout::detail::set_overlap_count(first1, last1, first2, last2)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include <sprout/detail/algorithm/set_overlap_count.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -27,9 +26,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::set_intersection(first1, last1, first2, last2, result, comp)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::detail::set_overlap_count(first1, last1, first2, last2, comp),
|
||||
sprout::size(result)
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::detail::set_overlap_count(first1, last1, first2, last2, comp)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
@ -65,9 +63,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::set_intersection(first1, last1, first2, last2, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::detail::set_overlap_count(first1, last1, first2, last2),
|
||||
sprout::size(result)
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::detail::set_overlap_count(first1, last1, first2, last2)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include <sprout/detail/algorithm/set_overlap_count.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -28,11 +27,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::set_symmetric_difference(first1, last1, first2, last2, result, comp)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first1, last1) + sprout::distance(first2, last2)
|
||||
- 2 * sprout::detail::set_overlap_count(first1, last1, first2, last2, comp)
|
||||
,
|
||||
sprout::size(result)
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::distance(first1, last1) + sprout::distance(first2, last2) - 2 * sprout::detail::set_overlap_count(first1, last1, first2, last2, comp)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
@ -68,12 +64,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::set_symmetric_difference(first1, last1, first2, last2, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first1, last1)
|
||||
+ sprout::distance(first2, last2)
|
||||
- 2 * sprout::detail::set_overlap_count(first1, last1, first2, last2)
|
||||
,
|
||||
sprout::size(result)
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::distance(first1, last1) + sprout::distance(first2, last2) - 2 * sprout::detail::set_overlap_count(first1, last1, first2, last2)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include <sprout/detail/algorithm/set_overlap_count.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -28,11 +27,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::set_union(first1, last1, first2, last2, result, comp)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first1, last1) + sprout::distance(first2, last2)
|
||||
- sprout::detail::set_overlap_count(first1, last1, first2, last2, comp)
|
||||
,
|
||||
sprout::size(result)
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::distance(first1, last1) + sprout::distance(first2, last2) - sprout::detail::set_overlap_count(first1, last1, first2, last2, comp)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
@ -68,11 +64,8 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::set_union(first1, last1, first2, last2, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first1, last1) + sprout::distance(first2, last2)
|
||||
- sprout::detail::set_overlap_count(first1, last1, first2, last2)
|
||||
,
|
||||
sprout::size(result)
|
||||
offset + sprout::fit_size(
|
||||
result, sprout::distance(first1, last1) + sprout::distance(first2, last2) - sprout::detail::set_overlap_count(first1, last1, first2, last2)
|
||||
)
|
||||
);
|
||||
}
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
#include <sprout/config.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/count_if.hpp>
|
||||
#include <sprout/algorithm/fixed/stable_partition.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
|
||||
namespace sprout {
|
||||
namespace fit {
|
||||
|
@ -23,7 +23,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::stable_partition(cont, pred)),
|
||||
offset,
|
||||
offset + sprout::size(cont) - NS_SSCRISK_CEL_OR_SPROUT::count_if(sprout::begin(cont), sprout::end(cont), pred)
|
||||
offset + sprout::size(cont) - sprout::count_if(sprout::begin(cont), sprout::end(cont), pred)
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -4,11 +4,11 @@
|
|||
#include <sprout/config.hpp>
|
||||
#include <sprout/container/traits.hpp>
|
||||
#include <sprout/container/functions.hpp>
|
||||
#include <sprout/algorithm/count_if.hpp>
|
||||
#include <sprout/algorithm/fixed/stable_partition_copy.hpp>
|
||||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -24,7 +24,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::stable_partition_copy(first, last, result, pred)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(NS_SSCRISK_CEL_OR_SPROUT::count_if(first, last, pred), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::count_if(first, last, pred))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -8,7 +8,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/operation.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -24,7 +23,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::swap_element_copy(first, last, result, pos1, pos2)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -9,7 +9,6 @@
|
|||
#include <sprout/algorithm/fit/result_of.hpp>
|
||||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -25,7 +24,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::transform(first, last, result, op)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first, last), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
@ -50,7 +49,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::transform(first1, last1, first2, result, op)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(sprout::distance(first1, last1), sprout::size(result))
|
||||
offset + sprout::fit_size(result, sprout::distance(first1, last1))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
|
@ -10,7 +10,6 @@
|
|||
#include <sprout/sub_array/sub_array.hpp>
|
||||
#include <sprout/sub_array/sub.hpp>
|
||||
#include <sprout/detail/algorithm/overlap_count.hpp>
|
||||
#include HDR_ALGORITHM_MIN_MAX_SSCRISK_CEL_OR_SPROUT
|
||||
#include <sprout/iterator/type_traits/is_iterator.hpp>
|
||||
|
||||
namespace sprout {
|
||||
|
@ -26,10 +25,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::unique_copy(first, last, result)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first, last) - sprout::detail::overlap_count(first, last),
|
||||
sprout::size(result)
|
||||
)
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last) - sprout::detail::overlap_count(first, last))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
@ -54,10 +50,7 @@ namespace sprout {
|
|||
return sprout::sub_copy(
|
||||
sprout::get_internal(sprout::fixed::unique_copy(first, last, result, pred)),
|
||||
offset,
|
||||
offset + NS_SSCRISK_CEL_OR_SPROUT::min(
|
||||
sprout::distance(first, last) - sprout::detail::overlap_count(first, last, pred),
|
||||
sprout::size(result)
|
||||
)
|
||||
offset + sprout::fit_size(result, sprout::distance(first, last) - sprout::detail::overlap_count(first, last, pred))
|
||||
);
|
||||
}
|
||||
} // namespace detail
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue