grouping: clump on empty sequence was trying to make a sequence of length -1
parent
6c0c1d9901
commit
e3254d2209
|
|
@ -1,5 +1,5 @@
|
|||
USING: grouping tools.test kernel sequences arrays
|
||||
math ;
|
||||
math accessors ;
|
||||
IN: grouping.tests
|
||||
|
||||
[ { 1 2 3 } 0 group ] must-fail
|
||||
|
|
@ -12,6 +12,15 @@ IN: grouping.tests
|
|||
>array
|
||||
] unit-test
|
||||
|
||||
[ 0 ] [ { } 2 <clumps> length ] unit-test
|
||||
[ 0 ] [ { 1 } 2 <clumps> length ] unit-test
|
||||
[ 1 ] [ { 1 2 } 2 <clumps> length ] unit-test
|
||||
[ 2 ] [ { 1 2 3 } 2 <clumps> length ] unit-test
|
||||
|
||||
[ 1 ] [ V{ } 2 <clumps> 0 over set-length seq>> length ] unit-test
|
||||
[ 2 ] [ V{ } 2 <clumps> 1 over set-length seq>> length ] unit-test
|
||||
[ 3 ] [ V{ } 2 <clumps> 2 over set-length seq>> length ] unit-test
|
||||
|
||||
[ { { 1 2 } { 2 3 } } ] [ { 1 2 3 } 2 <sliced-clumps> [ >array ] map ] unit-test
|
||||
|
||||
[ f ] [ [ { } { } "Hello" ] all-equal? ] unit-test
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ M: abstract-groups group@
|
|||
TUPLE: abstract-clumps < chunking-seq ;
|
||||
|
||||
M: abstract-clumps length
|
||||
[ seq>> length ] [ n>> ] bi - 1 + ; inline
|
||||
[ seq>> length 1 + ] [ n>> ] bi [-] ; inline
|
||||
|
||||
M: abstract-clumps set-length
|
||||
[ n>> + 1 - ] [ seq>> ] bi set-length ; inline
|
||||
|
|
|
|||
Loading…
Reference in New Issue