   withCString vn $ \str ->
   retMaybe =<< {#call git_config_delete#} c str
 
-{- mConfig :: (CPtr -> CString -> t -> IO CInt) -> Config -> String -> t-}
-        {- -> IO (Maybe GitError)-}
 mConfig :: (Ptr () -> CString -> t -> IO CInt) -> Config -> String -> t
         -> IOCanFail
 mConfig call (Config cfp) vn val =

  withForeignPtr cfp $ \c ->
  withForeignPtr ffp $ \f ->
  retEnum $ {#call git_config_add_file#} c f (fromIntegral pr)


-- | Add an on-disk config file instance to an existing config
--

-- you first have to add this file to a configuration object before you can
-- query it for configuration variables.
createOnDisk :: String -> IOEitherErr ConfigFile
createOnDisk str =
  withCString str $ \str' ->
  callPeek ConfigFile (\out -> {#call git_config_file__ondisk#} out str')

-- | Allocate a new configuration object
