File: specialize-instance-out.hs

package info (click to toggle)
haskell-ormolu 0.1.2.0-1
  • links: PTS
  • area: main
  • in suites: bullseye
  • size: 3,392 kB
  • sloc: haskell: 11,134; makefile: 7
file content (14 lines) | stat: -rw-r--r-- 365 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
data Foo a = Foo a

data VT v m r = VT v m r

instance (Eq a) => Eq (Foo a) where
  {-# SPECIALIZE instance Eq (Foo [(Int, Bar)]) #-}
  (==) (Foo a) (Foo b) = (==) a b

instance (Num r, V.Vector v r, Factored m r) => Num (VT v m r) where
  {-# SPECIALIZE instance
    ( Factored m Int => Num (VT U.Vector m Int)
    )
    #-}
  VT x + VT y = VT $ V.zipWith (+) x y