packages feed

inline-r 0.7.0.0 → 0.7.1.0

raw patch · 3 files changed

+16/−5 lines, 3 files

Files

inline-r.cabal view
@@ -1,5 +1,5 @@ name:                inline-r-version:             0.7.0.0+version:             0.7.1.0 license:             BSD3 copyright:           Copyright (c) 2013-2015 Amgen, Inc.                      Copyright (c) 2015 Tweag I/O Limited.
src/Data/Vector/SEXP.chs view
@@ -327,15 +327,15 @@   -- directly.   basicUnsafeSlice i l v         = unsafeInlineIO $ do     mv <- Mutable.new l-    copyArray (toVecPtr v `plusPtr` i)-              (toMVecPtr mv)+    copyArray (toMVecPtr mv)+              (toVecPtr v `plusPtr` i)               l     G.basicUnsafeFreeze mv   basicUnsafeIndexM v i          = return . unsafeInlineIO                                  $ peekElemOff (toVecPtr v) i   basicUnsafeCopy   mv v         = unsafePrimToPrim $-    copyArray (toVecPtr v)-              (toMVecPtr mv)+    copyArray (toMVecPtr mv)+              (toVecPtr v)               (G.basicLength v)    elemseq _                      = seq
tests/Test/Vector.hs view
@@ -9,12 +9,14 @@ {-# LANGUAGE FlexibleContexts #-} {-# LANGUAGE FlexibleInstances #-} {-# LANGUAGE GADTs #-}+{-# LANGUAGE OverloadedLists #-} {-# LANGUAGE QuasiQuotes #-} {-# LANGUAGE RankNTypes #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TemplateHaskell #-} {-# LANGUAGE TypeSynonymInstances #-} {-# LANGUAGE UndecidableInstances #-}+{-# LANGUAGE ViewPatterns #-}  {-# OPTIONS_GHC -fno-warn-orphans #-} @@ -31,6 +33,7 @@ import qualified Foreign.R as R import H.Prelude hiding (Show) import Language.R.QQ+import Language.R.HExp (HExp(..), hexp) import Test.Tasty import Test.Tasty.QuickCheck import Test.Tasty.HUnit@@ -119,6 +122,13 @@            return $ immV V.! 0     i @?= 1 +vectorCopy :: TestTree+vectorCopy = testCase "Copying vector of doubles works" $ runRegion $ do+  vs1 :: R.SEXP s 'R.Real <- V.toSEXP (V.fromList [1..3::Double])+  vs2 :: R.SEXP s 'R.Real <- V.unsafeToSEXP (V.fromList [1..3::Double])+  R.SomeSEXP (hexp -> Logical [R.True]) <- [r| identical(vs1_hs, vs2_hs) |]+  return ()+ tests :: TestTree tests = testGroup "Tests."   [ testGroup "Data.Vector.Storable.Vector (Int32)"@@ -127,5 +137,6 @@       [testNumericSEXPVector (undefined :: Data.Vector.SEXP.Vector s 'R.Real Double)]   , testGroup "Regression tests" [fromListLength                                  ,vectorIsImmutable+                                 ,vectorCopy                                  ]   ]