On Mon, Jul 07, 2003 at 07:31:13PM +0100, Alastair Reid wrote:
the discussion on ForeignPtrs without finalizers didn't come to a conclusion. I specifically need the nullForeignPtr which was easy enough with the FFI of GHC 5.04: [...] do I have to create a dummy C function?
Yes, create a dummy C function. (Actually, you could use 'free' since it does nothing if passed NULL.)
That's a good tip. Thanks.
ps Personally, I would use
Maybe (ForeignPtr a)
in the places where you are currently using a ForeignPtr which could be null with 'Just x' being used only when x is not null. Oh, I do indeed. The need for nullForeignPtr arises when a function expects a pointer to some data structure or a null pointer. In this case I cannot make the foreign import have the type (Maybe (ForeignPtr ()) since it's not accepted by the FFI.
Thanks, Axel.