packages feed

inline-java 0.5 → 0.5.1

raw patch · 3 files changed

+10/−7 lines, 3 files

Files

README.md view
@@ -2,9 +2,11 @@  [![Circle CI](https://circleci.com/gh/tweag/inline-java.svg?style=svg)](https://circleci.com/gh/tweag/inline-java) -**NOTE: you'll need GHC >= 8.0.2 to compile and use this package. Use-`stack --nix --stack-yaml stack-HEAD.yaml build` ahead of a new GHC-release.**+**NOTE: you'll need GHC >= 8.0.2 to compile and use this package. Use**+```+stack --nix --stack-yaml stack-HEAD.yaml build+```+**ahead of a new GHC release to build using GHC HEAD.**  The Haskell standard includes a native foreign function interface (FFI). It can be a pain to use and in any case only C support is@@ -21,16 +23,19 @@ ```Haskell {-# LANGUAGE DataKinds #-} {-# LANGUAGE QuasiQuotes #-}+{-# LANGUAGE OverloadedStrings #-} {-# LANGUAGE ScopedTypeVariables #-} module Main where  import Data.Int+import Data.Text (Text) import Language.Java import Language.Java.Inline  main :: IO Int32 main = withJVM [] $ do-    message <- reflect "Hello World!"+    -- Extra type annotation workaround for current GHC HEAD.+    message :: J ('Class "java.lang.String") <- reflect ("Hello World!" :: Text)     [java| { javax.swing.JOptionPane.showMessageDialog(null, $message);              return 0; } |] ```
inline-java.cabal view
@@ -1,5 +1,5 @@ name:                inline-java-version:             0.5+version:             0.5.1 synopsis:            Java interop via inline Java code in Haskell modules. description:         Please see README.md. homepage:            http://github.com/tweag/inline-java#readme
src/Language/Java/Inline.hs view
@@ -267,7 +267,6 @@     withSystemTempDirectory "inlinejava" $ \dir -> do       let src = dir </> name <.> "java"       emit src unit-      putStrLn (Java.prettyPrint unit)       callProcess "javac" [src]       BS.readFile (dir </> name <.> "class")   f <- TH.newName "inlinejava__bytecode"@@ -333,7 +332,6 @@         vtys <- forM (antis block) $ \v -> do           name <- getValueName v           info <- TH.reify name-          TH.runIO $ print info           case info of #if MIN_VERSION_template_haskell(2,11,0)             TH.VarI _ (TH.AppT (TH.ConT nJ) thty) _