From 709687e55fea82ada2adb76ed2593a6990b9a8e5 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Sat, 29 May 2010 05:22:10 -0400 Subject: [PATCH] nibble-arrays: replace a -rot usage with locals --- basis/nibble-arrays/nibble-arrays.factor | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/basis/nibble-arrays/nibble-arrays.factor b/basis/nibble-arrays/nibble-arrays.factor index 865491ed21..712b62f20b 100644 --- a/basis/nibble-arrays/nibble-arrays.factor +++ b/basis/nibble-arrays/nibble-arrays.factor @@ -1,7 +1,7 @@ -! Copyright (C) 2008 Slava Pestov. +! Copyright (C) 2008, 2010 Slava Pestov. ! See http://factorcode.org/license.txt for BSD license. USING: math kernel sequences sequences.private byte-arrays -alien prettyprint.custom parser accessors ; +alien prettyprint.custom parser accessors locals ; IN: nibble-arrays TUPLE: nibble-array @@ -20,8 +20,10 @@ CONSTANT: nibble BIN: 1111 : get-nibble ( n byte -- nibble ) swap neg shift nibble bitand ; inline -: set-nibble ( value n byte -- byte' ) - nibble pick shift bitnot bitand -rot shift bitor ; inline +:: set-nibble ( value n byte -- byte' ) + byte nibble n shift bitnot bitand + value n shift + bitor ; inline : nibble@ ( n nibble-array -- shift n' byte-array ) [ >fixnum byte/nibble ] [ underlying>> ] bi* ; inline