
You can alias HklFactory: type HklFactory = Ptr () Or if you want to avoid mixing HklFactory and other pointers, you can use: newtype HklFactory = HklFactory (Ptr ()) deriving (Storable) The latter requires the GeneralizedNewtypeDeriving extension, see: https://wiki.haskell.org/Foreign_Function_Interface#Renaming_and_Storable_in... Sylvain 2015-11-08 21:30 GMT+01:00 PICCA Frederic-Emmanuel < frederic-emmanuel.picca@synchrotron-soleil.fr>:
Ok, so now I get this error
ghkl.hs:20:18: No instance for (Foreign.Storable.Storable HklFactory) arising from a use of ‘peekArray’ In a stmt of a 'do' block: peekArray n factories In the expression: do { factories <- c_hkl_factory_get_all ptr; n <- peek ptr; peekArray n factories } In the second argument of ‘($)’, namely ‘\ ptr -> do { factories <- c_hkl_factory_get_all ptr; n <- peek ptr; .... }’
What should I do to create a Storable for HklFactory which is a simple pointer.
Thanks
Frederic _______________________________________________ Beginners mailing list Beginners@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/beginners