make pack/unpack public

db4
Doug Coleman 2009-02-09 16:19:43 -06:00
parent d45f0c83eb
commit 41e0db098c
1 changed files with 4 additions and 4 deletions

View File

@ -87,12 +87,12 @@ CONSTANT: packed-length-table
{ CHAR: D 8 } { CHAR: D 8 }
} }
PRIVATE>
MACRO: pack ( str -- quot ) MACRO: pack ( str -- quot )
[ pack-table at '[ _ execute ] ] { } map-as [ pack-table at '[ _ execute ] ] { } map-as
'[ [ [ _ spread ] input<sequence ] B{ } append-outputs-as ] ; '[ [ [ _ spread ] input<sequence ] B{ } append-outputs-as ] ;
PRIVATE>
: ch>packed-length ( ch -- n ) : ch>packed-length ( ch -- n )
packed-length-table at ; inline packed-length-table at ; inline
@ -113,14 +113,14 @@ PRIVATE>
: start/end ( seq -- seq1 seq2 ) : start/end ( seq -- seq1 seq2 )
[ 0 [ + ] accumulate nip dup ] keep v+ ; inline [ 0 [ + ] accumulate nip dup ] keep v+ ; inline
PRIVATE>
MACRO: unpack ( str -- quot ) MACRO: unpack ( str -- quot )
[ [ ch>packed-length ] { } map-as start/end ] [ [ ch>packed-length ] { } map-as start/end ]
[ [ unpack-table at '[ @ ] ] { } map-as ] bi [ [ unpack-table at '[ @ ] ] { } map-as ] bi
[ '[ [ _ _ ] dip <slice> @ ] ] 3map [ '[ [ _ _ ] dip <slice> @ ] ] 3map
'[ [ _ cleave ] output>array ] ; '[ [ _ cleave ] output>array ] ;
PRIVATE>
: unpack-native ( seq str -- seq ) : unpack-native ( seq str -- seq )
'[ _ _ unpack ] with-native-endian ; inline '[ _ _ unpack ] with-native-endian ; inline