mirror of
https://github.com/bolero-MURAKAMI/Sprout.git
synced 2025-01-23 20:46:37 +00:00
fix warning (for -Wextra)
This commit is contained in:
parent
49243e6c94
commit
57e35349e5
146 changed files with 459 additions and 499 deletions
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲をクランプ (4 <= x <= 7)
|
// [2 .. 8) の範囲をクランプ (4 <= x <= 7)
|
||||||
{
|
{
|
||||||
|
@ -109,8 +109,8 @@ namespace testspr {
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲をクランプ (4 <= x <= 7)
|
// [2 .. 8) の範囲をクランプ (4 <= x <= 7)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲をコピー
|
// [2 .. 8) の範囲をコピー
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲をコピー
|
// [2 .. 8) の範囲をコピー
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// 奇数をコピー
|
// 奇数をコピー
|
||||||
{
|
{
|
||||||
|
|
|
@ -11,8 +11,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// 6 要素をコピー
|
// 6 要素をコピー
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// 6 未満をコピー
|
// 6 未満をコピー
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// 6 未満をコピー
|
// 6 未満をコピー
|
||||||
{
|
{
|
||||||
|
|
|
@ -13,8 +13,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 4>{{3, 5, 7, 9}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 4>{{3, 5, 7, 9}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 4>{{2, 4, 6, 8}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 4>{{2, 4, 6, 8}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// マージ
|
// マージ
|
||||||
{
|
{
|
||||||
|
@ -111,8 +111,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 4>{{3, 5, 7, 9}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 4>{{3, 5, 7, 9}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 4>{{2, 4, 6, 8}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 4>{{2, 4, 6, 8}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// マージ
|
// マージ
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲をパーティション (is_odd)
|
// [2 .. 8) の範囲をパーティション (is_odd)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 0, 3, 0, 5, 0, 7, 0, 9, 0}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 0, 3, 0, 5, 0, 7, 0, 9, 0}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲を削除 (0)
|
// [2 .. 8) の範囲を削除 (0)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 0, 3, 0, 5, 0, 7, 0, 9, 0}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 0, 3, 0, 5, 0, 7, 0, 9, 0}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲を削除 (is_odd)
|
// [2 .. 8) の範囲を削除 (is_odd)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 0, 3, 0, 5, 0, 7, 0, 9, 0}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 0, 3, 0, 5, 0, 7, 0, 9, 0}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲を置換 (0 -> -1)
|
// [2 .. 8) の範囲を置換 (0 -> -1)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 0, 3, 0, 5, 0, 7, 0, 9, 0}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 0, 3, 0, 5, 0, 7, 0, 9, 0}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲を置換 (is_odd -> -1)
|
// [2 .. 8) の範囲を置換 (is_odd -> -1)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲を反転
|
// [2 .. 8) の範囲を反転
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲を回転
|
// [2 .. 8) の範囲を回転
|
||||||
{
|
{
|
||||||
|
|
|
@ -13,8 +13,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{{}};
|
||||||
|
|
||||||
// ˜_—<5F><E28094>·
|
// ˜_—<5F><E28094>·
|
||||||
{
|
{
|
||||||
|
@ -111,8 +111,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{{}};
|
||||||
|
|
||||||
// ˜_—<5F><E28094>·
|
// ˜_—<5F><E28094>·
|
||||||
{
|
{
|
||||||
|
|
|
@ -13,8 +13,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{20, 25, 30, 35, 40}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{20, 25, 30, 35, 40}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{{}};
|
||||||
|
|
||||||
// ˜_—<5F><E28094>Ï
|
// ˜_—<5F><E28094>Ï
|
||||||
{
|
{
|
||||||
|
@ -111,8 +111,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{20, 25, 30, 35, 40}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{20, 25, 30, 35, 40}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{{}};
|
||||||
|
|
||||||
// ˜_—<5F><E28094>Ï
|
// ˜_—<5F><E28094>Ï
|
||||||
{
|
{
|
||||||
|
|
|
@ -13,8 +13,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// ”r‘¼“I˜_—<5F>˜a
|
// ”r‘¼“I˜_—<5F>˜a
|
||||||
{
|
{
|
||||||
|
@ -111,8 +111,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// ”r‘¼“I˜_—<5F>˜a
|
// ”r‘¼“I˜_—<5F>˜a
|
||||||
{
|
{
|
||||||
|
|
|
@ -13,8 +13,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// ˜_—<5F>˜a
|
// ˜_—<5F>˜a
|
||||||
{
|
{
|
||||||
|
@ -111,8 +111,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 5>{{5, 10, 15, 20, 25}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 5>{{10, 20, 30, 40, 50}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// ˜_—<5F>˜a
|
// ˜_—<5F>˜a
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲をパーティション (is_odd)
|
// [2 .. 8) の範囲をパーティション (is_odd)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲をスワップ
|
// [2 .. 8) の範囲をスワップ
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲を変換
|
// [2 .. 8) の範囲を変換
|
||||||
{
|
{
|
||||||
|
@ -104,8 +104,8 @@ namespace testspr {
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
SPROUT_STATIC_CONSTEXPR auto arr1_2 = array<int, 10>{{1, 2, 3, 4, 5, 6, 7, 8, 9, 10}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 4>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲を変換
|
// [2 .. 8) の範囲を変換
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,8 +12,8 @@ namespace testspr {
|
||||||
using namespace sprout;
|
using namespace sprout;
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 1, 3, 3, 5, 5, 7, 7, 9, 9}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 1, 3, 3, 5, 5, 7, 7, 9, 9}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲「……ユニーク」
|
// [2 .. 8) の範囲「……ユニーク」
|
||||||
{
|
{
|
||||||
|
@ -97,8 +97,8 @@ namespace testspr {
|
||||||
}
|
}
|
||||||
{
|
{
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 1, 3, 3, 5, 5, 7, 7, 9, 9}};
|
SPROUT_STATIC_CONSTEXPR auto arr1 = array<int, 10>{{1, 1, 3, 3, 5, 5, 7, 7, 9, 9}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{};
|
SPROUT_STATIC_CONSTEXPR auto arr2 = array<int, 10>{{}};
|
||||||
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{};
|
SPROUT_STATIC_CONSTEXPR auto arr3 = array<int, 2>{{}};
|
||||||
|
|
||||||
// [2 .. 8) の範囲「……ユニーク」
|
// [2 .. 8) の範囲「……ユニーク」
|
||||||
{
|
{
|
||||||
|
|
|
@ -22,7 +22,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, typename Compare, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, typename Compare, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
clamp_range_copy_impl_ra(
|
clamp_range_copy_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last, Result const& result,
|
RandomAccessIterator first, RandomAccessIterator, Result const& result,
|
||||||
typename std::iterator_traits<RandomAccessIterator>::value_type const& low,
|
typename std::iterator_traits<RandomAccessIterator>::value_type const& low,
|
||||||
typename std::iterator_traits<RandomAccessIterator>::value_type const& high,
|
typename std::iterator_traits<RandomAccessIterator>::value_type const& high,
|
||||||
Compare comp,
|
Compare comp,
|
||||||
|
@ -66,11 +66,11 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
clamp_range_copy_impl(
|
clamp_range_copy_impl(
|
||||||
InputIterator first, InputIterator last, Result const& result,
|
InputIterator, InputIterator, Result const& result,
|
||||||
typename std::iterator_traits<InputIterator>::value_type const& low,
|
typename std::iterator_traits<InputIterator>::value_type const&,
|
||||||
typename std::iterator_traits<InputIterator>::value_type const& high,
|
typename std::iterator_traits<InputIterator>::value_type const&,
|
||||||
Compare comp,
|
Compare,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,7 +20,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
copy_impl_ra(
|
copy_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last, Result const& result,
|
RandomAccessIterator first, RandomAccessIterator, Result const& result,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type size,
|
||||||
|
@ -57,8 +57,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
copy_impl(
|
copy_impl(
|
||||||
InputIterator first, InputIterator last, Result const& result,
|
InputIterator, InputIterator, Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,7 +20,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
copy_backward_impl_ra(
|
copy_backward_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last, Result const& result,
|
RandomAccessIterator, RandomAccessIterator last, Result const& result,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type size,
|
||||||
|
@ -56,8 +56,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
copy_backward_impl(
|
copy_backward_impl(
|
||||||
BidirectionalIterator first, BidirectionalIterator last, Result const& result,
|
BidirectionalIterator, BidirectionalIterator, Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -19,8 +19,8 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
copy_if_impl(InputIterator first, InputIterator last, Result const& result, Predicate pred,
|
copy_if_impl(InputIterator, InputIterator, Result const& result, Predicate,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -32,8 +32,8 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
copy_n_impl(InputIterator first, Size n, Result const& result,
|
copy_n_impl(InputIterator, Size, Result const& result,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -34,8 +34,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
copy_until_impl(
|
copy_until_impl(
|
||||||
InputIterator first, InputIterator last, Result const& result, Predicate pred,
|
InputIterator, InputIterator, Result const& result, Predicate,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -33,8 +33,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
copy_while_impl(
|
copy_while_impl(
|
||||||
InputIterator first, InputIterator last, Result const& result, Predicate pred,
|
InputIterator, InputIterator, Result const& result, Predicate,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -51,7 +51,7 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Container>::type
|
typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
>::type
|
>::type
|
||||||
generate_impl(
|
generate_impl(
|
||||||
Container const& cont, Generator const& next,
|
Container const& cont, Generator const&,
|
||||||
typename sprout::container_traits<Container>::size_type size
|
typename sprout::container_traits<Container>::size_type size
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -75,12 +75,12 @@ namespace sprout {
|
||||||
template<int D, typename Container, typename Compare, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
template<int D, typename Container, typename Compare, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Container>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
make_heap_impl_1(
|
make_heap_impl_1(
|
||||||
Container const& cont, Compare comp,
|
Container const&, Compare,
|
||||||
typename sprout::container_traits<Container>::difference_type offset,
|
typename sprout::container_traits<Container>::difference_type,
|
||||||
typename sprout::container_traits<Container>::difference_type size,
|
typename sprout::container_traits<Container>::difference_type,
|
||||||
typename sprout::container_traits<Container>::difference_type n,
|
typename sprout::container_traits<Container>::difference_type,
|
||||||
typename sprout::container_traits<Container>::difference_type l,
|
typename sprout::container_traits<Container>::difference_type,
|
||||||
typename sprout::container_traits<Container>::difference_type r
|
typename sprout::container_traits<Container>::difference_type
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
|
@ -121,12 +121,12 @@ namespace sprout {
|
||||||
template<int D, typename Container, typename Compare, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK_DECL(D)>
|
template<int D, typename Container, typename Compare, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK_DECL(D)>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Container>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
make_heap_impl(
|
make_heap_impl(
|
||||||
Container const& cont, Compare comp,
|
Container const&, Compare,
|
||||||
typename sprout::container_traits<Container>::difference_type offset,
|
typename sprout::container_traits<Container>::difference_type,
|
||||||
typename sprout::container_traits<Container>::difference_type size,
|
typename sprout::container_traits<Container>::difference_type,
|
||||||
typename sprout::container_traits<Container>::difference_type n,
|
typename sprout::container_traits<Container>::difference_type,
|
||||||
typename sprout::container_traits<Container>::difference_type l,
|
typename sprout::container_traits<Container>::difference_type,
|
||||||
typename sprout::container_traits<Container>::difference_type r
|
typename sprout::container_traits<Container>::difference_type
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
|
|
|
@ -21,10 +21,10 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
merge_impl(
|
merge_impl(
|
||||||
InputIterator1 first1, InputIterator1 last1,
|
InputIterator1, InputIterator1,
|
||||||
InputIterator2 first2, InputIterator2 last2,
|
InputIterator2, InputIterator2,
|
||||||
Result const& result, Compare comp,
|
Result const& result, Compare,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -19,8 +19,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
partition_copy_impl(
|
partition_copy_impl(
|
||||||
InputIterator first, InputIterator last, Result const& result, Predicate pred,
|
InputIterator, InputIterator, Result const& result, Predicate,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -19,7 +19,7 @@ namespace sprout {
|
||||||
InitSize == 0,
|
InitSize == 0,
|
||||||
typename sprout::container_traits<Container>::value_type
|
typename sprout::container_traits<Container>::value_type
|
||||||
>::type
|
>::type
|
||||||
call_gen(Generator const& gen, Args const&... args) {
|
call_gen(Generator const& gen, Args const&...) {
|
||||||
return gen();
|
return gen();
|
||||||
}
|
}
|
||||||
template<std::size_t InitSize, typename Container, typename Generator, typename Head, typename... Args>
|
template<std::size_t InitSize, typename Container, typename Generator, typename Head, typename... Args>
|
||||||
|
@ -35,14 +35,14 @@ namespace sprout {
|
||||||
InitSize != 0 && InitSize != sizeof...(Args) + 1,
|
InitSize != 0 && InitSize != sizeof...(Args) + 1,
|
||||||
typename sprout::container_traits<Container>::value_type
|
typename sprout::container_traits<Container>::value_type
|
||||||
>::type
|
>::type
|
||||||
call_gen(Generator const& gen, Head const& head, Args const&... args) {
|
call_gen(Generator const& gen, Head const&, Args const&... args) {
|
||||||
return call_gen<InitSize, Container>(gen, args...);
|
return call_gen<InitSize, Container>(gen, args...);
|
||||||
}
|
}
|
||||||
template<typename Container, typename Generator>
|
template<typename Container, typename Generator>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Container>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
recurrence_impl_drop(
|
recurrence_impl_drop(
|
||||||
Container const& cont, Generator const& gen,
|
Container const& cont, Generator const&,
|
||||||
typename sprout::container_traits<Container>::size_type size
|
typename sprout::container_traits<Container>::size_type
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return sprout::detail::container_complate(cont);
|
return sprout::detail::container_complate(cont);
|
||||||
|
@ -71,7 +71,7 @@ namespace sprout {
|
||||||
recurrence_impl_drop(
|
recurrence_impl_drop(
|
||||||
Container const& cont, Generator const& gen,
|
Container const& cont, Generator const& gen,
|
||||||
typename sprout::container_traits<Container>::size_type size,
|
typename sprout::container_traits<Container>::size_type size,
|
||||||
Head const& head, Inits const&... inits
|
Head const&, Inits const&... inits
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return sprout::fixed::detail::recurrence_impl_drop(cont, gen, size, inits...);
|
return sprout::fixed::detail::recurrence_impl_drop(cont, gen, size, inits...);
|
||||||
|
@ -82,8 +82,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Container>::type
|
typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
>::type
|
>::type
|
||||||
recurrence_impl_1(
|
recurrence_impl_1(
|
||||||
Container const& cont, Generator const& gen,
|
Container const& cont, Generator const&,
|
||||||
typename sprout::container_traits<Container>::size_type size,
|
typename sprout::container_traits<Container>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,9 +20,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
remove_copy_impl(
|
remove_copy_impl(
|
||||||
InputIterator first, InputIterator last,
|
InputIterator, InputIterator,
|
||||||
Result const& result, T const& value,
|
Result const& result, T const&,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,9 +20,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
remove_copy_if_impl(
|
remove_copy_if_impl(
|
||||||
InputIterator first, InputIterator last,
|
InputIterator, InputIterator,
|
||||||
Result const& result, Predicate pred,
|
Result const& result, Predicate,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,7 +21,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, typename T, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, typename T, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
replace_copy_impl_ra(
|
replace_copy_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last,
|
RandomAccessIterator first, RandomAccessIterator,
|
||||||
Result const& result, T const& old_value, T const& new_value,
|
Result const& result, T const& old_value, T const& new_value,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
|
@ -60,9 +60,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
replace_copy_impl(
|
replace_copy_impl(
|
||||||
InputIterator first, InputIterator last,
|
InputIterator, InputIterator,
|
||||||
Result const& result, T const& old_value, T const& new_value,
|
Result const& result, T const&, T const&,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,7 +20,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, typename T, typename Predicate, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, typename T, typename Predicate, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
replace_copy_if_impl_ra(
|
replace_copy_if_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last,
|
RandomAccessIterator first, RandomAccessIterator,
|
||||||
Result const& result, Predicate pred, T const& new_value,
|
Result const& result, Predicate pred, T const& new_value,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
|
@ -59,9 +59,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
replace_copy_if_impl(
|
replace_copy_if_impl(
|
||||||
InputIterator first, InputIterator last,
|
InputIterator, InputIterator,
|
||||||
Result const& result, Predicate pred, T const& new_value,
|
Result const& result, Predicate, T const&,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -20,7 +20,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
reverse_copy_impl_ra(
|
reverse_copy_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last, Result const& result,
|
RandomAccessIterator, RandomAccessIterator last, Result const& result,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type size,
|
||||||
|
@ -58,8 +58,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
reverse_copy_impl(
|
reverse_copy_impl(
|
||||||
BidirectionalIterator first, BidirectionalIterator last, Result const& result,
|
BidirectionalIterator, BidirectionalIterator, Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -64,9 +64,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
rotate_copy_impl_1(
|
rotate_copy_impl_1(
|
||||||
ForwardIterator first, ForwardIterator last,
|
ForwardIterator, ForwardIterator,
|
||||||
Result const& result,
|
Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -95,10 +95,10 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
rotate_copy_impl(
|
rotate_copy_impl(
|
||||||
ForwardIterator first, ForwardIterator middle,
|
ForwardIterator, ForwardIterator,
|
||||||
ForwardIterator middle_first, ForwardIterator last,
|
ForwardIterator, ForwardIterator,
|
||||||
Result const& result,
|
Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,10 +21,10 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
set_difference_impl(
|
set_difference_impl(
|
||||||
InputIterator1 first1, InputIterator1 last1,
|
InputIterator1, InputIterator1,
|
||||||
InputIterator2 first2, InputIterator2 last2,
|
InputIterator2, InputIterator2,
|
||||||
Result const& result, Compare comp,
|
Result const& result, Compare,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,10 +21,10 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
set_intersection_impl(
|
set_intersection_impl(
|
||||||
InputIterator1 first1, InputIterator1 last1,
|
InputIterator1, InputIterator1,
|
||||||
InputIterator2 first2, InputIterator2 last2,
|
InputIterator2, InputIterator2,
|
||||||
Result const& result, Compare comp,
|
Result const& result, Compare,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,10 +21,10 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
set_symmetric_difference_impl(
|
set_symmetric_difference_impl(
|
||||||
InputIterator1 first1, InputIterator1 last1,
|
InputIterator1, InputIterator1,
|
||||||
InputIterator2 first2, InputIterator2 last2,
|
InputIterator2, InputIterator2,
|
||||||
Result const& result, Compare comp,
|
Result const& result, Compare,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,10 +21,10 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
set_union_impl(
|
set_union_impl(
|
||||||
InputIterator1 first1, InputIterator1 last1,
|
InputIterator1, InputIterator1,
|
||||||
InputIterator2 first2, InputIterator2 last2,
|
InputIterator2, InputIterator2,
|
||||||
Result const& result, Compare comp,
|
Result const& result, Compare,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -19,9 +19,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
stable_partition_copy_impl_1(
|
stable_partition_copy_impl_1(
|
||||||
BidirectionalIterator first, BidirectionalIterator last,
|
BidirectionalIterator, BidirectionalIterator,
|
||||||
Result const& result, Predicate pred,
|
Result const& result, Predicate,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -59,10 +59,10 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
stable_partition_copy_impl(
|
stable_partition_copy_impl(
|
||||||
BidirectionalIterator first, BidirectionalIterator last,
|
BidirectionalIterator, BidirectionalIterator,
|
||||||
Result const& result, Predicate pred,
|
Result const& result, Predicate,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
BidirectionalIterator temp_first,
|
BidirectionalIterator,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -26,12 +26,12 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Container>::type
|
typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
>::type
|
>::type
|
||||||
stable_sort_impl_synonym(
|
stable_sort_impl_synonym(
|
||||||
Container const& cont, Compare comp,
|
Container const& cont, Compare,
|
||||||
typename sprout::container_traits<Container>::size_type size,
|
typename sprout::container_traits<Container>::size_type,
|
||||||
typename sprout::container_traits<Container>::const_iterator first,
|
typename sprout::container_traits<Container>::const_iterator,
|
||||||
typename sprout::container_traits<Container>::const_iterator last,
|
typename sprout::container_traits<Container>::const_iterator,
|
||||||
typename sprout::container_traits<Container>::value_type const& value,
|
typename sprout::container_traits<Container>::value_type const&,
|
||||||
typename sprout::container_traits<Container>::size_type count,
|
typename sprout::container_traits<Container>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -187,7 +187,7 @@ namespace sprout {
|
||||||
(sprout::container_traits<Container>::static_size <= 1),
|
(sprout::container_traits<Container>::static_size <= 1),
|
||||||
typename sprout::fixed::result_of::algorithm<Container>::type
|
typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
>::type
|
>::type
|
||||||
stable_sort(Container const& cont, Compare comp) {
|
stable_sort(Container const& cont, Compare) {
|
||||||
return sprout::deep_copy(cont);
|
return sprout::deep_copy(cont);
|
||||||
}
|
}
|
||||||
template<typename Container, typename Compare>
|
template<typename Container, typename Compare>
|
||||||
|
|
|
@ -19,7 +19,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
swap_element_copy_impl_ra(
|
swap_element_copy_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last,
|
RandomAccessIterator first, RandomAccessIterator,
|
||||||
Result const& result,
|
Result const& result,
|
||||||
RandomAccessIterator pos1, RandomAccessIterator pos2,
|
RandomAccessIterator pos1, RandomAccessIterator pos2,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
|
@ -67,10 +67,10 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
swap_element_copy_impl(
|
swap_element_copy_impl(
|
||||||
ForwardIterator first, ForwardIterator last,
|
ForwardIterator, ForwardIterator,
|
||||||
Result const& result,
|
Result const& result,
|
||||||
ForwardIterator pos1, ForwardIterator pos2,
|
ForwardIterator, ForwardIterator,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -106,7 +106,7 @@ namespace sprout {
|
||||||
std::forward_iterator_tag*
|
std::forward_iterator_tag*
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return sprout::fixed::detail::swap_element_copy_impl(first, last, result, sprout::size(result));
|
return sprout::fixed::detail::swap_element_copy_impl(first, last, result, pos1, pos2, sprout::size(result));
|
||||||
}
|
}
|
||||||
} // namespace detail
|
} // namespace detail
|
||||||
//
|
//
|
||||||
|
|
|
@ -21,7 +21,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, typename UnaryOperation, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, typename UnaryOperation, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
transform_impl_ra(
|
transform_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last,
|
RandomAccessIterator first, RandomAccessIterator,
|
||||||
Result const& result, UnaryOperation op,
|
Result const& result, UnaryOperation op,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
|
@ -61,9 +61,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
transform_impl(
|
transform_impl(
|
||||||
InputIterator first, InputIterator last,
|
InputIterator, InputIterator,
|
||||||
Result const& result, UnaryOperation op,
|
Result const& result, UnaryOperation,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -139,7 +139,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator1, typename RandomAccessIterator2, typename Result, typename BinaryOperation, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator1, typename RandomAccessIterator2, typename Result, typename BinaryOperation, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
transform_impl_ra(
|
transform_impl_ra(
|
||||||
RandomAccessIterator1 first1, RandomAccessIterator1 last1, RandomAccessIterator2 first2,
|
RandomAccessIterator1 first1, RandomAccessIterator1, RandomAccessIterator2 first2,
|
||||||
Result const& result, BinaryOperation op,
|
Result const& result, BinaryOperation op,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
|
@ -178,9 +178,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
transform_impl(
|
transform_impl(
|
||||||
InputIterator1 first1, InputIterator1 last1, InputIterator2 first2,
|
InputIterator1, InputIterator1, InputIterator2,
|
||||||
Result const& result, BinaryOperation op,
|
Result const& result, BinaryOperation,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -19,7 +19,7 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Container>::type
|
typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
>::type
|
>::type
|
||||||
unfold_impl_1(
|
unfold_impl_1(
|
||||||
Container const& cont, Generator const& gen, Next const& next,
|
Container const& cont, Generator const&, Next const& next,
|
||||||
typename sprout::container_traits<Container>::size_type size,
|
typename sprout::container_traits<Container>::size_type size,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
|
@ -50,7 +50,7 @@ namespace sprout {
|
||||||
sprout::container_traits<Container>::static_size == 0,
|
sprout::container_traits<Container>::static_size == 0,
|
||||||
typename sprout::fixed::result_of::algorithm<Container>::type
|
typename sprout::fixed::result_of::algorithm<Container>::type
|
||||||
>::type unfold_impl(
|
>::type unfold_impl(
|
||||||
Container const& cont, Generator const& gen, Init const& init,
|
Container const& cont, Generator const&, Init const&,
|
||||||
typename sprout::container_traits<Container>::size_type size
|
typename sprout::container_traits<Container>::size_type size
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -21,9 +21,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
unique_copy_impl(
|
unique_copy_impl(
|
||||||
InputIterator first, InputIterator last,
|
InputIterator, InputIterator,
|
||||||
Result const& result,
|
Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Head const& head,
|
Head const& head,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
|
@ -99,9 +99,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
unique_copy_impl(
|
unique_copy_impl(
|
||||||
InputIterator first, InputIterator last,
|
InputIterator, InputIterator,
|
||||||
Result const& result, BinaryPredicate pred,
|
Result const& result, BinaryPredicate,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Head const& head,
|
Head const& head,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
|
|
|
@ -164,7 +164,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator1, typename RandomAccessIterator2, typename BinaryPredicate>
|
template<typename RandomAccessIterator1, typename RandomAccessIterator2, typename BinaryPredicate>
|
||||||
inline SPROUT_CONSTEXPR RandomAccessIterator1
|
inline SPROUT_CONSTEXPR RandomAccessIterator1
|
||||||
mismatch2_impl_ra(
|
mismatch2_impl_ra(
|
||||||
RandomAccessIterator1 first1, RandomAccessIterator1 last1, RandomAccessIterator2 first2, RandomAccessIterator2 last2, BinaryPredicate pred,
|
RandomAccessIterator1 first1, RandomAccessIterator1, RandomAccessIterator2 first2, RandomAccessIterator2, BinaryPredicate pred,
|
||||||
typename std::iterator_traits<RandomAccessIterator1>::difference_type size
|
typename std::iterator_traits<RandomAccessIterator1>::difference_type size
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -148,8 +148,7 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl(
|
>::type join_impl(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, ContIterator last_cont,
|
||||||
ContIterator last_cont,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
);
|
);
|
||||||
template<typename Result, typename ContIterator, typename... Args>
|
template<typename Result, typename ContIterator, typename... Args>
|
||||||
|
@ -157,8 +156,7 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl(
|
>::type join_impl(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, ContIterator last_cont,
|
||||||
ContIterator last_cont,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
);
|
);
|
||||||
template<typename Result, typename ContIterator, typename InputIterator, typename... Args>
|
template<typename Result, typename ContIterator, typename InputIterator, typename... Args>
|
||||||
|
@ -166,10 +164,8 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl_1(
|
>::type join_impl_1(
|
||||||
ContIterator first_cont,
|
ContIterator, ContIterator,
|
||||||
ContIterator last_cont,
|
InputIterator, InputIterator,
|
||||||
InputIterator first,
|
|
||||||
InputIterator last,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -180,10 +176,8 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl_1(
|
>::type join_impl_1(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, ContIterator last_cont,
|
||||||
ContIterator last_cont,
|
InputIterator first, InputIterator last,
|
||||||
InputIterator first,
|
|
||||||
InputIterator last,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -201,8 +195,7 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl(
|
>::type join_impl(
|
||||||
ContIterator first_cont,
|
ContIterator, ContIterator,
|
||||||
ContIterator last_cont,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -213,8 +206,7 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl(
|
>::type join_impl(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, ContIterator last_cont,
|
||||||
ContIterator last_cont,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -279,8 +271,7 @@ namespace sprout {
|
||||||
template<typename Result, typename ContIterator, typename SepIterator, typename SizeIterator, typename Sizes>
|
template<typename Result, typename ContIterator, typename SepIterator, typename SizeIterator, typename Sizes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::container_traits<Result>::value_type
|
inline SPROUT_CONSTEXPR typename sprout::container_traits<Result>::value_type
|
||||||
join_impl_ra_2(
|
join_impl_ra_2(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, SepIterator first,
|
||||||
SepIterator first,
|
|
||||||
SizeIterator found,
|
SizeIterator found,
|
||||||
Sizes const& sizes,
|
Sizes const& sizes,
|
||||||
sprout::index_t idx
|
sprout::index_t idx
|
||||||
|
@ -337,8 +328,7 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl(
|
>::type join_impl(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, ContIterator last_cont,
|
||||||
ContIterator last_cont,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
);
|
);
|
||||||
template<typename Result, typename ContIterator, typename... Args>
|
template<typename Result, typename ContIterator, typename... Args>
|
||||||
|
@ -346,8 +336,7 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl(
|
>::type join_impl(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, ContIterator last_cont,
|
||||||
ContIterator last_cont,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
);
|
);
|
||||||
template<typename Result, typename ContIterator, typename SepIterator, typename InputIterator, typename... Args>
|
template<typename Result, typename ContIterator, typename SepIterator, typename InputIterator, typename... Args>
|
||||||
|
@ -355,13 +344,10 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl_1(
|
>::type join_impl_1(
|
||||||
ContIterator first_cont,
|
ContIterator, ContIterator,
|
||||||
ContIterator last_cont,
|
SepIterator, SepIterator,
|
||||||
SepIterator sep_first,
|
bool,
|
||||||
SepIterator sep_last,
|
InputIterator, InputIterator,
|
||||||
bool sep,
|
|
||||||
InputIterator first,
|
|
||||||
InputIterator last,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -372,13 +358,10 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl_1(
|
>::type join_impl_1(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, ContIterator last_cont,
|
||||||
ContIterator last_cont,
|
SepIterator sep_first, SepIterator sep_last,
|
||||||
SepIterator sep_first,
|
|
||||||
SepIterator sep_last,
|
|
||||||
bool sep,
|
bool sep,
|
||||||
InputIterator first,
|
InputIterator first, InputIterator last,
|
||||||
InputIterator last,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -410,11 +393,9 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
sprout::container_traits<Result>::static_size == sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl(
|
>::type join_impl(
|
||||||
ContIterator first_cont,
|
ContIterator, ContIterator,
|
||||||
ContIterator last_cont,
|
SepIterator, SepIterator,
|
||||||
SepIterator sep_first,
|
bool,
|
||||||
SepIterator sep_last,
|
|
||||||
bool sep,
|
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
@ -425,10 +406,8 @@ namespace sprout {
|
||||||
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
sprout::container_traits<Result>::static_size != sizeof...(Args),
|
||||||
Result
|
Result
|
||||||
>::type join_impl(
|
>::type join_impl(
|
||||||
ContIterator first_cont,
|
ContIterator first_cont, ContIterator last_cont,
|
||||||
ContIterator last_cont,
|
SepIterator sep_first, SepIterator sep_last,
|
||||||
SepIterator sep_first,
|
|
||||||
SepIterator sep_last,
|
|
||||||
bool sep,
|
bool sep,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
|
|
|
@ -149,7 +149,7 @@ namespace sprout {
|
||||||
template<sprout::index_t... Indexes>
|
template<sprout::index_t... Indexes>
|
||||||
SPROUT_CONSTEXPR base_bitset<N>
|
SPROUT_CONSTEXPR base_bitset<N>
|
||||||
do_left_shift_impl_1(
|
do_left_shift_impl_1(
|
||||||
std::size_t wshift, std::size_t offset,
|
std::size_t wshift, std::size_t,
|
||||||
sprout::index_tuple<Indexes...>
|
sprout::index_tuple<Indexes...>
|
||||||
) const SPROUT_NOEXCEPT
|
) const SPROUT_NOEXCEPT
|
||||||
{
|
{
|
||||||
|
@ -192,7 +192,7 @@ namespace sprout {
|
||||||
template<sprout::index_t... Indexes>
|
template<sprout::index_t... Indexes>
|
||||||
SPROUT_CONSTEXPR base_bitset<N>
|
SPROUT_CONSTEXPR base_bitset<N>
|
||||||
do_right_shift_impl_1(
|
do_right_shift_impl_1(
|
||||||
std::size_t wshift, std::size_t offset, std::size_t limit,
|
std::size_t wshift, std::size_t, std::size_t limit,
|
||||||
sprout::index_tuple<Indexes...>
|
sprout::index_tuple<Indexes...>
|
||||||
) const SPROUT_NOEXCEPT
|
) const SPROUT_NOEXCEPT
|
||||||
{
|
{
|
||||||
|
@ -696,7 +696,7 @@ namespace sprout {
|
||||||
return throw std::out_of_range("base_bitset::getword"), *new word_type();
|
return throw std::out_of_range("base_bitset::getword"), *new word_type();
|
||||||
}
|
}
|
||||||
SPROUT_CONSTEXPR word_type
|
SPROUT_CONSTEXPR word_type
|
||||||
getword(std::size_t pos) const SPROUT_NOEXCEPT {
|
getword(std::size_t) const SPROUT_NOEXCEPT {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
SPROUT_CONSTEXPR word_type
|
SPROUT_CONSTEXPR word_type
|
||||||
|
@ -854,8 +854,8 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Cont, typename... Args>
|
template<typename Cont, typename... Args>
|
||||||
static SPROUT_CONSTEXPR copied_type remake(
|
static SPROUT_CONSTEXPR copied_type remake(
|
||||||
Cont&& cont,
|
Cont&&,
|
||||||
typename sprout::container_traits<sprout::detail::base_bitset<N> >::difference_type size,
|
typename sprout::container_traits<sprout::detail::base_bitset<N> >::difference_type,
|
||||||
Args&&... args
|
Args&&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -76,10 +76,10 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<int D = 16, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
template<int D = 16, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
||||||
SPROUT_CONSTEXPR sha1 const process(
|
SPROUT_CONSTEXPR sha1 const process(
|
||||||
sprout::array<std::uint32_t, 5> const& h,
|
sprout::array<std::uint32_t, 5> const&,
|
||||||
sprout::array<std::uint8_t, 64> const& block,
|
sprout::array<std::uint8_t, 64> const&,
|
||||||
std::size_t block_byte_index,
|
std::size_t,
|
||||||
std::uint64_t bit_count
|
std::uint64_t
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
|
@ -101,8 +101,8 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<int D, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
template<int D, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
||||||
SPROUT_CONSTEXPR sha1 const process_block_2(
|
SPROUT_CONSTEXPR sha1 const process_block_2(
|
||||||
std::uint32_t a, std::uint32_t b, std::uint32_t c, std::uint32_t d, std::uint32_t e,
|
std::uint32_t, std::uint32_t, std::uint32_t, std::uint32_t, std::uint32_t,
|
||||||
std::size_t i, std::uint32_t f, std::uint32_t k
|
std::size_t, std::uint32_t, std::uint32_t
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
|
@ -137,8 +137,8 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<int D, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
template<int D, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
||||||
SPROUT_CONSTEXPR sha1 const process_block_1(
|
SPROUT_CONSTEXPR sha1 const process_block_1(
|
||||||
std::uint32_t a, std::uint32_t b, std::uint32_t c, std::uint32_t d, std::uint32_t e,
|
std::uint32_t, std::uint32_t, std::uint32_t, std::uint32_t, std::uint32_t,
|
||||||
std::size_t i = 0
|
std::size_t
|
||||||
) const
|
) const
|
||||||
{
|
{
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
|
@ -170,7 +170,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<int D = 16, typename Iterator, typename... Args, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
template<int D = 16, typename Iterator, typename... Args, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
||||||
SPROUT_CONSTEXPR typename std::enable_if<sizeof...(Args) == 64, sha1 const>::type
|
SPROUT_CONSTEXPR typename std::enable_if<sizeof...(Args) == 64, sha1 const>::type
|
||||||
process_block_impl(Iterator first, Iterator last, Args... args) const {
|
process_block_impl(Iterator, Iterator, Args...) const {
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
}
|
}
|
||||||
template<int D = 16, typename Iterator, typename... Args, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_CONTINUE(D)>
|
template<int D = 16, typename Iterator, typename... Args, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_CONTINUE(D)>
|
||||||
|
@ -193,7 +193,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<int D = 16, typename Iterator, typename... Args, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
template<int D = 16, typename Iterator, typename... Args, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
||||||
SPROUT_CONSTEXPR typename std::enable_if<sizeof...(Args) != 64, sha1 const>::type
|
SPROUT_CONSTEXPR typename std::enable_if<sizeof...(Args) != 64, sha1 const>::type
|
||||||
process_block_impl(Iterator first, Iterator last, Args... args) const {
|
process_block_impl(Iterator, Iterator, Args...) const {
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
|
|
|
@ -39,13 +39,13 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Outdirected>
|
template<typename Outdirected>
|
||||||
SPROUT_CONSTEXPR typename std::iterator_traits<Outdirected>::value_type
|
SPROUT_CONSTEXPR typename std::iterator_traits<Outdirected>::value_type
|
||||||
calc_1(Outdirected const& x, value_type const& tau, value_type const& t) const {
|
calc_1(Outdirected const& x, value_type const& t) const {
|
||||||
return calc_2(x, static_cast<typename Outdirected::index_type>(t), t - static_cast<typename Outdirected::index_type>(t));
|
return calc_2(x, static_cast<typename Outdirected::index_type>(t), t - static_cast<typename Outdirected::index_type>(t));
|
||||||
}
|
}
|
||||||
template<typename Outdirected>
|
template<typename Outdirected>
|
||||||
SPROUT_CONSTEXPR typename std::iterator_traits<Outdirected>::value_type
|
SPROUT_CONSTEXPR typename std::iterator_traits<Outdirected>::value_type
|
||||||
calc(Outdirected const& x, value_type const& tau) const {
|
calc(Outdirected const& x, value_type const& tau) const {
|
||||||
return calc_1(x, tau, x.index() - tau);
|
return calc_1(x, x.index() - tau);
|
||||||
}
|
}
|
||||||
public:
|
public:
|
||||||
SPROUT_CONSTEXPR chorus_outdirected_value(
|
SPROUT_CONSTEXPR chorus_outdirected_value(
|
||||||
|
|
|
@ -68,7 +68,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Range>
|
template<typename Range>
|
||||||
inline SPROUT_CONSTEXPR auto
|
inline SPROUT_CONSTEXPR auto
|
||||||
operator|(Range&& lhs, sprout::compost::effects::clipped_forwarder const& rhs)
|
operator|(Range&& lhs, sprout::compost::effects::clipped_forwarder const&)
|
||||||
-> decltype(
|
-> decltype(
|
||||||
sprout::forward<Range>(lhs)
|
sprout::forward<Range>(lhs)
|
||||||
| sprout::adaptors::clamped(-1., 1.)
|
| sprout::adaptors::clamped(-1., 1.)
|
||||||
|
|
|
@ -49,7 +49,7 @@ namespace sprout {
|
||||||
//
|
//
|
||||||
template<typename Range>
|
template<typename Range>
|
||||||
inline SPROUT_CONSTEXPR auto
|
inline SPROUT_CONSTEXPR auto
|
||||||
operator|(Range&& lhs, sprout::compost::effects::rectified_forwarder const& rhs)
|
operator|(Range&& lhs, sprout::compost::effects::rectified_forwarder const&)
|
||||||
-> decltype(
|
-> decltype(
|
||||||
sprout::forward<Range>(lhs)
|
sprout::forward<Range>(lhs)
|
||||||
| sprout::adaptors::transformed(sprout::compost::rectify_value<>())
|
| sprout::adaptors::transformed(sprout::compost::rectify_value<>())
|
||||||
|
|
|
@ -38,13 +38,13 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Outdirected>
|
template<typename Outdirected>
|
||||||
SPROUT_CONSTEXPR typename std::iterator_traits<Outdirected>::value_type
|
SPROUT_CONSTEXPR typename std::iterator_traits<Outdirected>::value_type
|
||||||
calc_1(Outdirected const& x, value_type const& tau, value_type const& t) const {
|
calc_1(Outdirected const& x, value_type const& t) const {
|
||||||
return calc_2(x, static_cast<typename Outdirected::index_type>(t), t - static_cast<typename Outdirected::index_type>(t));
|
return calc_2(x, static_cast<typename Outdirected::index_type>(t), t - static_cast<typename Outdirected::index_type>(t));
|
||||||
}
|
}
|
||||||
template<typename Outdirected>
|
template<typename Outdirected>
|
||||||
SPROUT_CONSTEXPR typename std::iterator_traits<Outdirected>::value_type
|
SPROUT_CONSTEXPR typename std::iterator_traits<Outdirected>::value_type
|
||||||
calc(Outdirected const& x, value_type const& tau) const {
|
calc(Outdirected const& x, value_type const& tau) const {
|
||||||
return calc_1(x, tau, x.index() - tau);
|
return calc_1(x, x.index() - tau);
|
||||||
}
|
}
|
||||||
public:
|
public:
|
||||||
SPROUT_CONSTEXPR vibrato_outdirected_value(
|
SPROUT_CONSTEXPR vibrato_outdirected_value(
|
||||||
|
|
|
@ -37,7 +37,7 @@ namespace sprout {
|
||||||
//
|
//
|
||||||
template<typename Range>
|
template<typename Range>
|
||||||
inline SPROUT_CONSTEXPR auto
|
inline SPROUT_CONSTEXPR auto
|
||||||
operator|(Range&& lhs, sprout::compost::formats::as_complex_forwarder const& rhs)
|
operator|(Range&& lhs, sprout::compost::formats::as_complex_forwarder const&)
|
||||||
-> decltype(
|
-> decltype(
|
||||||
sprout::forward<Range>(lhs)
|
sprout::forward<Range>(lhs)
|
||||||
| sprout::adaptors::transformed(sprout::compost::to_complex_value())
|
| sprout::adaptors::transformed(sprout::compost::to_complex_value())
|
||||||
|
|
|
@ -38,7 +38,7 @@ namespace sprout {
|
||||||
//
|
//
|
||||||
template<typename Range>
|
template<typename Range>
|
||||||
inline SPROUT_CONSTEXPR auto
|
inline SPROUT_CONSTEXPR auto
|
||||||
operator|(Range&& lhs, sprout::compost::formats::as_imag_forwarder const& rhs)
|
operator|(Range&& lhs, sprout::compost::formats::as_imag_forwarder const&)
|
||||||
-> decltype(
|
-> decltype(
|
||||||
sprout::forward<Range>(lhs)
|
sprout::forward<Range>(lhs)
|
||||||
| sprout::adaptors::transformed(sprout::compost::to_imag_value())
|
| sprout::adaptors::transformed(sprout::compost::to_imag_value())
|
||||||
|
|
|
@ -72,7 +72,7 @@ namespace sprout {
|
||||||
//
|
//
|
||||||
template<typename Range, typename IntType>
|
template<typename Range, typename IntType>
|
||||||
inline SPROUT_CONSTEXPR auto
|
inline SPROUT_CONSTEXPR auto
|
||||||
operator|(Range&& lhs, sprout::compost::formats::as_pcm_wave_forwarder<IntType> const& rhs)
|
operator|(Range&& lhs, sprout::compost::formats::as_pcm_wave_forwarder<IntType> const&)
|
||||||
-> decltype(
|
-> decltype(
|
||||||
sprout::forward<Range>(lhs)
|
sprout::forward<Range>(lhs)
|
||||||
| sprout::adaptors::transformed(sprout::compost::normalized_to_pcm_wave<IntType>())
|
| sprout::adaptors::transformed(sprout::compost::normalized_to_pcm_wave<IntType>())
|
||||||
|
|
|
@ -38,7 +38,7 @@ namespace sprout {
|
||||||
//
|
//
|
||||||
template<typename Range>
|
template<typename Range>
|
||||||
inline SPROUT_CONSTEXPR auto
|
inline SPROUT_CONSTEXPR auto
|
||||||
operator|(Range&& lhs, sprout::compost::formats::as_real_forwarder const& rhs)
|
operator|(Range&& lhs, sprout::compost::formats::as_real_forwarder const&)
|
||||||
-> decltype(
|
-> decltype(
|
||||||
sprout::forward<Range>(lhs)
|
sprout::forward<Range>(lhs)
|
||||||
| sprout::adaptors::transformed(sprout::compost::to_real_value())
|
| sprout::adaptors::transformed(sprout::compost::to_real_value())
|
||||||
|
|
|
@ -25,7 +25,7 @@ namespace sprout {
|
||||||
//
|
//
|
||||||
template<typename Range, typename T>
|
template<typename Range, typename T>
|
||||||
inline SPROUT_CONSTEXPR auto
|
inline SPROUT_CONSTEXPR auto
|
||||||
operator|(Range&& lhs, left_channel_forwarder const& rhs)
|
operator|(Range&& lhs, left_channel_forwarder const&)
|
||||||
-> decltype(
|
-> decltype(
|
||||||
sprout::forward<Range>(lhs)
|
sprout::forward<Range>(lhs)
|
||||||
| sprout::adaptors::steps(2)
|
| sprout::adaptors::steps(2)
|
||||||
|
|
|
@ -25,7 +25,7 @@ namespace sprout {
|
||||||
//
|
//
|
||||||
template<typename Range, typename T>
|
template<typename Range, typename T>
|
||||||
inline SPROUT_CONSTEXPR auto
|
inline SPROUT_CONSTEXPR auto
|
||||||
operator|(Range&& lhs, right_channel_forwarder const& rhs)
|
operator|(Range&& lhs, right_channel_forwarder const&)
|
||||||
-> decltype(
|
-> decltype(
|
||||||
sprout::forward<Range>(lhs)
|
sprout::forward<Range>(lhs)
|
||||||
| sprout::adaptors::steps(2, 1)
|
| sprout::adaptors::steps(2, 1)
|
||||||
|
|
|
@ -30,7 +30,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_lpf_impl_2(T const& fc, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
iir_lpf_impl_2(T const&, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -82,7 +82,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_hpf_impl_2(T const& fc, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
iir_hpf_impl_2(T const&, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -134,7 +134,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_bpf_impl_2(T const& fc, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
iir_bpf_impl_2(T const&, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -152,9 +152,9 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_bpf_impl_1(T const& fc, T const& q, A const& a, B const& b, T const& x, T const& x2) {
|
iir_bpf_impl_1(T const& fc1, A const& a, B const& b, T const& x, T const& x2) {
|
||||||
return sprout::compost::detail::iir_bpf_impl_2<Result>(
|
return sprout::compost::detail::iir_bpf_impl_2<Result>(
|
||||||
fc, q, a, b,
|
fc1, a, b,
|
||||||
x, x2, 1 + x + x2
|
x, x2, 1 + x + x2
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -162,7 +162,7 @@ namespace sprout {
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_bpf_impl(T const& fc1, T const& fc2, A const& a, B const& b) {
|
iir_bpf_impl(T const& fc1, T const& fc2, A const& a, B const& b) {
|
||||||
return sprout::compost::detail::iir_bpf_impl_1<Result>(
|
return sprout::compost::detail::iir_bpf_impl_1<Result>(
|
||||||
fc1, fc2, a, b,
|
fc1, a, b,
|
||||||
sprout::math::two_pi<T>() * (fc2 - fc1),
|
sprout::math::two_pi<T>() * (fc2 - fc1),
|
||||||
sprout::math::four_pi<T>() * fc1 * fc2
|
sprout::math::four_pi<T>() * fc1 * fc2
|
||||||
);
|
);
|
||||||
|
@ -190,7 +190,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_bef_impl_2(T const& fc, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
iir_bef_impl_2(T const&, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -208,9 +208,9 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_bef_impl_1(T const& fc, T const& q, A const& a, B const& b, T const& x, T const& x2) {
|
iir_bef_impl_1(T const& fc1, A const& a, B const& b, T const& x, T const& x2) {
|
||||||
return sprout::compost::detail::iir_bef_impl_2<Result>(
|
return sprout::compost::detail::iir_bef_impl_2<Result>(
|
||||||
fc, q, a, b,
|
fc1, a, b,
|
||||||
x, x2, 1 + x + x2
|
x, x2, 1 + x + x2
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -218,7 +218,7 @@ namespace sprout {
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_bef_impl(T const& fc1, T const& fc2, A const& a, B const& b) {
|
iir_bef_impl(T const& fc1, T const& fc2, A const& a, B const& b) {
|
||||||
return sprout::compost::detail::iir_bef_impl_1<Result>(
|
return sprout::compost::detail::iir_bef_impl_1<Result>(
|
||||||
fc1, fc2, a, b,
|
fc1, a, b,
|
||||||
sprout::math::two_pi<T>() * (fc2 - fc1),
|
sprout::math::two_pi<T>() * (fc2 - fc1),
|
||||||
sprout::math::four_pi<T>() * fc1 * fc2
|
sprout::math::four_pi<T>() * fc1 * fc2
|
||||||
);
|
);
|
||||||
|
@ -246,7 +246,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_resonator_impl_2(T const& fc, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
iir_resonator_impl_2(T const&, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -298,7 +298,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_notch_impl_2(T const& fc, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
iir_notch_impl_2(T const&, T const& q, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -350,7 +350,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_low_shelving_impl_2(T const& fc, T const& q, T const& g, A const& a, B const& b, T const& x, T const& x2, T const& y, T const& g_) {
|
iir_low_shelving_impl_2(T const&, T const& q, T const& g, A const& a, B const& b, T const& x, T const& x2, T const& y, T const& g_) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -379,7 +379,7 @@ namespace sprout {
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_low_shelving_impl(T const& fc, T const& q, T const& g, A const& a, B const& b) {
|
iir_low_shelving_impl(T const& fc, T const& q, T const& g, A const& a, B const& b) {
|
||||||
return sprout::compost::detail::iir_low_shelving_impl_1<Result>(
|
return sprout::compost::detail::iir_low_shelving_impl_1<Result>(
|
||||||
fc, q, a, b,
|
fc, q, g, a, b,
|
||||||
sprout::math::two_pi<T>() * fc
|
sprout::math::two_pi<T>() * fc
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -406,7 +406,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_high_shelving_impl_2(T const& fc, T const& q, T const& g, A const& a, B const& b, T const& x, T const& x2, T const& y, T const& g_) {
|
iir_high_shelving_impl_2(T const&, T const& q, T const& g, A const& a, B const& b, T const& x, T const& x2, T const& y, T const& g_) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -435,7 +435,7 @@ namespace sprout {
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_high_shelving_impl(T const& fc, T const& q, T const& g, A const& a, B const& b) {
|
iir_high_shelving_impl(T const& fc, T const& q, T const& g, A const& a, B const& b) {
|
||||||
return sprout::compost::detail::iir_high_shelving_impl_1<Result>(
|
return sprout::compost::detail::iir_high_shelving_impl_1<Result>(
|
||||||
fc, q, a, b,
|
fc, q, g, a, b,
|
||||||
sprout::math::two_pi<T>() * fc
|
sprout::math::two_pi<T>() * fc
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
@ -462,7 +462,7 @@ namespace sprout {
|
||||||
namespace detail {
|
namespace detail {
|
||||||
template<typename Result, typename T, typename A, typename B>
|
template<typename Result, typename T, typename A, typename B>
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_peaking_impl_2(T const& fc, T const& q, T const& g, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
iir_peaking_impl_2(T const&, T const& q, T const& g, A const& a, B const& b, T const& x, T const& x2, T const& y) {
|
||||||
return Result(
|
return Result(
|
||||||
sprout::remake<A>(
|
sprout::remake<A>(
|
||||||
a, 3,
|
a, 3,
|
||||||
|
@ -490,7 +490,7 @@ namespace sprout {
|
||||||
inline SPROUT_CONSTEXPR Result
|
inline SPROUT_CONSTEXPR Result
|
||||||
iir_peaking_impl(T const& fc, T const& q, T const& g, A const& a, B const& b) {
|
iir_peaking_impl(T const& fc, T const& q, T const& g, A const& a, B const& b) {
|
||||||
return sprout::compost::detail::iir_peaking_impl_1<Result>(
|
return sprout::compost::detail::iir_peaking_impl_1<Result>(
|
||||||
fc, q, a, b,
|
fc, q, g, a, b,
|
||||||
sprout::math::two_pi<T>() * fc
|
sprout::math::two_pi<T>() * fc
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -213,7 +213,7 @@ namespace sprout {
|
||||||
SPROUT_CONSTEXPR second_const_reference second() const {
|
SPROUT_CONSTEXPR second_const_reference second() const {
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
void swap(compressed_pair_impl& other) {}
|
void swap(compressed_pair_impl&) {}
|
||||||
};
|
};
|
||||||
template<typename T1, typename T2>
|
template<typename T1, typename T2>
|
||||||
class compressed_pair_impl<T1, T2, 4>
|
class compressed_pair_impl<T1, T2, 4>
|
||||||
|
@ -252,7 +252,7 @@ namespace sprout {
|
||||||
SPROUT_CONSTEXPR second_const_reference second() const {
|
SPROUT_CONSTEXPR second_const_reference second() const {
|
||||||
return second_;
|
return second_;
|
||||||
}
|
}
|
||||||
void swap(compressed_pair_impl& other) {}
|
void swap(compressed_pair_impl&) {}
|
||||||
};
|
};
|
||||||
template<typename T1, typename T2>
|
template<typename T1, typename T2>
|
||||||
class compressed_pair_impl<T1, T2, 5>
|
class compressed_pair_impl<T1, T2, 5>
|
||||||
|
|
|
@ -47,7 +47,7 @@ namespace sprout {
|
||||||
sprout::is_fixed_container<Container>::value,
|
sprout::is_fixed_container<Container>::value,
|
||||||
typename sprout::container_construct_traits<Container>::copied_type
|
typename sprout::container_construct_traits<Container>::copied_type
|
||||||
>::type
|
>::type
|
||||||
default_remake_container(Cont&& cont, typename sprout::container_traits<Container>::difference_type size, Args&&... args) {
|
default_remake_container(Cont&&, typename sprout::container_traits<Container>::difference_type, Args&&... args) {
|
||||||
return sprout::container_construct_traits<Container>::make(sprout::forward<Args>(args)...);
|
return sprout::container_construct_traits<Container>::make(sprout::forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
template<typename Container, typename Cont, typename... Args>
|
template<typename Container, typename Cont, typename... Args>
|
||||||
|
@ -57,7 +57,7 @@ namespace sprout {
|
||||||
,
|
,
|
||||||
typename sprout::container_construct_traits<Container>::copied_type
|
typename sprout::container_construct_traits<Container>::copied_type
|
||||||
>::type
|
>::type
|
||||||
default_remake_container(Cont&& cont, typename sprout::container_traits<Container>::difference_type size, Args&&... args) {
|
default_remake_container(Cont&&, typename sprout::container_traits<Container>::difference_type, Args&&... args) {
|
||||||
return sprout::container_construct_traits<Container>::make(sprout::forward<Args>(args)...);
|
return sprout::container_construct_traits<Container>::make(sprout::forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
template<typename Container, typename Cont, typename InputIterator>
|
template<typename Container, typename Cont, typename InputIterator>
|
||||||
|
@ -65,7 +65,7 @@ namespace sprout {
|
||||||
!sprout::is_fixed_container<Container>::value,
|
!sprout::is_fixed_container<Container>::value,
|
||||||
typename sprout::container_construct_traits<Container>::copied_type
|
typename sprout::container_construct_traits<Container>::copied_type
|
||||||
>::type
|
>::type
|
||||||
default_remake_container(Cont&& cont, typename sprout::container_traits<Container>::difference_type size, InputIterator first, InputIterator last) {
|
default_remake_container(Cont&& cont, typename sprout::container_traits<Container>::difference_type, InputIterator first, InputIterator last) {
|
||||||
typedef typename sprout::container_construct_traits<Container>::copied_type copied_type;
|
typedef typename sprout::container_construct_traits<Container>::copied_type copied_type;
|
||||||
return copied_type(
|
return copied_type(
|
||||||
sprout::make_remake_iterator(
|
sprout::make_remake_iterator(
|
||||||
|
|
|
@ -45,8 +45,7 @@ namespace sprout {
|
||||||
FloatType number = FloatType(),
|
FloatType number = FloatType(),
|
||||||
std::size_t num_digits = 0,
|
std::size_t num_digits = 0,
|
||||||
std::size_t num_decimals = 0,
|
std::size_t num_decimals = 0,
|
||||||
long exponent = 0,
|
long exponent = 0
|
||||||
long n = 0
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return exponent >= std::numeric_limits<FloatType>::min_exponent
|
return exponent >= std::numeric_limits<FloatType>::min_exponent
|
||||||
|
@ -91,8 +90,7 @@ namespace sprout {
|
||||||
number,
|
number,
|
||||||
num_digits,
|
num_digits,
|
||||||
num_decimals,
|
num_decimals,
|
||||||
negative ? exponent + n : exponent - n,
|
negative ? exponent + n : exponent - n
|
||||||
n
|
|
||||||
)
|
)
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
@ -259,7 +257,7 @@ namespace sprout {
|
||||||
std::is_floating_point<FloatType>::value,
|
std::is_floating_point<FloatType>::value,
|
||||||
FloatType
|
FloatType
|
||||||
>::type
|
>::type
|
||||||
str_to_float(Char const* str, std::nullptr_t endptr) {
|
str_to_float(Char const* str, std::nullptr_t) {
|
||||||
return sprout::detail::str_to_float<FloatType>(str);
|
return sprout::detail::str_to_float<FloatType>(str);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -129,7 +129,7 @@ namespace sprout {
|
||||||
std::is_integral<IntType>::value,
|
std::is_integral<IntType>::value,
|
||||||
IntType
|
IntType
|
||||||
>::type
|
>::type
|
||||||
str_to_int(Char const* str, std::nullptr_t endptr, int base = 10) {
|
str_to_int(Char const* str, std::nullptr_t, int base = 10) {
|
||||||
return sprout::detail::str_to_int<IntType>(str, base);
|
return sprout::detail::str_to_int<IntType>(str, base);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -16,7 +16,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
inline SPROUT_CONSTEXPR double
|
inline SPROUT_CONSTEXPR double
|
||||||
strtod(Char const* str, std::nullptr_t endptr) {
|
strtod(Char const* str, std::nullptr_t) {
|
||||||
return sprout::str_to_float<double>(str);
|
return sprout::str_to_float<double>(str);
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
|
|
|
@ -16,7 +16,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
inline SPROUT_CONSTEXPR float
|
inline SPROUT_CONSTEXPR float
|
||||||
strtof(Char const* str, std::nullptr_t endptr) {
|
strtof(Char const* str, std::nullptr_t) {
|
||||||
return sprout::str_to_float<float>(str);
|
return sprout::str_to_float<float>(str);
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
|
|
|
@ -20,7 +20,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
inline SPROUT_CONSTEXPR long
|
inline SPROUT_CONSTEXPR long
|
||||||
strtol(Char const* str, std::nullptr_t endptr, int base = 10) {
|
strtol(Char const* str, std::nullptr_t, int base = 10) {
|
||||||
return sprout::str_to_int<long>(str, base);
|
return sprout::str_to_int<long>(str, base);
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
|
|
|
@ -16,7 +16,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
inline SPROUT_CONSTEXPR long double
|
inline SPROUT_CONSTEXPR long double
|
||||||
strtold(Char const* str, std::nullptr_t endptr) {
|
strtold(Char const* str, std::nullptr_t) {
|
||||||
return sprout::str_to_float<long double>(str);
|
return sprout::str_to_float<long double>(str);
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
|
|
|
@ -20,7 +20,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
inline SPROUT_CONSTEXPR long long
|
inline SPROUT_CONSTEXPR long long
|
||||||
strtoll(Char const* str, std::nullptr_t endptr, int base = 10) {
|
strtoll(Char const* str, std::nullptr_t, int base = 10) {
|
||||||
return sprout::str_to_int<long long>(str, base);
|
return sprout::str_to_int<long long>(str, base);
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
|
|
|
@ -20,7 +20,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
inline SPROUT_CONSTEXPR unsigned long
|
inline SPROUT_CONSTEXPR unsigned long
|
||||||
strtoul(Char const* str, std::nullptr_t endptr, int base = 10) {
|
strtoul(Char const* str, std::nullptr_t, int base = 10) {
|
||||||
return sprout::str_to_int<unsigned long>(str, base);
|
return sprout::str_to_int<unsigned long>(str, base);
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
|
|
|
@ -20,7 +20,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
inline SPROUT_CONSTEXPR unsigned long long
|
inline SPROUT_CONSTEXPR unsigned long long
|
||||||
strtoull(Char const* str, std::nullptr_t endptr, int base = 10) {
|
strtoull(Char const* str, std::nullptr_t, int base = 10) {
|
||||||
return sprout::str_to_int<unsigned long long>(str, base);
|
return sprout::str_to_int<unsigned long long>(str, base);
|
||||||
}
|
}
|
||||||
template<typename Char>
|
template<typename Char>
|
||||||
|
|
|
@ -56,7 +56,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Ray>
|
template<typename Ray>
|
||||||
SPROUT_CONSTEXPR typename intersection<Ray>::type
|
SPROUT_CONSTEXPR typename intersection<Ray>::type
|
||||||
intersect_5(Ray const& ray, int hit_side, bool does_intersect, unit_type distance) const {
|
intersect_5(Ray const& ray, int /*hit_side*/, bool does_intersect, unit_type distance) const {
|
||||||
return typename intersection<Ray>::type(
|
return typename intersection<Ray>::type(
|
||||||
does_intersect,
|
does_intersect,
|
||||||
distance,
|
distance,
|
||||||
|
|
|
@ -61,7 +61,7 @@ namespace sprout {
|
||||||
private:
|
private:
|
||||||
template<typename Ray>
|
template<typename Ray>
|
||||||
SPROUT_CONSTEXPR zwo_type
|
SPROUT_CONSTEXPR zwo_type
|
||||||
zweitens_2(Ray const& ray, unit_type const& i1, unit_type const& i2, int hit_side, bool does_intersect) const {
|
zweitens_2(Ray const&, unit_type const& i1, unit_type const& i2, int hit_side, bool does_intersect) const {
|
||||||
return zwo_type(
|
return zwo_type(
|
||||||
hit_side,
|
hit_side,
|
||||||
does_intersect,
|
does_intersect,
|
||||||
|
@ -94,7 +94,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Ray>
|
template<typename Ray>
|
||||||
SPROUT_CONSTEXPR drei_type
|
SPROUT_CONSTEXPR drei_type
|
||||||
drittens_1(Ray const& ray, typename sprout::darkroom::access::unit<Ray>::type point_of_intersection) const {
|
drittens_1(Ray const&, typename sprout::darkroom::access::unit<Ray>::type point_of_intersection) const {
|
||||||
return drei_type(
|
return drei_type(
|
||||||
point_of_intersection,
|
point_of_intersection,
|
||||||
sprout::darkroom::coords::normalize(
|
sprout::darkroom::coords::normalize(
|
||||||
|
@ -115,7 +115,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Ray, typename Vec>
|
template<typename Ray, typename Vec>
|
||||||
SPROUT_CONSTEXPR typename intersection<Ray>::type
|
SPROUT_CONSTEXPR typename intersection<Ray>::type
|
||||||
intersect_6(Ray const& ray, zwo_type const& zwo, drei_type const& drei, Vec const& normal) const {
|
intersect_6(Ray const&, zwo_type const& zwo, drei_type const& drei, Vec const& normal) const {
|
||||||
return typename intersection<Ray>::type(
|
return typename intersection<Ray>::type(
|
||||||
sprout::tuples::get<zw::does_intersect>(zwo),
|
sprout::tuples::get<zw::does_intersect>(zwo),
|
||||||
sprout::tuples::get<zw::distance>(zwo),
|
sprout::tuples::get<zw::distance>(zwo),
|
||||||
|
|
|
@ -61,7 +61,7 @@ namespace sprout {
|
||||||
pixels_type pixels_;
|
pixels_type pixels_;
|
||||||
public:
|
public:
|
||||||
template<typename... Elems>
|
template<typename... Elems>
|
||||||
SPROUT_CONSTEXPR image_type(info_type const& info, Elems const&... elems)
|
SPROUT_CONSTEXPR image_type(info_type const&, Elems const&... elems)
|
||||||
: pixels_{{
|
: pixels_{{
|
||||||
color_type(
|
color_type(
|
||||||
static_cast<color_component_type>((elems >> 16) & 0xFF) / 0xFF,
|
static_cast<color_component_type>((elems >> 16) & 0xFF) / 0xFF,
|
||||||
|
|
|
@ -15,7 +15,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator1, typename RandomAccessIterator2, typename BinaryPredicate>
|
template<typename RandomAccessIterator1, typename RandomAccessIterator2, typename BinaryPredicate>
|
||||||
inline SPROUT_CONSTEXPR RandomAccessIterator1
|
inline SPROUT_CONSTEXPR RandomAccessIterator1
|
||||||
search_one_impl_ra(
|
search_one_impl_ra(
|
||||||
RandomAccessIterator1 first1, RandomAccessIterator1 last1, RandomAccessIterator2 first2, RandomAccessIterator2 last2, BinaryPredicate pred
|
RandomAccessIterator1 first1, RandomAccessIterator1 last1, RandomAccessIterator2 first2, RandomAccessIterator2, BinaryPredicate pred
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
return sprout::mismatch(first1, last1, first2, pred).first == last1 ? first1
|
return sprout::mismatch(first1, last1, first2, pred).first == last1 ? first1
|
||||||
|
|
|
@ -33,7 +33,7 @@ namespace sprout {
|
||||||
>::type
|
>::type
|
||||||
container_complate_1(
|
container_complate_1(
|
||||||
Result const& result,
|
Result const& result,
|
||||||
typename sprout::container_traits<Result>::difference_type remain,
|
typename sprout::container_traits<Result>::difference_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -33,7 +33,7 @@ namespace sprout {
|
||||||
>::type
|
>::type
|
||||||
container_complate_backward_1(
|
container_complate_backward_1(
|
||||||
Result const& result,
|
Result const& result,
|
||||||
typename sprout::container_traits<Result>::difference_type remain,
|
typename sprout::container_traits<Result>::difference_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -12,7 +12,7 @@ namespace sprout {
|
||||||
sizeof...(Values) == 0,
|
sizeof...(Values) == 0,
|
||||||
R
|
R
|
||||||
>::type
|
>::type
|
||||||
param_at(std::size_t n, T const& v, Values const&... values) {
|
param_at(std::size_t, T const& v, Values const&...) {
|
||||||
return v;
|
return v;
|
||||||
}
|
}
|
||||||
template<typename R, typename T, typename... Values>
|
template<typename R, typename T, typename... Values>
|
||||||
|
@ -29,7 +29,7 @@ namespace sprout {
|
||||||
sizeof...(Values) == 0,
|
sizeof...(Values) == 0,
|
||||||
R
|
R
|
||||||
>::type
|
>::type
|
||||||
param_seq_at(std::size_t n, std::size_t m, T const& v, Values const&... values) {
|
param_seq_at(std::size_t, std::size_t m, T const& v, Values const&...) {
|
||||||
return v[m];
|
return v[m];
|
||||||
}
|
}
|
||||||
template<typename R, typename T, typename... Values>
|
template<typename R, typename T, typename... Values>
|
||||||
|
|
|
@ -21,7 +21,7 @@ namespace sprout {
|
||||||
static SPROUT_CONSTEXPR std::size_t size() {
|
static SPROUT_CONSTEXPR std::size_t size() {
|
||||||
return sizeof(type);
|
return sizeof(type);
|
||||||
}
|
}
|
||||||
static SPROUT_CONSTEXPR unsigned char get_byte(type const& t, std::size_t i) {
|
static SPROUT_CONSTEXPR unsigned char get_byte(type const& t, std::size_t) {
|
||||||
return static_cast<unsigned char>(t);
|
return static_cast<unsigned char>(t);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
@ -57,7 +57,7 @@ namespace sprout {
|
||||||
static SPROUT_CONSTEXPR std::size_t size() {
|
static SPROUT_CONSTEXPR std::size_t size() {
|
||||||
return sizeof(type);
|
return sizeof(type);
|
||||||
}
|
}
|
||||||
static SPROUT_CONSTEXPR unsigned char get_byte(type const& t, std::size_t i) {
|
static SPROUT_CONSTEXPR unsigned char get_byte(type const& t, std::size_t) {
|
||||||
return static_cast<unsigned char>(t);
|
return static_cast<unsigned char>(t);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -265,7 +265,7 @@ namespace sprout {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
template<sprout::io::flags::fmtflags Flag, sprout::io::flags::fmtflags Mask>
|
template<sprout::io::flags::fmtflags Flag, sprout::io::flags::fmtflags Mask>
|
||||||
SPROUT_CONSTEXPR format_settings flags(sprout::io::flags::field_flag<Flag, Mask> flag) const {
|
SPROUT_CONSTEXPR format_settings flags(sprout::io::flags::field_flag<Flag, Mask>) const {
|
||||||
return format_settings(
|
return format_settings(
|
||||||
*this,
|
*this,
|
||||||
static_cast<sprout::io::flags::fmtflags>(
|
static_cast<sprout::io::flags::fmtflags>(
|
||||||
|
|
|
@ -111,7 +111,7 @@ namespace sprout {
|
||||||
private:
|
private:
|
||||||
template<typename Cont, typename InputIterator>
|
template<typename Cont, typename InputIterator>
|
||||||
static SPROUT_CONSTEXPR copied_type
|
static SPROUT_CONSTEXPR copied_type
|
||||||
remake_impl(Cont&& cont, typename sprout::container_traits<Container>::difference_type size, InputIterator first, InputIterator last) {
|
remake_impl(Cont&& cont, InputIterator first, InputIterator last) {
|
||||||
return sprout::make<copied_type>(
|
return sprout::make<copied_type>(
|
||||||
sprout::make_insert_range_iterator(
|
sprout::make_insert_range_iterator(
|
||||||
sprout::internal_begin(cont), sprout::end(cont),
|
sprout::internal_begin(cont), sprout::end(cont),
|
||||||
|
@ -136,8 +136,8 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Cont, typename... Args>
|
template<typename Cont, typename... Args>
|
||||||
static SPROUT_CONSTEXPR copied_type
|
static SPROUT_CONSTEXPR copied_type
|
||||||
remake(Cont&& cont, typename sprout::container_traits<Container>::difference_type size, Args&&... args) {
|
remake(Cont&& cont, typename sprout::container_traits<Container>::difference_type, Args&&... args) {
|
||||||
return remake_impl(sprout::get_internal(sprout::forward<Cont>(cont)), size, sprout::forward<Args>(args)...);
|
return remake_impl(sprout::get_internal(sprout::forward<Cont>(cont)), sprout::forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -111,7 +111,7 @@ namespace sprout {
|
||||||
private:
|
private:
|
||||||
template<typename Cont, typename InputIterator>
|
template<typename Cont, typename InputIterator>
|
||||||
static SPROUT_CONSTEXPR copied_type
|
static SPROUT_CONSTEXPR copied_type
|
||||||
remake_impl(Cont&& cont, typename sprout::container_traits<Container>::difference_type size, InputIterator first, InputIterator last) {
|
remake_impl(Cont&& cont, InputIterator first, InputIterator last) {
|
||||||
return sprout::make<copied_type>(
|
return sprout::make<copied_type>(
|
||||||
sprout::make_insert_range_iterator(
|
sprout::make_insert_range_iterator(
|
||||||
sprout::internal_begin(cont), sprout::begin(cont),
|
sprout::internal_begin(cont), sprout::begin(cont),
|
||||||
|
@ -136,8 +136,8 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Cont, typename... Args>
|
template<typename Cont, typename... Args>
|
||||||
static SPROUT_CONSTEXPR copied_type
|
static SPROUT_CONSTEXPR copied_type
|
||||||
remake(Cont&& cont, typename sprout::container_traits<Container>::difference_type size, Args&&... args) {
|
remake(Cont&& cont, typename sprout::container_traits<Container>::difference_type, Args&&... args) {
|
||||||
return remake_impl(sprout::get_internal(sprout::forward<Cont>(cont)), size, sprout::forward<Args>(args)...);
|
return remake_impl(sprout::get_internal(sprout::forward<Cont>(cont)), sprout::forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -120,7 +120,7 @@ namespace sprout {
|
||||||
private:
|
private:
|
||||||
template<typename Iterator, typename Cont, typename InputIterator>
|
template<typename Iterator, typename Cont, typename InputIterator>
|
||||||
static SPROUT_CONSTEXPR copied_type
|
static SPROUT_CONSTEXPR copied_type
|
||||||
remake_impl(Iterator pos, Cont&& cont, typename sprout::container_traits<Container>::difference_type size, InputIterator first, InputIterator last) {
|
remake_impl(Iterator pos, Cont&& cont, InputIterator first, InputIterator last) {
|
||||||
return sprout::make<copied_type>(
|
return sprout::make<copied_type>(
|
||||||
sprout::make_insert_range_iterator(
|
sprout::make_insert_range_iterator(
|
||||||
sprout::internal_begin(cont), pos,
|
sprout::internal_begin(cont), pos,
|
||||||
|
@ -145,8 +145,8 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename Cont, typename... Args>
|
template<typename Cont, typename... Args>
|
||||||
static SPROUT_CONSTEXPR copied_type
|
static SPROUT_CONSTEXPR copied_type
|
||||||
remake(Cont&& cont, typename sprout::container_traits<Container>::difference_type size, Args&&... args) {
|
remake(Cont&& cont, typename sprout::container_traits<Container>::difference_type, Args&&... args) {
|
||||||
return remake_impl(cont.position(), sprout::get_internal(sprout::forward<Cont>(cont)), size, sprout::forward<Args>(args)...);
|
return remake_impl(cont.position(), sprout::get_internal(sprout::forward<Cont>(cont)), sprout::forward<Args>(args)...);
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
@ -126,7 +126,7 @@ namespace sprout {
|
||||||
temp.swap(*this);
|
temp.swap(*this);
|
||||||
return *this;
|
return *this;
|
||||||
}
|
}
|
||||||
SPROUT_CONSTEXPR reference operator[](difference_type n) const {
|
SPROUT_CONSTEXPR reference operator[](difference_type) const {
|
||||||
return holder_.get();
|
return holder_.get();
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
|
@ -24,7 +24,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
erf_impl_2_b(T x, T w, T t, int k) {
|
erf_impl_2_b(T x, T t, int k) {
|
||||||
return sprout::math::detail::erf_impl_3(
|
return sprout::math::detail::erf_impl_3(
|
||||||
x,
|
x,
|
||||||
T(1) - sprout::detail::pow_n(
|
T(1) - sprout::detail::pow_n(
|
||||||
|
@ -109,7 +109,7 @@ namespace sprout {
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
erf_impl_1(T x, T w) {
|
erf_impl_1(T x, T w) {
|
||||||
return w < T(2.2) ? sprout::math::detail::erf_impl_2_a(x, w, w * w)
|
return w < T(2.2) ? sprout::math::detail::erf_impl_2_a(x, w, w * w)
|
||||||
: w < T(6.9) ? sprout::math::detail::erf_impl_2_b(x, w, sprout::math::fractional_part(w), sprout::math::itrunc(w) - 2)
|
: w < T(6.9) ? sprout::math::detail::erf_impl_2_b(x, sprout::math::fractional_part(w), sprout::math::itrunc(w) - 2)
|
||||||
: sprout::math::detail::erf_impl_3(x, T(1))
|
: sprout::math::detail::erf_impl_3(x, T(1))
|
||||||
;
|
;
|
||||||
}
|
}
|
||||||
|
|
|
@ -50,7 +50,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<int D, typename BuiltInUnsigned, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
template<int D, typename BuiltInUnsigned, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK(D)>
|
||||||
inline SPROUT_CONSTEXPR BuiltInUnsigned
|
inline SPROUT_CONSTEXPR BuiltInUnsigned
|
||||||
gcd_binary_2_2(unsigned shifts, sprout::array<BuiltInUnsigned, 2> const& r, unsigned which) {
|
gcd_binary_2_2(unsigned, sprout::array<BuiltInUnsigned, 2> const&, unsigned) {
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
}
|
}
|
||||||
template<int D, typename BuiltInUnsigned, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_CONTINUE_DECL(D)>
|
template<int D, typename BuiltInUnsigned, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_CONTINUE_DECL(D)>
|
||||||
|
@ -81,7 +81,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<int D, typename BuiltInUnsigned, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK_DECL(D)>
|
template<int D, typename BuiltInUnsigned, SPROUT_RECURSIVE_FUNCTION_TEMPLATE_BREAK_DECL(D)>
|
||||||
inline SPROUT_CONSTEXPR BuiltInUnsigned
|
inline SPROUT_CONSTEXPR BuiltInUnsigned
|
||||||
gcd_binary_2_1(unsigned shifts, sprout::array<BuiltInUnsigned, 2> const& r, unsigned which) {
|
gcd_binary_2_1(unsigned, sprout::array<BuiltInUnsigned, 2> const&, unsigned) {
|
||||||
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
return sprout::throw_recursive_function_template_instantiation_exeeded();
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
|
|
|
@ -43,7 +43,7 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
lgamma_impl_2_c_1(T x, T w, T t, int k) {
|
lgamma_impl_2_c_1(T x, T t, int k) {
|
||||||
return sprout::math::detail::lgamma_impl_3(
|
return sprout::math::detail::lgamma_impl_3(
|
||||||
x,
|
x,
|
||||||
k == 0 ? (((((((((((
|
k == 0 ? (((((((((((
|
||||||
|
@ -81,11 +81,11 @@ namespace sprout {
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
lgamma_impl_2_c(T x, T w, int k) {
|
lgamma_impl_2_c(T x, T w, int k) {
|
||||||
return sprout::math::detail::lgamma_impl_2_c_1(x, w, w - (static_cast<T>(k) + 3.5), k);
|
return sprout::math::detail::lgamma_impl_2_c_1(x, w - (static_cast<T>(k) + 3.5), k);
|
||||||
}
|
}
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
lgamma_impl_2_b_2(T x, T w, T t, int k) {
|
lgamma_impl_2_b_2(T x, T t, int k) {
|
||||||
return sprout::math::detail::lgamma_impl_3(
|
return sprout::math::detail::lgamma_impl_3(
|
||||||
x,
|
x,
|
||||||
k == 0 ? ((((((((((((
|
k == 0 ? ((((((((((((
|
||||||
|
@ -134,13 +134,13 @@ namespace sprout {
|
||||||
}
|
}
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
lgamma_impl_2_b_1(T x, T w, T t, int k) {
|
lgamma_impl_2_b_1(T x, T t, int k) {
|
||||||
return sprout::math::detail::lgamma_impl_2_b_2(x, w, t - (static_cast<T>(k) - T(3.5)), k);
|
return sprout::math::detail::lgamma_impl_2_b_2(x, t - (static_cast<T>(k) - T(3.5)), k);
|
||||||
}
|
}
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
lgamma_impl_2_b(T x, T w, T t) {
|
lgamma_impl_2_b(T x, T t) {
|
||||||
return sprout::math::detail::lgamma_impl_2_b_1(x, w, t, sprout::math::itrunc(t) + 4);
|
return sprout::math::detail::lgamma_impl_2_b_1(x, t, sprout::math::itrunc(t) + 4);
|
||||||
}
|
}
|
||||||
template<typename T>
|
template<typename T>
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
|
@ -166,7 +166,7 @@ namespace sprout {
|
||||||
inline SPROUT_CONSTEXPR T
|
inline SPROUT_CONSTEXPR T
|
||||||
lgamma_impl_1(T x, T w) {
|
lgamma_impl_1(T x, T w) {
|
||||||
return w < T(0.5) ? sprout::math::detail::lgamma_impl_2_a(x, w, w < T(0.25) ? 0 : 1)
|
return w < T(0.5) ? sprout::math::detail::lgamma_impl_2_a(x, w, w < T(0.25) ? 0 : 1)
|
||||||
: w < T(3.5) ? sprout::math::detail::lgamma_impl_2_b(x, w, w - T(4.5) / (w + T(0.5)))
|
: w < T(3.5) ? sprout::math::detail::lgamma_impl_2_b(x, w - T(4.5) / (w + T(0.5)))
|
||||||
: w < T(8) ? sprout::math::detail::lgamma_impl_2_c(x, w, sprout::math::itrunc(w) - 3)
|
: w < T(8) ? sprout::math::detail::lgamma_impl_2_c(x, w, sprout::math::itrunc(w) - 3)
|
||||||
: sprout::math::detail::lgamma_impl_2_d(x, w, T(1) / w)
|
: sprout::math::detail::lgamma_impl_2_d(x, w, T(1) / w)
|
||||||
;
|
;
|
||||||
|
|
|
@ -85,12 +85,7 @@ namespace sprout {
|
||||||
inline SPROUT_CONSTEXPR typename std::iterator_traits<InputIterator>::value_type
|
inline SPROUT_CONSTEXPR typename std::iterator_traits<InputIterator>::value_type
|
||||||
dft_element_gen(
|
dft_element_gen(
|
||||||
InputIterator first, InputIterator last,
|
InputIterator first, InputIterator last,
|
||||||
typename std::iterator_traits<InputIterator>::value_type::value_type arg,
|
typename std::iterator_traits<InputIterator>::value_type::value_type arg
|
||||||
typename std::iterator_traits<InputIterator>::difference_type k = 0,
|
|
||||||
typename std::iterator_traits<InputIterator>::value_type value
|
|
||||||
= typename std::iterator_traits<InputIterator>::value_type(),
|
|
||||||
typename std::iterator_traits<InputIterator>::value_type::value_type theta
|
|
||||||
= typename std::iterator_traits<InputIterator>::value_type::value_type()
|
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
typedef typename std::iterator_traits<InputIterator>::iterator_category* category;
|
typedef typename std::iterator_traits<InputIterator>::iterator_category* category;
|
||||||
|
|
|
@ -19,8 +19,7 @@ namespace sprout {
|
||||||
typedef typename std::iterator_traits<InputIterator>::value_type value_type;
|
typedef typename std::iterator_traits<InputIterator>::value_type value_type;
|
||||||
typedef typename value_type::value_type elem_type;
|
typedef typename value_type::value_type elem_type;
|
||||||
return sprout::detail::dft_element_gen(
|
return sprout::detail::dft_element_gen(
|
||||||
first,
|
first, last,
|
||||||
last,
|
|
||||||
-(sprout::math::two_pi<elem_type>() * i / size)
|
-(sprout::math::two_pi<elem_type>() * i / size)
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
|
@ -22,7 +22,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
amplitude_spectrum_impl_ra(
|
amplitude_spectrum_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last, Result const& result,
|
RandomAccessIterator first, RandomAccessIterator, Result const& result,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type size,
|
||||||
|
@ -59,8 +59,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
amplitude_spectrum_impl(
|
amplitude_spectrum_impl(
|
||||||
ForwardIterator first, ForwardIterator last, Result const& result,
|
ForwardIterator, ForwardIterator, Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -59,9 +59,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
dft_impl(
|
dft_impl(
|
||||||
ForwardIterator first, ForwardIterator last, Result const& result,
|
ForwardIterator, ForwardIterator, Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
ForwardIterator first_, typename sprout::container_traits<Result>::difference_type i,
|
ForwardIterator, typename sprout::container_traits<Result>::difference_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -59,9 +59,9 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
idft_impl(
|
idft_impl(
|
||||||
ForwardIterator first, ForwardIterator last, Result const& result,
|
ForwardIterator, ForwardIterator, Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
ForwardIterator first_, typename sprout::container_traits<Result>::difference_type i,
|
ForwardIterator, typename sprout::container_traits<Result>::difference_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -22,7 +22,7 @@ namespace sprout {
|
||||||
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
template<typename RandomAccessIterator, typename Result, sprout::index_t... Indexes>
|
||||||
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
inline SPROUT_CONSTEXPR typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
phase_spectrum_impl_ra(
|
phase_spectrum_impl_ra(
|
||||||
RandomAccessIterator first, RandomAccessIterator last, Result const& result,
|
RandomAccessIterator first, RandomAccessIterator, Result const& result,
|
||||||
sprout::index_tuple<Indexes...>,
|
sprout::index_tuple<Indexes...>,
|
||||||
typename sprout::container_traits<Result>::difference_type offset,
|
typename sprout::container_traits<Result>::difference_type offset,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type size,
|
||||||
|
@ -59,8 +59,8 @@ namespace sprout {
|
||||||
typename sprout::fixed::result_of::algorithm<Result>::type
|
typename sprout::fixed::result_of::algorithm<Result>::type
|
||||||
>::type
|
>::type
|
||||||
phase_spectrum_impl(
|
phase_spectrum_impl(
|
||||||
ForwardIterator first, ForwardIterator last, Result const& result,
|
ForwardIterator, ForwardIterator, Result const& result,
|
||||||
typename sprout::container_traits<Result>::size_type size,
|
typename sprout::container_traits<Result>::size_type,
|
||||||
Args const&... args
|
Args const&... args
|
||||||
)
|
)
|
||||||
{
|
{
|
||||||
|
|
|
@ -19,8 +19,7 @@ namespace sprout {
|
||||||
typedef typename std::iterator_traits<InputIterator>::value_type value_type;
|
typedef typename std::iterator_traits<InputIterator>::value_type value_type;
|
||||||
typedef typename value_type::value_type elem_type;
|
typedef typename value_type::value_type elem_type;
|
||||||
return sprout::detail::dft_element_gen(
|
return sprout::detail::dft_element_gen(
|
||||||
first,
|
first, last,
|
||||||
last,
|
|
||||||
sprout::math::two_pi<elem_type>() * i / size
|
sprout::math::two_pi<elem_type>() * i / size
|
||||||
)
|
)
|
||||||
/ static_cast<elem_type>(size)
|
/ static_cast<elem_type>(size)
|
||||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue