]> gitweb.factorcode.org Git - factor.git/blob - libs/alien.factor
more sql changes
[factor.git] / libs / alien.factor
1 USING: kernel alien sequences ;
2 IN: alien-contrib
3
4 : copy-seq-to-float-array ( seq byte-array -- byte-array )
5 swap dup length [ pick set-float-nth ] 2each ;
6
7 : >float-array ( seq -- byte-array )
8 dup length "float" <c-array> copy-seq-to-float-array ;
9
10 : float-array>array ( byte-array n -- array ) [ swap float-nth ] map-with ;
11
12 : >void*-array 
13     [ length "void*" <c-array> ] keep
14     dup length [ pick set-char*-nth ] 2each ;
15
16 : seq>void*-array ( seq -- seq byte-array )
17     #! output seq is an array of pointers that must be freed
18     [ <malloc-string> ] map dup >void*-array ;
19
20 PROVIDE: libs/alien ;