summaryrefslogtreecommitdiff
path: root/testsuite/tests/printer/TestBoolFormula.hs
blob: e76ce40fe55668e1515af8d8f5ea9e9bb7d46628 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
module TestBoolFormula where

class ManyOps a where
    aOp :: a -> a -> Bool
    aOp = undefined
    bOp :: a -> a -> Bool
    bOp = undefined
    cOp :: a -> a -> Bool
    cOp = undefined
    dOp :: a -> a -> Bool
    dOp = undefined
    eOp :: a -> a -> Bool
    eOp = undefined
    fOp :: a -> a -> Bool
    fOp = undefined
    {-# MINIMAL  ( aOp)
               | ( bOp   , cOp)
               | ((dOp  |  eOp) , fOp)
      #-}

class Foo a where
    bar :: a -> a -> Bool
    foo :: a -> a -> Bool
    baq :: a -> a -> Bool
    baq = undefined
    baz :: a -> a -> Bool
    baz = undefined
    quux :: a -> a -> Bool
    quux = undefined
    {-# MINIMAL bar, (foo, baq | foo, quux) #-}

instance Foo Int where
    bar = undefined
    baz = undefined
    quux = undefined
    foo = undefined