         default-buffer-size get <buffer> >>buffer ; inline
 
 TUPLE: input-port < buffered-port ;
+INSTANCE: input-port noncopying-reader
 
 M: input-port stream-element-type drop +byte+ ; inline
 

! Copyright (C) 2005, 2010 Slava Pestov, Doug Coleman
! See http://factorcode.org/license.txt for BSD license.
USING: math kernel io sequences io.buffers io.timeouts generic
byte-vectors system io.encodings math.order io.backend
continuations classes byte-arrays namespaces splitting grouping
dlists alien alien.c-types alien.data assocs io.encodings.binary
summary accessors destructors combinators fry specialized-arrays
locals ;
SPECIALIZED-ARRAY: uchar
IN: io.ports

SYMBOL: default-buffer-size

M: object underlying-handle underlying-port handle>> ;

! Fast-path optimization

HINTS: decoder-read-until { string input-port utf8 } { string input-port ascii } ;

