packages feed

haskell-tools-builtin-refactorings-1.0.0.0: test/ExtensionOrganizerTest/BangPatternsTest/InPattern.hs

{-# LANGUAGE BangPatterns,
             ViewPatterns
             #-}

module InPattern where


data Rec = Rec { num :: Int}

(!x):(!xs) = [1..]  {-* BangPatterns, BangPatterns *-}

Just (Just !y) = Just $ Just 5  {-* BangPatterns *-}

(!a1,!a2,!a3) = (1, 2, 3) {-* BangPatterns, BangPatterns, BangPatterns *-}

[!b1, !b2] = [1,2]  {-* BangPatterns, BangPatterns *-}

f :: Rec -> Int
f Rec { num = !num } = num  {-* BangPatterns *-}

g x@(!y) = () {-* BangPatterns *-}

h (id -> !x) = () {-* BangPatterns, ViewPatterns *-}