From 5cf331a345e2d696634eb8340304a35894156165 Mon Sep 17 00:00:00 2001 From: Slava Pestov Date: Sat, 27 Oct 2007 14:43:17 -0400 Subject: [PATCH] Cleanup --- core/io/buffers/buffers.factor | 11 +++++++---- core/optimizer/known-words/known-words.factor | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/core/io/buffers/buffers.factor b/core/io/buffers/buffers.factor index 7bca0678c6..cb897c26d8 100644 --- a/core/io/buffers/buffers.factor +++ b/core/io/buffers/buffers.factor @@ -51,12 +51,11 @@ TUPLE: buffer size ptr fill pos ; : buffer>> ( buffer -- string ) dup (buffer>>) 0 rot buffer-reset ; -: (buffer-until) ( start end alien separators -- n ) +: search-buffer-until ( start end alien separators -- n ) [ >r swap alien-unsigned-1 r> memq? ] 2curry find* drop ; -: buffer-until ( separators buffer -- string separator ) - tuck { buffer-pos buffer-fill buffer-ptr } get-slots roll - (buffer-until) [ +: finish-buffer-until ( buffer n -- string separator ) + [ over buffer-pos - over buffer> swap buffer-pop @@ -64,6 +63,10 @@ TUPLE: buffer size ptr fill pos ; buffer>> f ] if* ; +: buffer-until ( separators buffer -- string separator ) + tuck { buffer-pos buffer-fill buffer-ptr } get-slots roll + search-buffer-until finish-buffer-until ; + : buffer-length ( buffer -- n ) dup buffer-fill swap buffer-pos - ; diff --git a/core/optimizer/known-words/known-words.factor b/core/optimizer/known-words/known-words.factor index 8ca92c05a3..dffe18e630 100755 --- a/core/optimizer/known-words/known-words.factor +++ b/core/optimizer/known-words/known-words.factor @@ -149,4 +149,4 @@ float-arrays combinators.private ; \ >be { { fixnum bignum } fixnum } "specializer" set-word-prop -\ (buffer-until) { fixnum fixnum simple-alien string } "specializer" set-word-prop +\ search-buffer-until { fixnum fixnum simple-alien string } "specializer" set-word-prop