    {-# LANGUAGE TemplateHaskell #-}

    module EmbedData
      ( hlintYaml,
        defaultYaml,
        reportTemplate,
      )
    where

    import Data.ByteString.UTF8
    import Data.FileEmbed

    -- Use NOINLINE below to avoid dirtying too much when these files change

    {-# NOINLINE hlintYaml #-}
    hlintYaml :: (FilePath, Maybe String)
    hlintYaml :: (FilePath, Maybe FilePath)
    hlintYaml = (FilePath
    "data/hlint.yaml", FilePath -> Maybe FilePath
    forall a. a -> Maybe a
    Just (FilePath -> Maybe FilePath) -> FilePath -> Maybe FilePath
    forall a b. (a -> b) -> a -> b
    $ ByteString -> FilePath
    toString $(embedFile "data/hlint.yaml"))

    {-# NOINLINE defaultYaml #-}
    defaultYaml :: String
    defaultYaml :: FilePath
    defaultYaml = ByteString -> FilePath
    toString $(embedFile "data/default.yaml")

    {-# NOINLINE reportTemplate #-}
    reportTemplate :: String
    reportTemplate :: FilePath
    reportTemplate = ByteString -> FilePath
    toString $(embedFile "data/report_template.html")