From 06e40a39bc960b53a069139a05ab15414687f85a Mon Sep 17 00:00:00 2001 From: Doug Coleman Date: Sun, 3 Dec 2017 18:31:08 -0600 Subject: [PATCH] modern.slices: Add a way to push characters back to the buffer. --- extra/modern/slices/slices.factor | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/extra/modern/slices/slices.factor b/extra/modern/slices/slices.factor index 5d1c2f9b3e..d3da9c5593 100644 --- a/extra/modern/slices/slices.factor +++ b/extra/modern/slices/slices.factor @@ -219,3 +219,10 @@ ERROR: subseq-expected-but-got-eof n string expected ; dup length 1 = [ -1 modify-to [ 1 - ] 2dip ] unless ; + +: rewind-slice ( n string slice -- n' string ) + pick [ + length swap [ - ] dip + ] [ + [ nip ] dip [ [ length ] bi@ - ] 2keep drop + ] if ; inline \ No newline at end of file