 M: input-port stream-read-partial-unsafe ( n dst port -- count )
     [ swap ] dip prepare-read read-step
     [ swap [ memcpy ] keep ] [ 2drop 0 ] if* ;
-
-HINTS: M\ input-port stream-read-unsafe
-    { fixnum byte-array input-port }
-    { fixnum string input-port } ;
 
 :: read-loop ( n-remaining n-read port dst -- n-total )
     n-remaining 0 > [

        ] if
    ] [ 0 ] if ;

HINTS: M\ input-port stream-read-unsafe
    { fixnum byte-array input-port }
    { fixnum string input-port } ;

: read-until-step ( separators port -- string/f separator/f )
    dup wait-to-read [ 2drop f f ] [ buffer>> buffer-until ] if ;


io.encodings.private io.encodings.utf8 io.timeouts kernel libc
locals math math.order namespaces sequences specialized-arrays
specialized-arrays.instances.alien.c-types.uchar splitting
strings summary system io.files kernel.private ;
IN: io.ports

SYMBOL: default-buffer-size
