16 lines
531 B
Factor
16 lines
531 B
Factor
! Copyright (C) 2010 Slava Pestov.
|
|
! See http://factorcode.org/license.txt for BSD license.
|
|
USING: alien byte-vectors io kernel libc math sequences ;
|
|
IN: io.streams.byte-array.fast
|
|
|
|
! This is split off from io.streams.byte-array because it uses
|
|
! memcpy, which is a non-core word that only works after the
|
|
! optimizing compiler has been loaded.
|
|
|
|
M: byte-vector stream-write
|
|
[ dup byte-length tail-slice ]
|
|
[ [ [ byte-length ] bi@ + ] keep lengthen ]
|
|
[ drop byte-length ]
|
|
2tri
|
|
[ >c-ptr swap >c-ptr ] dip memcpy ;
|