{-# LANGUAGE ImpredicativeTypes #-}
module Build.Task.Applicative (dependencies) where
import Control.Applicative
import Build.Task
dependencies :: Task Applicative k v -> [k]
dependencies :: forall k v. Task Applicative k v -> [k]
dependencies Task Applicative k v
task = Const [k] v -> [k]
forall {k} a (b :: k). Const a b -> a
getConst (Const [k] v -> [k]) -> Const [k] v -> [k]
forall a b. (a -> b) -> a -> b
$ (k -> Const [k] v) -> Const [k] v
Task Applicative k v
task (\k
k -> [k] -> Const [k] v
forall {k} a (b :: k). a -> Const a b
Const [k
k])