Skip to content

Commit c4b15ac

Browse files
author
dylan
committed
cleanup some warnings and docs
darcs-hash:20080706201124-dd378-7eaa237d42b2368d40c8bd6dd56b51194fa3a44a
1 parent bf27952 commit c4b15ac

File tree

8 files changed

+15
-13
lines changed

8 files changed

+15
-13
lines changed

Foreign/Matlab/Array/Able.hs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@ module Foreign.Matlab.Array.Able (
99
withMatlabArray, fromMatlabArray
1010
) where
1111

12-
import Control.Applicative
1312
import Foreign.Matlab.Util
1413
import Foreign.Matlab.Types
1514
import Foreign.Matlab.Array.IMX
@@ -46,7 +45,7 @@ instance Matlabable () where
4645
fromMatlab _ = Nothing
4746

4847
-- |Generate a temporary 'MXArray'
49-
withMatlabArray :: Matlabable a => With a MAnyArray (IO a)
48+
withMatlabArray :: Matlabable a => a -> (MAnyArray -> IO a) -> IO a
5049
withMatlabArray = withIMXData . toMatlab
5150

5251
-- |Convert directly from 'MXArray' (without freeing the original array)

Foreign/Matlab/Array/Auto.hs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ mxAuto (MXArray a)
2727
| otherwise = MXAuto =.< newForeignPtr mxDestroyArray_ptr a
2828

2929
-- |Use a 'MXAuto'
30-
withMXAuto :: With (MXAuto a) (MXArray a) (IO b)
30+
withMXAuto :: MXAuto a -> (MXArray a -> IO b) -> IO b
3131
withMXAuto (MXAuto a) f = withForeignPtr a (f . MXArray)
3232

3333
type MAnyAuto = MXAuto MAny

Foreign/Matlab/Array/IMX.hs

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ module Foreign.Matlab.Array.IMX (
88
IMXData(..),
99
IMXArrayElem,
1010

11-
-- * Interface with "Matlab.Array"
11+
-- * Interface with "Foreign.Matlab.Array"
1212
imxData, iMXData,
1313
imxFun, iMXFun,
1414
withIMXData, takeIMXData,
@@ -96,8 +96,8 @@ listIMX s = imxConstr . listIMXArray s
9696
-- |Generic 'IMXData' scalar constructor
9797
scalarIMX :: IMXArrayElem a => a -> IMXData
9898
scalarIMX = imxConstr . scalarIMXArray
99-
emptyIMX :: IMXArrayElem a => a -> IMXData
100-
emptyIMX a = listIMX [0] ([] `asTypeOf` [a])
99+
--emptyIMX :: IMXArrayElem a => a -> IMXData
100+
--emptyIMX a = listIMX [0] ([] `asTypeOf` [a])
101101

102102
-- |Generic 'IMXData' array size accessor
103103
imxSize :: IMXData -> MSize
@@ -218,14 +218,14 @@ iMXData = imxd where
218218
mxArraySetAll m =<< mapM f (elems a)
219219
return $ anyMXArray m
220220

221-
withIMXData :: With IMXData MAnyArray (IO a)
221+
withIMXData :: IMXData -> (MAnyArray -> IO a) -> IO a
222222
withIMXData d f = do
223223
a <- iMXData d
224224
r <- f a
225225
freeMXArray a
226226
return r
227227

228-
withIMXDataList :: With [IMXData] [MAnyArray] (IO a)
228+
withIMXDataList :: [IMXData] -> ([MAnyArray] -> IO a) -> IO a
229229
withIMXDataList = mapWith withIMXData
230230

231231
takeIMXData :: MXArray a -> IO IMXData

Foreign/Matlab/Array/MArray.hs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,10 @@ import Foreign.Matlab.Array
1717
-- |A wrapper for 'MXArray' to allow for a 'Data.Array.MArray.MArray' instance. All instances of this type will have 'MIndex' as @i@
1818
newtype MMXArray i e = MMXArray { mmxArray :: MXArray e }
1919

20-
-- |Get an 'MArray' instance for an 'MXArray'. The resulting object is just a different interface to the same underlying array.
20+
-- |Get an 'Data.Array.MArray.MArray' instance for an 'MXArray'. The resulting object is just a different interface to the same underlying array.
2121
mxMArray :: MXArrayComponent a => MXArray a -> MMXArray MIndex a
2222
mxMArray = MMXArray
23-
-- |Get a 'MXArray' back from its 'MArray' instance
23+
-- |Get a 'MXArray' back from its 'Data.Array.MArray.MArray' instance
2424
unMmxArray :: MXArrayComponent a => MMXArray MIndex a -> MXArray a
2525
unMmxArray = mmxArray
2626

Foreign/Matlab/Engine.hsc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ data EngineEvalArg a = EvalArray (MXArray a) | EvalVar String
7373
-- This automates 'engineSetVar' on arguments (using \"hseval_inN\"), 'engineEval', and 'engineGetVar' on results (using \"hseval_outN\").
7474
engineEvalFun :: Engine -> String -> [EngineEvalArg a] -> Int -> IO [MAnyArray]
7575
engineEvalFun eng fun arg no = do
76-
arg <- zipWithM makearg arg [1..]
76+
arg <- zipWithM makearg arg [1 :: Int ..]
7777
let out = map makeout [1..no]
7878
let outs = if out == [] then "" else "[" ++ unwords out ++ "] = "
7979
engineEval eng (outs ++ fun ++ "(" ++ intercalate "," arg ++ ")")

Foreign/Matlab/Internal.hsc

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -108,6 +108,7 @@ instance MType MXClassID MXClass where
108108
hs2mx MXClassUint64 = #const mxUINT64_CLASS
109109
hs2mx MXClassFun = #const mxFUNCTION_CLASS
110110
hs2mx MXClassObject = #const mxOBJECT_CLASS
111+
mxClassOf _ = error "mxClassOf: no class for MXClassID"
111112

112113
type MXChar = #type mxChar
113114
type MChar = Char

Foreign/Matlab/Runtime.hsc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,10 +57,12 @@ terminateApp term = modifyMVar_ initialized maybeterm where
5757
else fail "mclTerminateApplication"
5858
maybeterm n = return $ pred n
5959

60+
{-
6061
foreign import ccall unsafe mclInitializeApplication :: InitApp
6162
foreign import ccall unsafe mclTerminateApplication :: TermApp
6263
initialize = initializeApp mclInitializeApplication
6364
terminate = terminateApp mclTerminateApplication
65+
-}
6466

6567
foreign import ccall "dynamic" mkInitApp :: FunPtr a -> InitApp
6668
foreign import ccall "dynamic" mkTermApp :: FunPtr a -> TermApp

Foreign/Matlab/Util.hs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,10 @@ mapWithArrayLen w l f =
5050
in set l 0
5151

5252
segment :: Int -> [a] -> [[a]]
53-
segment n [] = []
53+
segment _ [] = []
5454
segment n l = a : segment n r where (a,r) = splitAt n l
5555

5656
replaceIndex :: [a] -> Int -> a -> [a]
5757
replaceIndex [] _ _ = error "replaceIndex: index too large"
58-
replaceIndex (x:l) 0 y = y:l
58+
replaceIndex (_:l) 0 y = y:l
5959
replaceIndex (x:l) n y = x : replaceIndex l (pred n) y

0 commit comments

Comments
 (0)