io.buffers: factor out buffer-read-unsafe word
buffer-read-unsafe returns a length and a pointer into the buffer instead of a copy.db4
parent
b79d7158be
commit
7e9dbde99f
|
@ -44,13 +44,16 @@ M: buffer dispose* ptr>> free ;
|
|||
: buffer@ ( buffer -- alien )
|
||||
[ pos>> ] [ ptr>> ] bi <displaced-alien> ; inline
|
||||
|
||||
: buffer-read ( n buffer -- byte-array )
|
||||
: buffer-read-unsafe ( n buffer -- n ptr )
|
||||
[ buffer-length min ] keep
|
||||
[ buffer@ ] [ buffer-consume ] 2bi
|
||||
swap memory>byte-array ;
|
||||
[ buffer@ ] [ buffer-consume ] 2bi ; inline
|
||||
|
||||
: buffer-read ( n buffer -- byte-array )
|
||||
buffer-read-unsafe swap memory>byte-array ;
|
||||
|
||||
HINTS: buffer-read fixnum buffer ;
|
||||
|
||||
|
||||
: buffer-end ( buffer -- alien )
|
||||
[ fill>> ] [ ptr>> ] bi <displaced-alien> ; inline
|
||||
|
||||
|
|
Loading…
Reference in New Issue