haskell / c2hs

c2hs is a pre-processor for Haskell FFI bindings to C libraries
http://hackage.haskell.org/package/c2hs
Other
199 stars 50 forks source link

Maybe the "withSomething" functions generated by C2HS should use names less possible to be used normally. #226

Open Magicloud opened 5 years ago

Magicloud commented 5 years ago

Sorry, I could not think of a more meaningful title right now. The case I talked about is:

Normally, in Haskell world, action requires finalizer or safe guard would be wrapped in withSomething function, like System.IO.withFile. C2HS also uses this naming style causes conflicts when I want to make such wapper without exposing the raw function bindings.

I have to use an "Internal" module containing raw bindings and import the type and marshaller. And another module containing my wrapper and import only type and bindings. Kind of unnecessary.