shake-ext 2.9.0.1 → 2.10.0.0
raw patch · 2 files changed
+46/−1 lines, 2 filesPVP ok
version bump matches the API change (PVP)
API changes (from Hackage documentation)
+ Development.Shake.Literate: illiterateA :: FilePath -> FilePath -> Action ()
+ Development.Shake.Literate: literateAlex :: Rules ()
+ Development.Shake.Literate: literateHappy :: Rules ()
+ Development.Shake.Literate: literateHaskell :: Rules ()
+ Development.Shake.Literate: literateIdris :: Rules ()
Files
- shake-ext.cabal +2/−1
- src/Development/Shake/Literate.hs +44/−0
shake-ext.cabal view
@@ -1,6 +1,6 @@ cabal-version: 1.18 name: shake-ext-version: 2.9.0.1+version: 2.10.0.0 license: BSD3 license-file: LICENSE copyright: Copyright: (c) 2018 Vanessa McHale@@ -36,6 +36,7 @@ Development.Shake.C Development.Shake.CCJS Development.Shake.Elm+ Development.Shake.Literate hs-source-dirs: src other-modules: Development.Shake.TH
+ src/Development/Shake/Literate.hs view
@@ -0,0 +1,44 @@+-- | Module containing functions for working with the+-- [illiterate](http://github.com/vmchale/illiterate) preprocessor for literate+-- programs.+module Development.Shake.Literate ( -- * Action+ illiterateA+ -- * Rules+ , literateHaskell+ , literateIdris+ , literateAlex+ , literateHappy+ ) where++import Development.Shake+import Development.Shake.FilePath++illiterateA :: FilePath -- ^ Literate source file+ -> FilePath -- ^ Generated source+ -> Action ()+illiterateA inF outF = do+ (Stdout o) <- cmd ["lit", inF]+ liftIO $ writeFile outF o++literateRules :: String -- ^ File extension+ -> Rules ()+literateRules ext = pat %> g+ where pat = "//*." <> ('l' : ext)+ g out = let new = fst (splitExtension out) <> ('.' : ext)+ in illiterateA out new++-- | Rules for building @.lhs@ files.+literateHaskell :: Rules ()+literateHaskell = literateRules "hs"++-- | Rules for building @.lidr@ files.+literateIdris :: Rules ()+literateIdris = literateRules "idr"++-- | Rules for building @.lx@ files+literateAlex :: Rules ()+literateAlex = literateRules "x"++-- | Rules for building @.ly@ files+literateHappy :: Rules ()+literateHappy = literateRules "y"