Small fixes. Implementing some pointer address and deref procedures
This commit is contained in:
parent
539adeb2d5
commit
6d15fb2c2b
|
|
@ -76,6 +76,7 @@
|
||||||
pffi-size-of
|
pffi-size-of
|
||||||
pffi-pointer-allocate
|
pffi-pointer-allocate
|
||||||
pffi-pointer-address
|
pffi-pointer-address
|
||||||
|
pffi-pointer-dereference
|
||||||
pffi-pointer-null
|
pffi-pointer-null
|
||||||
pffi-string->pointer
|
pffi-string->pointer
|
||||||
pffi-pointer->string
|
pffi-pointer->string
|
||||||
|
|
|
||||||
|
|
@ -148,8 +148,11 @@
|
||||||
|
|
||||||
(define pffi-pointer-address
|
(define pffi-pointer-address
|
||||||
(lambda (pointer)
|
(lambda (pointer)
|
||||||
;; TODO
|
(pointer->address pointer)))
|
||||||
pointer))
|
|
||||||
|
(define pffi-pointer-dereference
|
||||||
|
(lambda (pointer)
|
||||||
|
(pointer->address pointer)))
|
||||||
|
|
||||||
(define pffi-pointer-null
|
(define pffi-pointer-null
|
||||||
(lambda ()
|
(lambda ()
|
||||||
|
|
|
||||||
|
|
@ -54,8 +54,11 @@
|
||||||
|
|
||||||
(define pffi-pointer-address
|
(define pffi-pointer-address
|
||||||
(lambda (pointer)
|
(lambda (pointer)
|
||||||
;; TODO
|
(pointer-address pointer)))
|
||||||
pointer))
|
|
||||||
|
(define pffi-pointer-dereference
|
||||||
|
(lambda (pointer)
|
||||||
|
(dereference-pointer pointer)))
|
||||||
|
|
||||||
(define pffi-pointer-null
|
(define pffi-pointer-null
|
||||||
(lambda ()
|
(lambda ()
|
||||||
|
|
|
||||||
|
|
@ -135,8 +135,11 @@
|
||||||
|
|
||||||
(define pffi-pointer-address
|
(define pffi-pointer-address
|
||||||
(lambda (pointer)
|
(lambda (pointer)
|
||||||
;; TODO
|
(invoke pointer 'get (invoke (static-field java.lang.foreign.ValueLayout 'ADDRESS) 'withByteAlignment 1) 0)))
|
||||||
pointer))
|
|
||||||
|
(define pffi-pointer-dereference
|
||||||
|
(lambda (pointer)
|
||||||
|
(invoke pointer 'get (invoke (static-field java.lang.foreign.ValueLayout 'ADDRESS) 'withByteAlignment 1) 0)))
|
||||||
|
|
||||||
(define pffi-pointer-null
|
(define pffi-pointer-null
|
||||||
(lambda ()
|
(lambda ()
|
||||||
|
|
|
||||||
|
|
@ -77,6 +77,10 @@
|
||||||
(lambda (pointer)
|
(lambda (pointer)
|
||||||
(address pointer)))
|
(address pointer)))
|
||||||
|
|
||||||
|
(define pffi-pointer-dereference
|
||||||
|
(lambda (pointer)
|
||||||
|
(deref pointer 0)))
|
||||||
|
|
||||||
(define pffi-pointer-null
|
(define pffi-pointer-null
|
||||||
(lambda ()
|
(lambda ()
|
||||||
(empty-pointer)))
|
(empty-pointer)))
|
||||||
|
|
@ -95,6 +99,10 @@
|
||||||
(looper 0)
|
(looper 0)
|
||||||
pointer)))
|
pointer)))
|
||||||
|
|
||||||
|
(define pffi-string->pointer
|
||||||
|
(lambda (string-content)
|
||||||
|
string-content))
|
||||||
|
|
||||||
(define pffi-pointer->string
|
(define pffi-pointer->string
|
||||||
(lambda (pointer)
|
(lambda (pointer)
|
||||||
(pointer->string pointer)))
|
(pointer->string pointer)))
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue