1module Distribution.Types.Benchmark.Lens ( 2 Benchmark, 3 module Distribution.Types.Benchmark.Lens, 4 ) where 5 6import Distribution.Compat.Lens 7import Distribution.Compat.Prelude 8import Prelude () 9 10import Distribution.Types.Benchmark (Benchmark) 11import Distribution.Types.BenchmarkInterface (BenchmarkInterface) 12import Distribution.Types.BuildInfo (BuildInfo) 13import Distribution.Types.UnqualComponentName (UnqualComponentName) 14 15import qualified Distribution.Types.Benchmark as T 16 17benchmarkName :: Lens' Benchmark UnqualComponentName 18benchmarkName f s = fmap (\x -> s { T.benchmarkName = x }) (f (T.benchmarkName s)) 19{-# INLINE benchmarkName #-} 20 21benchmarkInterface :: Lens' Benchmark BenchmarkInterface 22benchmarkInterface f s = fmap (\x -> s { T.benchmarkInterface = x }) (f (T.benchmarkInterface s)) 23{-# INLINE benchmarkInterface #-} 24 25benchmarkBuildInfo :: Lens' Benchmark BuildInfo 26benchmarkBuildInfo f s = fmap (\x -> s { T.benchmarkBuildInfo = x }) (f (T.benchmarkBuildInfo s)) 27{-# INLINE benchmarkBuildInfo #-} 28