1 ! (c)2010 Joe Groff bsd license
2 USING: compiler.test compiler.tree.debugger kernel make math.parser sequences
3 sequences.unrolled tools.test ;
4 IN: sequences.unrolled.tests
6 { { "0" "1" "2" } } [ { 0 1 2 } 3 [ number>string ] unrolled-map ] unit-test
7 { { "0" "1" "2" } } [ { 0 1 2 } [ 3 [ number>string ] unrolled-map ] compile-call ] unit-test
9 { { "0" "1" "2" } } [ [ { 0 1 2 } 3 [ number>string , ] unrolled-each ] { } make ] unit-test
10 { { "0" "1" "2" } } [ [ { 0 1 2 } [ 3 [ number>string , ] unrolled-each ] compile-call ] { } make ] unit-test
12 { { "a0" "b1" "c2" } }
13 [ [ { "a" "b" "c" } 3 [ number>string append , ] unrolled-each-index ] { } make ] unit-test
15 { { "a0" "b1" "c2" } }
16 [ [ { "a" "b" "c" } [ 3 [ number>string append , ] unrolled-each-index ] compile-call ] { } make ] unit-test
18 { { "aI" "bII" "cIII" } }
19 [ [ { "a" "b" "c" } { "I" "II" "III" } [ 3 [ append , ] unrolled-2each ] compile-call ] { } make ] unit-test
21 { { "aI" "bII" "cIII" } }
22 [ { "a" "b" "c" } { "I" "II" "III" } 3 [ append ] unrolled-2map ] unit-test
24 { { "aI" "bII" "cIII" } }
25 [ { "a" "b" "c" } { "I" "II" "III" } [ 3 [ append ] unrolled-2map ] compile-call ] unit-test
27 { { "a0" "b1" "c2" } }
28 [ { "a" "b" "c" } 3 [ number>string append ] unrolled-map-index ] unit-test
30 { { "a0" "b1" "c2" } }
31 [ { "a" "b" "c" } [ 3 [ number>string append ] unrolled-map-index ] compile-call ] unit-test
33 [ { 0 1 2 } 4 [ number>string ] unrolled-map ] [ unrolled-bounds-error? ] must-fail-with
34 [ { 0 1 2 3 } { 0 1 2 } 4 [ number>string append ] unrolled-2map ] [ unrolled-2bounds-error? ] must-fail-with
37 [ [ 3 [ number>string ] unrolled-map ] { call } inlined? ] unit-test
40 [ [ 3 [ number>string , ] unrolled-each ] { call } inlined? ] unit-test
43 [ [ 3 [ number>string append , ] unrolled-each-index ] { call } inlined? ] unit-test
46 [ [ 3 [ append , ] unrolled-2each ] { call } inlined? ] unit-test
49 [ [ 3 [ append ] unrolled-2map ] { call } inlined? ] unit-test
52 [ [ 3 [ number>string append ] unrolled-map-index ] { call } inlined? ] unit-test