new ForeignPtr without finalizers
Ashley Yakeley
ashley at semantic.org
Mon Jun 9 06:42:52 EDT 2003
In article <200306091001.51091.alastair at reid-consulting-uk.ltd.uk>,
Alastair Reid <alastair at reid-consulting-uk.ltd.uk> wrote:
> It looks like you're using an idiom we didn't think of when designing the
> library. Can you explain what you're trying to do and whether you think we
> shoud provide direct support for newSimpleForeignPtr (which I'd be tempted to
> call newForeignPtr_).
Specifically I want a ForeignPtr of a null Ptr that has no finalizers. I
want a value of type ForeignPtr such that withForeignPtr will extract a
null Ptr.
My basic JNI ref type is newtype of a ForeignPtr. JNI gives me "global
references" as Ptrs, and I wrap them in ForeignPtrs with a finalizer
that tells the Java VM I'm finished with it. When I want to pass such a
ref back to JNI, I simply call withForeignPtr to extract the underlying
Ptr.
But sometimes I want to create my own null references. Before GHC 6.0, I
used to call (newForeignPtr nullPtr (return ())), and that would give me
a ForeignPtr that would work with withForeignPtr to give a null Ptr. But
now I can't.
--
Ashley Yakeley, Seattle WA
More information about the FFI
mailing list