Re: [racket-users] How do I represent a convenient two-step allocation using ffi/unsafe?

2019-10-20 Thread Matthew Flatt
At Sun, 20 Oct 2019 23:07:58 +, Sage Gerard wrote: > So if I take the `vkEnumerateInstanceLayerProperties/private` you showed me > and change the (_ptr io _uint32_t) to (_cpointer _uint32_t), will it have any > other noticeable usability differences for someone thinking like a C > programmer

Re: [racket-users] How do I represent a convenient two-step allocation using ffi/unsafe?

2019-10-20 Thread Sage Gerard
Hi Matthew, That makes sense, thanks. I have a follow-up question, and forgive me for the 180-degree turn. I realized I was wrong to convey that I want the wrapper functions to help with allocations. My situation is that I have 346 generated procedure bindings for Vulkan, and 1342 bindings tot

Re: [racket-users] How do I represent a convenient two-step allocation using ffi/unsafe?

2019-10-20 Thread Matthew Flatt
I don't think `ffi/unsafe` can generate that kind of wrapper for you. I'd write something like this: (define-vulkan vkEnumerateInstanceLayerProperties/private (_fun (o0 : (_ptr io _uint32_t)) _pointer -> (r : _VkResult) -> (begin (check-vkResult r 'vkEn