Automatische Konvertierung von Typen für FFI-Aufrufe in Haskell
Ich habe das folgende Modul definiert, um beim Export von FFI-Funktionen zu helfen:
{-# LANGUAGE MultiParamTypeClasses, FunctionalDependencies, TypeSynonymInstances #-}
module ExportFFI where
import Foreign
import Foreign.C
class FFI basic ffitype | basic -> ffitype where
toFFI :: basic -> IO ffitype
fromFFI :: ffitype -> IO basic
freeFFI :: ffitype -> IO ()
instance FFI String CString where
toFFI = newCString
fromFFI = peekCString
freeFFI = free
Ich kämpfe mit der Instanz um Funktionen. Kann mir jemand helfen