module Hix.Managed.Handlers.Hackage where

import Hix.Data.Monad (M)
import Hix.Data.PackageId (PackageId)
import Hix.Data.Version (SourceHash (SourceHash))
import Hix.Pretty (showP)

data HackageHandlers =
  HackageHandlers {
    HackageHandlers -> PackageId -> M SourceHash
fetchHash :: PackageId -> M SourceHash
  }

handlersNull :: HackageHandlers
handlersNull :: HackageHandlers
handlersNull =
  HackageHandlers {
    fetchHash :: PackageId -> M SourceHash
fetchHash = \ PackageId
package -> SourceHash -> M SourceHash
forall a. a -> M a
forall (f :: * -> *) a. Applicative f => a -> f a
pure (Text -> SourceHash
SourceHash (PackageId -> Text
forall b a. (Pretty a, IsString b) => a -> b
showP PackageId
package))
  }