feat(third_party/bazel): Check in rules_haskell from Tweag

This commit is contained in:
Vincent Ambo 2019-07-04 11:18:12 +01:00
parent 2eb1dc26e4
commit f723b8b878
479 changed files with 51484 additions and 0 deletions

View file

@ -0,0 +1,26 @@
load(
"@io_tweag_rules_haskell//haskell:haskell.bzl",
"haskell_library",
"haskell_test",
)
package(default_testonly = 1)
haskell_library(
name = "lib",
srcs = ["src/Lib.hs"],
deps = [
"//tests/hackage:base",
"//tests/hackage:transformers",
],
)
haskell_test(
name = "binary-with-import",
srcs = ["Main.hs"],
visibility = ["//visibility:public"],
deps = [
":lib",
"//tests/hackage:base",
],
)

View file

@ -0,0 +1,6 @@
module Main where
import Lib (printValue)
main :: IO ()
main = printValue

View file

@ -0,0 +1,13 @@
module Lib (printValue) where
import Control.Monad (void)
import Control.Monad.Trans.Class (lift)
import Control.Monad.Trans.Except (ExceptT, runExceptT)
getValue :: Monad m => ExceptT e m Int
getValue = pure 42
printValue :: IO ()
printValue = void $ runExceptT $ do
value <- getValue
lift $ print value