Remove pointer->bytevector and bytevector->pointer stuff

This commit is contained in:
retropikzel 2024-05-18 15:39:16 +03:00
parent 21b6414420
commit d94cbd9baa
13 changed files with 17 additions and 78 deletions

View File

@ -14,7 +14,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?
@ -124,7 +123,7 @@
(define pffi-pointer-null
(lambda ()
(error "Not defined")))
(address->pointer 0)))
(define pffi-string->pointer
(lambda (string-content)
@ -144,10 +143,6 @@
(move-memory! pointer string-content size 0)
string-content))))
(define pffi-pointer->bytevector
(lambda (pointer size)
(error "Not defined")))
(define-syntax pffi-shared-object-load
(er-macro-transformer
(lambda (expr rename compare)
@ -164,7 +159,7 @@
(define pffi-pointer-null?
(lambda (pointer)
(error "Not defined")))
(= (pointer->address pointer) 0)))
(define pffi-pointer-set!
(lambda (pointer type offset value)
@ -212,4 +207,4 @@
(define pffi-pointer-deref
(lambda (pointer)
(error "Not defined")))))
pointer))))

View File

@ -15,7 +15,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?
@ -115,10 +114,6 @@
(lambda (pointer)
pointer))
(define pffi-pointer->bytevector
(lambda (pointer size)
(error "Not defined")))
(define-syntax pffi-shared-object-load
(er-macro-transformer
(lambda (expr rename compare)

View File

@ -11,7 +11,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?
@ -54,10 +53,6 @@
(lambda (pointer)
pointer))
(define pffi-pointer->bytevector
(lambda (pointer size)
(error "Not defined")))
(define pffi-shared-object-load
(lambda (header path)
(error "Not defined")))

View File

@ -11,7 +11,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?
@ -52,11 +51,6 @@
(lambda (pointer)
pointer))
(define pffi-pointer->bytevector
(lambda (pointer size)
(error "Not defined")))
(define pffi-shared-object-load
(lambda (headers)
(error "Not defined")))

View File

@ -11,7 +11,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?
@ -54,10 +53,6 @@
(lambda (pointer)
pointer))
(define pffi-pointer->bytevector
(lambda (pointer size)
(error "Not defined")))
(define pffi-shared-object-load
(lambda (header path)
(error "Not defined")))

View File

@ -14,7 +14,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?
@ -83,16 +82,10 @@
(lambda (pointer)
(pointer->string pointer)))
(define pffi-pointer->bytevector
(lambda (pointer size)
(pointer->bytevector pointer size)))
(define pffi-shared-object-load
(lambda (header path)
(load-foreign-library path)))
(define pffi-pointer-free
(lambda (pointer)
#t))
@ -113,8 +106,6 @@
((equal? native-type uint32) (bytevector-u32-set! p offset value (native-endianness)))
((equal? native-type int64) (bytevector-s64-set! p offset value (native-endianness)))
((equal? native-type uint64) (bytevector-u64-set! p offset value (native-endianness)))
;((equal? native-type 'intptr_t) (pointer-ref-c-intptr_t p offset))
;((equal? native-type 'uintptr_t) (pointer-ref-c-uintptr_t p offset))
;((equal? native-type char) (string-set! (pointer->string pointer) offset value))
;((equal? native-type 'short) (pointer-set-c-short p offset value))
;((equal? native-type 'unsigned-short) (pointer-ref-c-unsigned-short p offset))
@ -139,8 +130,6 @@
((equal? native-type uint32) (bytevector-u32-ref p offset (native-endianness)))
((equal? native-type int64) (bytevector-s64-ref p offset (native-endianness)))
((equal? native-type uint64) (bytevector-u64-ref p offset (native-endianness)))
;((equal? native-type 'intptr_t) (pointer-ref-c-intptr_t p offset))
;((equal? native-type 'uintptr_t) (pointer-ref-c-uintptr_t p offset))
;((equal? native-type char) (string-ref (pointer->string pointer) offset))
;((equal? native-type 'short) (pointer-set-c-short p offset value))
;((equal? native-type 'unsigned-short) (pointer-ref-c-unsigned-short p offset))

View File

@ -116,13 +116,6 @@
(lambda (pointer)
(invoke (invoke pointer 'reinterpret (static-field java.lang.Integer 'MAX_VALUE)) 'getUtf8String 0)))
(define pffi-pointer->bytevector
(lambda (pointer size)
(invoke (invoke pointer 'reinterpret size)
'toArray
(static-field java.lang.foreign.ValueLayout
'JAVA_BYTE))))
(define pffi-shared-object-load
(lambda (header path)
(let* ((library-file (make java.io.File path))

View File

@ -73,7 +73,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?

View File

@ -16,7 +16,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?
@ -84,10 +83,6 @@
(lambda (pointer)
(cast pointer _pointer _string)))
(define pffi-pointer->bytevector
(lambda (pointer size)
(cast pointer _pointer _bytes)))
(define pffi-shared-object-load
(lambda (header path)
(ffi-lib path)))

View File

@ -13,7 +13,6 @@
pffi-pointer-null
pffi-string->pointer
pffi-pointer->string
pffi-pointer->bytevector
pffi-pointer-free
pffi-pointer?
pffi-pointer-null?
@ -98,10 +97,6 @@
(lambda (pointer)
(pointer->string pointer)))
(define pffi-pointer->bytevector
(lambda (pointer size)
(pointer->bytevector pointer size)))
(define pffi-shared-object-load
(lambda (header path)
(open-shared-library path)))

View File

@ -6,7 +6,6 @@
(scheme process-context)
(stklos))
(export pffi-define
pffi-pointer->bytevector
pffi-pointer->string
pffi-pointer-allocate
pffi-pointer-deref
@ -82,11 +81,6 @@
(lambda (pointer)
pointer))
(define pffi-pointer->bytevector
(lambda (pointer size)
(bytevector) ; TODO FIX
))
(define pffi-shared-object-load
(lambda (header path)
path ))

View File

@ -1,14 +0,0 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-1-0 main))
(define p (pffi-pointer-allocate (+ (* (pffi-size-of 'uint32) 3)
(* (pffi-size-of 'uint8) 4)
(pffi-size-of 'int))))
(write p)
(newline)
(pffi-pointer-free p)

14
test/402_null-pointer.scm Normal file
View File

@ -0,0 +1,14 @@
(import (scheme base)
(scheme write)
(retropikzel pffi v0-1-0 main))
(define p (pffi-pointer-allocate (+ (* (pffi-size-of 'uint32) 3)
(* (pffi-size-of 'uint8) 4)
(pffi-size-of 'int))))
(define n (pffi-pointer-null))
(if (not (pffi-pointer-null? n)) (error "pffi-pointer-null? returned false when given null pointer"))
(if (pffi-pointer-null? p) (error "pffi-pointer-null? returned true when given not a null pointer"))
(if (pffi-pointer-null? "Hello") (error "pffi-pointer-null? returned true when given not a pointer"))