{-# OPTIONS -fno-warn-orphans #-}

module Data.Function.Foldable
    (
    ) where

import Data.Foldable hiding (find)
import Data.Monoid
import Data.Searchable
import Prelude

instance Finite t => Foldable ((->) t) where
    foldMap :: forall m a. Monoid m => (a -> m) -> (t -> a) -> m
foldMap a -> m
am t -> a
ta = [m] -> m
forall a. Monoid a => [a] -> a
mconcat ((t -> m) -> [t] -> [m]
forall a b. (a -> b) -> [a] -> [b]
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
fmap (a -> m
am (a -> m) -> (t -> a) -> t -> m
forall b c a. (b -> c) -> (a -> b) -> a -> c
. t -> a
ta) [t]
forall a. Finite a => [a]
allValues)