Small cleanup

db4
Slava Pestov 2008-10-01 20:55:24 -05:00
parent 6febd7ed4a
commit f240e1ff37
1 changed files with 4 additions and 5 deletions

View File

@ -22,10 +22,9 @@ IN: suffix-arrays
: <funky-slice> ( from/f to/f seq -- slice ) : <funky-slice> ( from/f to/f seq -- slice )
[ [
tuck tuck
[ drop [ 0 ] unless* ] [ drop 0 or ] [ length or ] 2bi*
[ dupd length ? ] 2bi*
[ min ] keep [ min ] keep
] keep <slice> ; ] keep <slice> ; inline
PRIVATE> PRIVATE>
@ -35,6 +34,6 @@ PRIVATE>
: SA{ \ } [ >suffix-array ] parse-literal ; parsing : SA{ \ } [ >suffix-array ] parse-literal ; parsing
: query ( begin suffix-array -- matches ) : query ( begin suffix-array -- matches )
2dup find-index 2dup find-index dup
[ -rot [ from-to ] keep <funky-slice> [ seq>> ] map prune ] [ -rot [ from-to ] keep <funky-slice> [ seq>> ] map prune ]
[ 2drop { } ] if* ; [ 3drop { } ] if ;