From 836e1314cb8f99c8f59c011f81e010021de8ce83 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Tue, 2 Feb 2010 23:48:30 +1300 Subject: [PATCH] strings.tables: fix a logic error --- basis/strings/tables/tables-tests.factor | 6 +++++- basis/strings/tables/tables.factor | 10 ++++------ 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/basis/strings/tables/tables-tests.factor b/basis/strings/tables/tables-tests.factor index 9429772f4a..56aacfeb17 100644 --- a/basis/strings/tables/tables-tests.factor +++ b/basis/strings/tables/tables-tests.factor @@ -5,4 +5,8 @@ IN: strings.tables.tests [ { "A BB" "CC D" } ] [ { { "A" "BB" } { "CC" "D" } } format-table ] unit-test -[ { "A C" "B " "D E" } ] [ { { "A\nB" "C" } { "D" "E" } } format-table ] unit-test \ No newline at end of file +[ { "A C" "B " "D E" } ] [ { { "A\nB" "C" } { "D" "E" } } format-table ] unit-test + +[ { "A B" " C" "D E" } ] [ { { "A" "B\nC" } { "D" "E" } } format-table ] unit-test + +[ { "A B" "C D" " E" } ] [ { { "A" "B" } { "C" "D\nE" } } format-table ] unit-test \ No newline at end of file diff --git a/basis/strings/tables/tables.factor b/basis/strings/tables/tables.factor index 19d0051d17..32bdcbfad1 100644 --- a/basis/strings/tables/tables.factor +++ b/basis/strings/tables/tables.factor @@ -11,11 +11,9 @@ IN: strings.tables : max-length ( seq -- n ) [ length ] [ max ] map-reduce ; -: format-row ( seq ? -- seq ) - [ - dup max-length - '[ _ "" pad-tail ] map - ] unless ; +: format-row ( seq -- seq ) + dup max-length + '[ _ "" pad-tail ] map ; : format-column ( seq ? -- seq ) [ @@ -26,5 +24,5 @@ IN: strings.tables PRIVATE> : format-table ( table -- seq ) - [ [ [ string-lines ] map ] dip format-row flip ] map-last concat + [ [ string-lines ] map format-row flip ] map concat flip [ format-column ] map-last flip [ " " join ] map ; \ No newline at end of file