packages feed

jvm-streaming 0.2 → 0.2.1

raw patch · 3 files changed

+10/−8 lines, 3 filesdep ~inline-javadep ~jnidep ~jvm

Dependency ranges changed: inline-java, jni, jvm

Files

jvm-streaming.cabal view
@@ -1,5 +1,5 @@ name:                jvm-streaming-version:             0.2+version:             0.2.1 synopsis:            Expose Java iterators as streams from the streaming package. description:         Please see README.md. homepage:            http://github.com/tweag/inline-java/tree/master/jvm-streaming#readme@@ -26,9 +26,9 @@   build-depends:     base >= 4.7 && < 5,     distributed-closure >= 0.3,-    jni >= 0.3.0,-    jvm >= 0.2.0,-    inline-java >= 0.6,+    jni >= 0.4.0,+    jvm >= 0.3.0,+    inline-java >= 0.7,     singletons >= 2.2,     streaming >= 0.1.4 
src/Language/Java/Streaming.hs view
@@ -16,6 +16,7 @@  {-# OPTIONS_GHC -fno-warn-orphans #-} {-# OPTIONS_GHC -fno-warn-unused-top-binds #-}+{-# OPTIONS_GHC -fplugin=Language.Java.Inline.Plugin #-}  module Language.Java.Streaming () where @@ -49,7 +50,7 @@         writeIORef ref (Streaming.cons x stream)         return $ fromIntegral $ fromEnum True -popStream :: Reflect a ty => IORef (Stream (Of a) IO ()) -> IO (J ty)+popStream :: Reflect a => IORef (Stream (Of a) IO ()) -> IO (J (Interp a)) popStream ref = do     stream <- readIORef ref     Streaming.uncons stream >>= \case@@ -88,7 +89,7 @@     freeStablePtr sptr  newIterator-  :: Reflect a ty+  :: Reflect a   => Stream (Of a) IO ()   -> IO (J ('Iface "java.util.Iterator")) newIterator stream = do@@ -140,7 +141,7 @@ withStatic [d|   type instance Interp (Stream (Of a) m r) = 'Iface "java.util.Iterator" -  instance Reify a ty => Reify (Stream (Of a) IO ()) ('Iface "java.util.Iterator") where+  instance Reify a => Reify (Stream (Of a) IO ()) where     reify itLocal = do       -- We make sure the iterator remains valid while we reference it.       it <- JNI.newGlobalRef itLocal@@ -151,6 +152,6 @@             obj <- call it "next" []             Left <$> reify (unsafeCast (obj :: JObject)) -  instance Reflect a ty => Reflect (Stream (Of a) IO ()) ('Iface "java.util.Iterator") where+  instance Reflect a => Reflect (Stream (Of a) IO ()) where     reflect x = newIterator x   |]
tests/Language/Java/StreamingSpec.hs view
@@ -1,5 +1,6 @@ {-# LANGUAGE DataKinds #-} {-# LANGUAGE QuasiQuotes #-}+{-# OPTIONS_GHC -fplugin=Language.Java.Inline.Plugin #-}  module Language.Java.StreamingSpec where