diff --git a/MDict.hs b/MDict.hs index 406bbba..ec4fc26 100644 --- a/MDict.hs +++ b/MDict.hs @@ -75,8 +75,8 @@ isMDDFile path = map toLower (takeExtension path) == ".mdd" -- FFI imports foreign import ccall "mdict_init" c_mdict_init :: CString -> IO (Ptr ()) -foreign import ccall "mdict_destroy" c_mdict_destroy :: Ptr () -> IO CInt -foreign import ccall "&mdict_destroy" raw_mdict_destroy_finalizer :: FunPtr (Ptr () -> IO CInt) +foreign import ccall "mdict_destory" c_mdict_destroy :: Ptr () -> IO CInt +foreign import ccall "&mdict_destory" raw_mdict_destroy_finalizer :: FunPtr (Ptr () -> IO CInt) foreign import ccall "mdict_lookup" c_mdict_lookup :: Ptr () -> CString -> Ptr (Ptr CChar) -> IO () foreign import ccall "mdict_atomic_lookup" c_mdict_atomic_lookup :: CString -> CString -> IO CString foreign import ccall "mdict_locate" c_mdict_locate :: Ptr () -> CString -> Ptr (Ptr CChar) -> CInt -> IO () diff --git a/cli-example/Main.hs b/cli-example/Main.hs index 56695f8..99cc0d0 100644 --- a/cli-example/Main.hs +++ b/cli-example/Main.hs @@ -3,22 +3,17 @@ import System.Environment (getArgs) import System.Exit (exitFailure) import Control.Monad (when) -import MDict +import MDict (lookupInCollection) main :: IO () main = do - args <- getArgs - when (length args < 2) $ do - putStrLn "Usage: Main " - exitFailure + args <- getArgs + when (length args < 2) $ do + putStrLn "Usage: Main " + exitFailure - let dict = args !! 0 - queryKey = args !! 1 + let dictDir = args !! 0 + queryKey = args !! 1 - res <- processDictionary dict queryKey - html <- case res of - Left err -> error err - Right h -> return h - - - putStrLn (html) + -- Process all files + lookupInCollection dictDir queryKey