46 lines
1.3 KiB
Scheme
46 lines
1.3 KiB
Scheme
(define-library
|
|
(foreign c stklos-primitives)
|
|
(import (scheme base)
|
|
(scheme write)
|
|
(scheme char)
|
|
(scheme file)
|
|
(scheme inexact)
|
|
(scheme process-context)
|
|
(only (stklos)
|
|
%make-callback
|
|
make-external-function
|
|
allocate-bytes
|
|
free-bytes
|
|
cpointer?
|
|
cpointer-null?
|
|
cpointer-data
|
|
cpointer-data-set!
|
|
cpointer-set-abs!
|
|
cpointer-ref-abs
|
|
c-size-of
|
|
void?))
|
|
(export size-of-type
|
|
align-of-type
|
|
;shared-object-load
|
|
define-c-procedure
|
|
define-c-callback
|
|
c-bytevector?
|
|
c-bytevector-u8-ref
|
|
c-bytevector-u8-set!
|
|
c-bytevector-pointer-ref
|
|
c-bytevector-pointer-set!
|
|
;; STklos specific
|
|
; calculate-struct-size-and-offsets
|
|
;struct-make
|
|
get-environment-variable
|
|
file-exists?
|
|
make-external-function
|
|
;address->c-bytevector
|
|
foreign-c:string-split
|
|
;c-bytevector-pointer-set!
|
|
;c-bytevector-pointer-ref
|
|
void?
|
|
)
|
|
(include "c-bytevectors.scm")
|
|
(include "stklos-primitives.scm"))
|