From b6cc47d2b3a64c84dc7afd2e9918ecb1088812a3 Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Sun, 10 Feb 2008 23:07:40 -0600 Subject: [PATCH] slight speedup in base64 --- extra/base64/base64-tests.factor | 2 +- extra/base64/base64.factor | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/extra/base64/base64-tests.factor b/extra/base64/base64-tests.factor index 23ea6e99ab..d867351f8b 100644 --- a/extra/base64/base64-tests.factor +++ b/extra/base64/base64-tests.factor @@ -1,4 +1,4 @@ -USING: tools.test base64 ; +USING: kernel tools.test base64 strings ; [ "abcdefghijklmnopqrstuvwxyz" ] [ "abcdefghijklmnopqrstuvwxyz" >base64 base64> ] unit-test diff --git a/extra/base64/base64.factor b/extra/base64/base64.factor index 2c393c61e2..074640c536 100644 --- a/extra/base64/base64.factor +++ b/extra/base64/base64.factor @@ -35,13 +35,13 @@ PRIVATE> #! pad string with = when not enough bits dup length dup 3 mod - cut swap [ - 3 group [ encode3 % ] each + 3 [ encode3 % ] each dup empty? [ drop ] [ >base64-rem % ] if ] "" make ; : base64> ( base64 -- str ) #! input length must be a multiple of 4 [ - [ 4 group [ decode4 % ] each ] keep [ CHAR: = = not ] count-end + [ 4 [ decode4 % ] each ] keep [ CHAR: = = not ] count-end ] SBUF" " make swap [ dup pop* ] times >string ;