packages feed

papa-base-export (empty) → 0.2.0

raw patch · 28 files changed

+952/−0 lines, 28 filesdep +QuickCheckdep +basedep +directorybuild-type:Customsetup-changed

Dependencies added: QuickCheck, base, directory, doctest, filepath, template-haskell

Files

+ LICENSE view
@@ -0,0 +1,77 @@+CSIRO Open Source Software License Agreement (variation of the BSD / MIT+License)++Copyright (c) 2016, Commonwealth Scientific and Industrial Research Organisation+(CSIRO) ABN 41 687 119 230.++All rights reserved. CSIRO is willing to grant you a license to this+aemo-webservice on the following terms, except where otherwise indicated for+third party material.++Redistribution and use of this software in source and binary forms, with or+without modification, are permitted provided that the following conditions are+met:++* Redistributions of source code must retain the above copyright notice, this+  list of conditions and the following disclaimer.++* Redistributions in binary form must reproduce the above copyright notice, this+  list of conditions and the following disclaimer in the documentation and/or+  other materials provided with the distribution.++* Neither the name of CSIRO nor the names of its contributors may be used to+  endorse or promote products derived from this software without specific prior+  written permission of CSIRO.++EXCEPT AS EXPRESSLY STATED IN THIS AGREEMENT AND TO THE FULL EXTENT PERMITTED BY+APPLICABLE LAW, THE SOFTWARE IS PROVIDED "AS-IS". CSIRO MAKES NO+REPRESENTATIONS, WARRANTIES OR CONDITIONS OF ANY KIND, EXPRESS OR IMPLIED,+INCLUDING BUT NOT LIMITED TO ANY REPRESENTATIONS, WARRANTIES OR CONDITIONS+REGARDING THE CONTENTS OR ACCURACY OF THE SOFTWARE, OR OF TITLE,+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT, THE ABSENCE+OF LATENT OR OTHER DEFECTS, OR THE PRESENCE OR ABSENCE OF ERRORS, WHETHER OR NOT+DISCOVERABLE.++TO THE FULL EXTENT PERMITTED BY APPLICABLE LAW, IN NO EVENT SHALL CSIRO BE+LIABLE ON ANY LEGAL THEORY (INCLUDING, WITHOUT LIMITATION, IN AN ACTION FOR+BREACH OF CONTRACT, NEGLIGENCE OR OTHERWISE) FOR ANY CLAIM, LOSS, DAMAGES OR+OTHER LIABILITY HOWSOEVER INCURRED.  WITHOUT LIMITING THE SCOPE OF THE PREVIOUS+SENTENCE THE EXCLUSION OF LIABILITY SHALL INCLUDE: LOSS OF PRODUCTION OR+OPERATION TIME, LOSS, DAMAGE OR CORRUPTION OF DATA OR RECORDS; OR LOSS OF+ANTICIPATED SAVINGS, OPPORTUNITY, REVENUE, PROFIT OR GOODWILL, OR OTHER ECONOMIC+LOSS; OR ANY SPECIAL, INCIDENTAL, INDIRECT, CONSEQUENTIAL, PUNITIVE OR EXEMPLARY+DAMAGES, ARISING OUT OF OR IN CONNECTION WITH THIS AGREEMENT, ACCESS OF THE+SOFTWARE OR ANY OTHER DEALINGS WITH THE SOFTWARE, EVEN IF CSIRO HAS BEEN ADVISED+OF THE POSSIBILITY OF SUCH CLAIM, LOSS, DAMAGES OR OTHER LIABILITY.++APPLICABLE LEGISLATION SUCH AS THE AUSTRALIAN CONSUMER LAW MAY APPLY+REPRESENTATIONS, WARRANTIES, OR CONDITIONS, OR IMPOSES OBLIGATIONS OR LIABILITY+ON CSIRO THAT CANNOT BE EXCLUDED, RESTRICTED OR MODIFIED TO THE FULL EXTENT SET+OUT IN THE EXPRESS TERMS OF THIS CLAUSE ABOVE "CONSUMER GUARANTEES".  TO THE+EXTENT THAT SUCH CONSUMER GUARANTEES CONTINUE TO APPLY, THEN TO THE FULL EXTENT+PERMITTED BY THE APPLICABLE LEGISLATION, THE LIABILITY OF CSIRO UNDER THE+RELEVANT CONSUMER GUARANTEE IS LIMITED (WHERE PERMITTED AT CSIRO'S OPTION) TO+ONE OF FOLLOWING REMEDIES OR SUBSTANTIALLY EQUIVALENT REMEDIES:++(a)               THE REPLACEMENT OF THE SOFTWARE, THE SUPPLY OF EQUIVALENT+                  SOFTWARE, OR SUPPLYING RELEVANT SERVICES AGAIN;+(b)               THE REPAIR OF THE SOFTWARE;+(c)               THE PAYMENT OF THE COST OF REPLACING THE+                  SOFTWARE, OF ACQUIRING EQUIVALENT SOFTWARE, HAVING THE+                  RELEVANT SERVICES SUPPLIED AGAIN, OR HAVING THE SOFTWARE+                  REPAIRED.++IN THIS CLAUSE, CSIRO INCLUDES ANY THIRD PARTY AUTHOR OR OWNER OF ANY PART OF+THE SOFTWARE OR MATERIAL DISTRIBUTED WITH IT.  CSIRO MAY ENFORCE ANY RIGHTS ON+BEHALF OF THE RELEVANT THIRD PARTY.++Third Party Components++The following third party components are distributed with the Software.  You+agree to comply with the license terms for these components as part of accessing+the Software.  Other third party software may also be identified in separate+files distributed with the Software.++___________________________________________________________________++___________________________________________________________________
+ Setup.lhs view
@@ -0,0 +1,44 @@+#!/usr/bin/env runhaskell+\begin{code}+{-# OPTIONS_GHC -Wall #-}+module Main (main) where++import Data.List ( nub )+import Data.Version ( showVersion )+import Distribution.Package ( PackageName(PackageName), PackageId, InstalledPackageId, packageVersion, packageName )+import Distribution.PackageDescription ( PackageDescription(), TestSuite(..) )+import Distribution.Simple ( defaultMainWithHooks, UserHooks(..), simpleUserHooks )+import Distribution.Simple.Utils ( rewriteFile, createDirectoryIfMissingVerbose )+import Distribution.Simple.BuildPaths ( autogenModulesDir )+import Distribution.Simple.Setup ( BuildFlags(buildVerbosity), fromFlag )+import Distribution.Simple.LocalBuildInfo ( withLibLBI, withTestLBI, LocalBuildInfo(), ComponentLocalBuildInfo(componentPackageDeps) )+import Distribution.Verbosity ( Verbosity )+import System.FilePath ( (</>) )++main :: IO ()+main = defaultMainWithHooks simpleUserHooks+  { buildHook = \pkg lbi hooks flags -> do+     generateBuildModule (fromFlag (buildVerbosity flags)) pkg lbi+     buildHook simpleUserHooks pkg lbi hooks flags+  }++generateBuildModule :: Verbosity -> PackageDescription -> LocalBuildInfo -> IO ()+generateBuildModule verbosity pkg lbi = do+  let dir = autogenModulesDir lbi+  createDirectoryIfMissingVerbose verbosity True dir+  withLibLBI pkg lbi $ \_ libcfg -> do+    withTestLBI pkg lbi $ \suite suitecfg -> do+      rewriteFile (dir </> "Build_" ++ testName suite ++ ".hs") $ unlines+        [ "module Build_" ++ testName suite ++ " where"+        , "deps :: [String]"+        , "deps = " ++ (show $ formatdeps (testDeps libcfg suitecfg))+        ]+  where+    formatdeps = map (formatone . snd)+    formatone p = case packageName p of+      PackageName n -> n ++ "-" ++ showVersion (packageVersion p)++testDeps :: ComponentLocalBuildInfo -> ComponentLocalBuildInfo -> [(InstalledPackageId, PackageId)]+testDeps xs ys = nub $ componentPackageDeps xs ++ componentPackageDeps ys++\end{code}
+ changelog view
@@ -0,0 +1,3 @@+0.2.0++* Initial release.
+ papa-base-export.cabal view
@@ -0,0 +1,88 @@+name:               papa-base-export+version:            0.2.0+license:            BSD3+license-file:       LICENSE+author:             Tony Morris <ʇǝu˙sıɹɹoɯʇ@ןןǝʞsɐɥ>+maintainer:         Tony Morris+copyright:          Copyright (c) 2017, Commonwealth Scientific and Industrial Research Organisation (CSIRO) ABN 41 687 119 230.+synopsis:           Prelude with only useful functions+category:           Prelude+description:        Prelude with only useful functions+homepage:           https://github.com/data61/papa-base-export+bug-reports:        https://github.com/data61/papa-base-export/issues+cabal-version:      >= 1.10+build-type:         Custom+extra-source-files: changelog++source-repository   head+  type:             git+  location:         git@github.com:data61/papa-base-export.git++flag                small_base+  description:      Choose the new, split-up base package.++library+  default-language:+                    Haskell2010++  build-depends:+                    base >= 4.8 && < 5+                    +  ghc-options:+                    -Wall++  default-extensions:+                    NoImplicitPrelude++  hs-source-dirs:+                    src++  exposed-modules:+                    Papa.Base.Export+                    Papa.Base.Export.Control.Applicative+                    Papa.Base.Export.Control.Category+                    Papa.Base.Export.Control.Monad+                    Papa.Base.Export.Data.Bool+                    Papa.Base.Export.Data.Char+                    Papa.Base.Export.Data.Either+                    Papa.Base.Export.Data.Eq+                    Papa.Base.Export.Data.Foldable+                    Papa.Base.Export.Data.Function+                    Papa.Base.Export.Data.Functor+                    Papa.Base.Export.Data.Int+                    Papa.Base.Export.Data.List+                    Papa.Base.Export.Data.List.NonEmpty+                    Papa.Base.Export.Data.Maybe+                    Papa.Base.Export.Data.Monoid+                    Papa.Base.Export.Data.Ord+                    Papa.Base.Export.Data.Ratio+                    Papa.Base.Export.Data.Semigroup+                    Papa.Base.Export.Data.String+                    Papa.Base.Export.Data.Traversable+                    Papa.Base.Export.Data.Void+                    Papa.Base.Export.Prelude++test-suite doctests+  type:+                    exitcode-stdio-1.0++  main-is:+                    doctests.hs++  default-language:+                    Haskell2010++  build-depends:+                    base < 5 && >= 3+                    , doctest >= 0.9.7+                    , filepath >= 1.3+                    , directory >= 1.1+                    , QuickCheck >= 2.0+                    , template-haskell >= 2.8++  ghc-options:+                    -Wall+                    -threaded++  hs-source-dirs:+                    test
+ src/Papa/Base/Export.hs view
@@ -0,0 +1,29 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export(+  module P+) where++import Papa.Base.Export.Control.Applicative as P+import Papa.Base.Export.Control.Category as P+import Papa.Base.Export.Control.Monad as P+import Papa.Base.Export.Data.Bool as P+import Papa.Base.Export.Data.Char as P+import Papa.Base.Export.Data.Either as P+import Papa.Base.Export.Data.Eq as P+import Papa.Base.Export.Data.Foldable as P+import Papa.Base.Export.Data.Function as P+import Papa.Base.Export.Data.Functor as P+import Papa.Base.Export.Data.Int as P+import Papa.Base.Export.Data.List as P+import Papa.Base.Export.Data.List.NonEmpty as P+import Papa.Base.Export.Data.Maybe as P+import Papa.Base.Export.Data.Monoid as P+import Papa.Base.Export.Data.Ord as P+import Papa.Base.Export.Data.Ratio as P+import Papa.Base.Export.Data.Semigroup as P+import Papa.Base.Export.Data.String as P+import Papa.Base.Export.Data.Traversable as P+import Papa.Base.Export.Data.Void as P+import Papa.Base.Export.Prelude as P+
+ src/Papa/Base/Export/Control/Applicative.hs view
@@ -0,0 +1,21 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Control.Applicative(+  module P+) where++import Control.Applicative as P(+    Applicative(pure, (<*>), (*>), (<*))+  , Alternative(empty, (<|>), some, many)+  , Const(getConst)+  , WrappedMonad(unwrapMonad)+  , WrappedArrow(unwrapArrow)+  , ZipList(getZipList)+  , (<$>)+  , (<$)+  , (<**>)+  , liftA+  , liftA2+  , liftA3+  , optional+  )
+ src/Papa/Base/Export/Control/Category.hs view
@@ -0,0 +1,9 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Control.Category(+  module P+) where++import Control.Category as P(+    Category(id, (.))+  )
+ src/Papa/Base/Export/Control/Monad.hs view
@@ -0,0 +1,25 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Control.Monad(+  module P+) where++import Control.Monad as P(+    Functor(fmap)+  , Monad((>>=))+  , MonadPlus(mzero, mplus)+  , forever+  , void+  , msum+  , mfilter+  , filterM+  , foldM+  , foldM_+  , replicateM+  , replicateM_+  , guard+  , when+  , unless+  , (<$!>)+  )+
+ src/Papa/Base/Export/Data/Bool.hs view
@@ -0,0 +1,14 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Bool(+  module P+) where++import Data.Bool as P(+    (&&)+  , (||)+  , not+  , otherwise+  , bool+  )+
+ src/Papa/Base/Export/Data/Char.hs view
@@ -0,0 +1,36 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Char(+  module P+) where++import Data.Char as P(+    Char+  , isControl+  , isSpace+  , isLower+  , isUpper+  , isAlpha+  , isAlphaNum+  , isPrint+  , isDigit+  , isOctDigit+  , isHexDigit+  , isLetter+  , isMark+  , isNumber+  , isPunctuation+  , isSymbol+  , isSeparator+  , isAscii+  , isLatin1+  , isAsciiUpper+  , isAsciiLower+  , GeneralCategory(UppercaseLetter, LowercaseLetter, TitlecaseLetter, ModifierLetter, OtherLetter, NonSpacingMark, SpacingCombiningMark, EnclosingMark, DecimalNumber, LetterNumber, OtherNumber, ConnectorPunctuation, DashPunctuation, OpenPunctuation, ClosePunctuation, InitialQuote, FinalQuote, OtherPunctuation, MathSymbol, CurrencySymbol, ModifierSymbol, OtherSymbol, Space, LineSeparator, ParagraphSeparator, Control, Format, Surrogate, PrivateUse, NotAssigned)+  , toUpper+  , toLower+  , toTitle+  , ord+  , chr+  )+
+ src/Papa/Base/Export/Data/Either.hs view
@@ -0,0 +1,14 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Either(+  module P+) where++import Data.Either as P(+    Either(Left, Right)+  , either+  , isLeft+  , isRight+  , partitionEithers+  )+
+ src/Papa/Base/Export/Data/Eq.hs view
@@ -0,0 +1,10 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Eq(+  module P+) where++import Data.Eq as P(+    Eq((==), (/=))+  )+
+ src/Papa/Base/Export/Data/Foldable.hs view
@@ -0,0 +1,21 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Foldable(+  module P+) where++import Data.Foldable as P(+    Foldable(fold, foldMap, foldr, foldr', foldl, foldl', toList, null, elem, sum, product)+  , foldrM+  , foldlM+  , traverse_+  , for_+  , sequenceA_+  , asum+  , and+  , or+  , any+  , all+  , notElem+  , find+  )
+ src/Papa/Base/Export/Data/Function.hs view
@@ -0,0 +1,13 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Function(+  module P+) where++import Data.Function as P(+    ($)+  , (&)+  , fix+  , on+  )+
+ src/Papa/Base/Export/Data/Functor.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Functor(+  module P+) where++import Data.Functor as P(+    Functor(fmap, (<$))+  , ($>)+  , (<$>)+  , void+  )
+ src/Papa/Base/Export/Data/Int.hs view
@@ -0,0 +1,14 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Int(+  module P+) where++import Data.Int as P(+    Int+  , Int8+  , Int16+  , Int32+  , Int64+  )+
+ src/Papa/Base/Export/Data/List.hs view
@@ -0,0 +1,69 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.List(+  module P+) where++import Data.List as P(+    null+  , length+  , reverse+  , intersperse+  , intercalate+  , transpose+  , subsequences+  , permutations+  , foldl+  , foldl'+  , foldr+  , and+  , or+  , any+  , all+  , sum+  , product+  , mapAccumL+  , mapAccumR+  , replicate+  , cycle+  , take+  , drop+  , splitAt+  , takeWhile+  , dropWhile+  , dropWhileEnd+  , span+  , break+  , stripPrefix+  , isPrefixOf+  , isSuffixOf+  , isInfixOf+  , isSubsequenceOf+  , elem+  , notElem+  , find+  , partition+  , lines+  , words+  , unlines+  , unwords+  , nub+  , delete+  , (\\)+  , union+  , intersect+  , sort+  , sortOn+  , nubBy+  , deleteBy+  , deleteFirstsBy+  , unionBy+  , intersectBy+  , sortBy+  , insertBy+  , genericLength+  , genericTake+  , genericDrop+  , genericSplitAt+  , genericReplicate+  )
+ src/Papa/Base/Export/Data/List/NonEmpty.hs view
@@ -0,0 +1,30 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.List.NonEmpty(+  module P+) where++import Data.List.NonEmpty as P(+    NonEmpty((:|))+  , scanl+  , scanr+  , scanl1+  , scanr1+  , inits+  , tails+  , iterate+  , repeat+  , unfold+  , insert+  , some1+  , group+  , groupBy+  , groupWith+  , groupAllWith+  , group1+  , groupBy1+  , groupWith1+  , groupAllWith1+  , nonEmpty+  , xor+  )
+ src/Papa/Base/Export/Data/Maybe.hs view
@@ -0,0 +1,14 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Maybe(+  module P+) where++import Data.Maybe as P(+    Maybe(Nothing, Just)+  , maybe+  , isJust+  , isNothing+  , fromMaybe+  )+
+ src/Papa/Base/Export/Data/Monoid.hs view
@@ -0,0 +1,15 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Monoid(+  module P  +) where++import Data.Monoid as P(+    Monoid(mempty, mappend)+  , Dual(getDual)+  , Endo(appEndo)+  , All(getAll)+  , Any(getAny)+  , Sum(getSum)+  , Product(getProduct)+  )
+ src/Papa/Base/Export/Data/Ord.hs view
@@ -0,0 +1,11 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Ord(+  module P+) where++import Data.Ord as P(+    Ord(compare, (<), (<=), (>), (>=), max, min)+  , Down(Down)+  , comparing+  )
+ src/Papa/Base/Export/Data/Ratio.hs view
@@ -0,0 +1,14 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Ratio(+  module P+) where++import Data.Ratio as P(+    Ratio+  , Rational+  , (%)+  , numerator+  , denominator+  , approxRational+  )
+ src/Papa/Base/Export/Data/Semigroup.hs view
@@ -0,0 +1,34 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Semigroup(+  module P+) where++import Data.Semigroup as P(+    Semigroup((<>), sconcat, stimes)+  , stimesMonoid+  , stimesIdempotent+  , stimesIdempotentMonoid+  , mtimesDefault+  , Min(getMin)+  , Max(getMax)+  , First(getFirst)+  , Last(getLast)+  , WrappedMonoid(unwrapMonoid)+  , Monoid(mempty, mappend)+  , Dual(getDual)+  , Endo(appEndo)+  , All(getAll)+  , Any(getAny)+  , Sum(getSum)+  , Product(getProduct)+  , Option(getOption)+  , option+  , diff+  , cycle1+  , WrappedMonoid(unwrapMonoid)+  , Arg(Arg)+  , ArgMin+  , ArgMax+  )+
+ src/Papa/Base/Export/Data/String.hs view
@@ -0,0 +1,13 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.String(+  module P+) where++import Data.String as P(+    String+  , lines+  , words+  , unlines+  , unwords+  )
+ src/Papa/Base/Export/Data/Traversable.hs view
@@ -0,0 +1,13 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Traversable(+  module P+) where++import Data.Traversable as P(+    Traversable(traverse, sequenceA)+  , for+  , mapAccumL+  , fmapDefault+  , foldMapDefault+  )
+ src/Papa/Base/Export/Data/Void.hs view
@@ -0,0 +1,12 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Data.Void(+  module P+) where++import Data.Void as P(+    Void+  , absurd+  , vacuous+  )+
+ src/Papa/Base/Export/Prelude.hs view
@@ -0,0 +1,265 @@+{-# LANGUAGE NoImplicitPrelude #-}++module Papa.Base.Export.Prelude(+  module Prelude+) where++import Prelude as Prelude(+--  (!!)                       Papa.Prelude.Lens.Data.List+    Monad+  , encodeFloat+--, map                        Papa.Core.Data.Functor+--, scanr                      Papa.Prelude.Semigroups.Data.List+  , ($)+  , Monoid +--, enumFrom+--, mapM                       Papa.Core.Data.Traversable+--, scanr1+--, ($!) +--, enumFromThen+--, mapM_                      Papa.Core.Data.Foldable+--, seq+  , (&&)+  , Num +--, enumFromThenTo+--, mappend                    Papa.Prelude.Semigroups.Data.List+--, sequence                   Papa.Core.Data.Traversable+  , (*)+  , Ord +--, enumFromTo+  , max +  , sequenceA+  , (**)+  , Ordering(+      LT+    , EQ+    , GT+    )+--, error +--, maxBound+--, sequence_                  Papa.Core.Data.Foldable+--, (*>)                       Papa.Prelude.Semigroupoids.Data.Functor.Bind+  , Rational+--, errorWithoutStackTrace+--, maximum                    Papa.Prelude.Semigroups.Data.List+  , show+  , (+) +--, Read +  , even +  , maybe +--, showChar+--, (++)                       Papa.Prelude.Semigroups.Data.List+--, ReadS +  , exp +--, mconcat                    Papa.Core.Data.Monoid+--, showList+  , (-) +  , Real +  , exponent+  , mempty +  , showParen+--, (.)                        Papa.Prelude.Semigroupoids.Data.Semigroupoid+  , RealFloat+--, fail +  , min +--, showString+  , (/) +--, RealFrac+  , filter +--, minBound+  , shows+  , (/=) +--, flip                       Papa.Core.Data.Functor+--, minimum                    Papa.Prelude.Semigroups.Data.List+  , showsPrec+  , (<) +  , Show +  , floatDigits+  , mod +  , significand+  , (<$) +  , ShowS +  , floatRadix+  , negate +  , signum+  , (<$>)+--, String +  , floatRange+  , not +  , sin+--, (<*)                       Papa.Prelude.Semigroupoids.Data.Functor.Bind+  , Traversable+  , floor +  , notElem +  , sinh+  , (<*>)+  , fmap +  , null +--, snd                        Papa.Prelude.Lens.Data.Tuple+  , (<=)+  , Word +  , foldMap +  , odd +  , span+--, (=<<)                      Papa.Prelude.Semigroupoids.Data.Functor.Bind+  , (^)+  , foldl+--, or +  , splitAt+  , (==) +  , (^^) +--, foldl1                     Papa.Prelude.Semigroups.Data.List +  , otherwise+  , sqrt+  , (>) +  , abs +  , foldr +  , pi +  , subtract+  , (>=) +  , acos +--, foldr1                     Papa.Prelude.Semigroups.Data.List+--, pred +--, succ+--, (>>)                       Papa.Prelude.Semigroupoids.Data.Functor.Apply+  , acosh +--, fromEnum+--, print +  , sum+--, (>>=)                      Papa.Prelude.Semigroupoids.Data.Functor.Bind+  , all +  , fromInteger+  , product +--, tail                       Papa.Prelude.Lens.Data.List+  , Applicative+  , and +  , fromIntegral+  , properFraction+  , take+  , Bool(+      False+    , True+    ) +  , any +  , fromRational+  , pure +  , takeWhile+--, Bounded +  , appendFile+--, fst                        Papa.Prelude.Lens.Data.Tuple+  , putChar +  , tan+  , Char +--, asTypeOf+  , gcd +  , putStr +  , tanh+  , Double +  , asin +  , getChar +  , putStrLn+--, toEnum+  , asinh +  , getContents+  , quot +  , toInteger+  , Either(+      Left+    , Right+    ) +  , atan +  , getLine +  , quotRem +  , toRational+  , Enum +  , atan2 +--, head                       Papa.Prelude.Lens.Data.List +--, read +  , traverse+  , Eq +  , atanh +--, id                         Papa.Core.Control.Category+  , readFile+  , truncate+  , break +--, init                       Papa.Prelude.Lens.Data.List+  , readIO +  , uncurry+  , FilePath+  , ceiling +  , interact+--, readList+--, undefined+  , Float +  , compare +  , ioError +--, readLn +  , unlines+  , Floating+--, concat                     Papa.Prelude.Semigroupoids.Data.Functor.Bind+  , isDenormalized+--, readParen+  , until+  , Foldable+--, concatMap                  Papa.Prelude.Semigroupoids.Data.Functor.Bind+  , isIEEE +--, reads +  , unwords+  , Fractional+--, const                      Papa.Core.Control.Applicative+  , isInfinite+--, readsPrec+--, unzip                      Papa.Core.Data.Functor+  , Functor+  , cos +  , isNaN +  , realToFrac+  , unzip3+  , cosh +  , isNegativeZero+  , recip +--, userError+  , IO +  , curry +--, iterate +  , rem +  , words+  , IOError +  , cycle +--, last                       Papa.Prelude.Lens.Data.List+--, repeat +  , writeFile+  , Int +  , decodeFloat+  , lcm +  , replicate+  , zip+  , Integer +--, div +--, length +--, return                     Papa.Core.Control.Applicative+  , zip3+  , Integral+  , divMod+--, lex +--, reverse                    Papa.Core.Data.List+  , zipWith+  , drop +  , lines +  , round +  , zipWith3+  , dropWhile+  , log +  , scaleFloat+  , (||)+  , either +  , logBase +--, scanl                      Papa.Prelude.Semigroups.Data.List+  , Maybe(+      Nothing+    , Just+    ) +  , elem +--, lookup                     Papa.Core.Data.List+--, scanl1+ ) 
+ test/doctests.hs view
@@ -0,0 +1,32 @@+module Main where++import Build_doctests (deps)+import Control.Applicative+import Control.Monad+import Data.List+import System.Directory+import System.FilePath+import Test.DocTest++main ::+  IO ()+main =+  getSources >>= \sources -> doctest $+      "-isrc"+    : "-idist/build/autogen"+    : "-optP-include"+    : "-optPdist/build/autogen/cabal_macros.h"+    : "-hide-all-packages"+    : map ("-package="++) deps ++ sources++getSources :: IO [FilePath]+getSources = filter (isSuffixOf ".hs") <$> go "src"+  where+    go dir = do+      (dirs, files) <- getFilesAndDirectories dir+      (files ++) . concat <$> mapM go dirs++getFilesAndDirectories :: FilePath -> IO ([FilePath], [FilePath])+getFilesAndDirectories dir = do+  c <- map (dir </>) . filter (`notElem` ["..", "."]) <$> getDirectoryContents dir+  (,) <$> filterM doesDirectoryExist c <*> filterM doesFileExist c