himari-1.0.0.1: test/HlintSamples/BasePartial.hs
{-# OPTIONS_GHC -Wno-x-partial #-}
-- Sample file to test base library hlint rules
-- This file intentionally uses partial functions to test hlint rules
module HlintSamples.BasePartial where
import Data.List qualified as L
import Data.List.NonEmpty qualified as NE
import Debug.Trace (trace, traceM, traceShow)
import Himari
-- These should trigger warnings
useHead :: [Int] -> Int
useHead = head
useHeadQualified :: [Int] -> Int
useHeadQualified = L.head
-- This should NOT trigger a warning (NonEmpty.head is safe)
useNonEmptyHead :: NonEmpty Int -> Int
useNonEmptyHead = NE.head
-- Debug.Trace should trigger warnings
useTrace :: Int -> Int
useTrace x = trace "debug" x
useTraceShow :: (Show a) => a -> a
useTraceShow x = traceShow x x
useTraceM :: IO ()
useTraceM = traceM "debug"