hpc-codecov-0.6.0.0: test/data/eo01/eo01.hs
{-# LANGUAGE GeneralizedNewtypeDeriving #-}
module Main where
data R = R
{ field1 :: Bool
, field2 :: Bool
}
pm01 :: Maybe Int -> Int
pm01 (Just n) =
n + 1
pm01 Nothing =
12345
br01 :: Int -> Int -> Int
br01 a b
| a < b = b
| a == 0 = b
| b < 0 = a + b
| otherwise = 12345
newtype A f x = A {unA :: f x}
deriving (Functor, Applicative, Monad)
newtype B f x = B {unB :: f x}
instance Functor f => Functor (B f) where
fmap f (B fx) = B (fmap f fx)
br02 :: Int -> Int -> Int -> Int
br02 a b c
| a < b = b
| a == 0 = b
| b < c = a + b
| otherwise = 12345
main :: IO ()
main = do
case R True False of
R t f -> print (t && f)
print $ pm01 Nothing
print $ br01 2 1
print $ br02 0 (-1) 0