Simplify/Clean up prelude.inc

pull/6/head
Lennart Spitzner 2020-04-10 23:31:47 +02:00
parent d4b3555b77
commit ded3192962
4 changed files with 182 additions and 190 deletions

View File

@ -235,9 +235,9 @@ addFlagReadParam shorts longs name flag =
InputArgs (arg1:argR) -> case runInpParseString arg1 parser of
Just ((), "") -> case argR of
[] -> Nothing
(arg2:rest) -> readMaybe arg2 <&> \x -> (x, InputArgs rest)
(arg2:rest) -> Text.Read.readMaybe arg2 <&> \x -> (x, InputArgs rest)
Just ((), remainingStr) ->
readMaybe remainingStr <&> \x -> (x, InputArgs argR)
Text.Read.readMaybe remainingStr <&> \x -> (x, InputArgs argR)
Nothing -> _flag_default flag <&> \d -> (d, inp)
where
parser :: InpParseString ()
@ -316,10 +316,10 @@ addFlagReadParamsAll shorts longs name flag act = addCmdPartManyInpA
InputArgs (arg1:argR) -> case runInpParseString arg1 parser of
Just ((), "") -> case argR of
[] -> mdef
(arg2:rest) -> (readMaybe arg2 <&> \x -> (x, InputArgs rest)) <|> mdef
(arg2:rest) -> (Text.Read.readMaybe arg2 <&> \x -> (x, InputArgs rest)) <|> mdef
where mdef = _flag_default flag <&> \p -> (p, InputArgs argR)
Just ((), remainingStr) ->
readMaybe remainingStr <&> \x -> (x, InputArgs argR)
Text.Read.readMaybe remainingStr <&> \x -> (x, InputArgs argR)
Nothing -> Nothing
where
parser :: InpParseString ()

View File

@ -402,7 +402,7 @@ checkCmdParser mTopLevel cmdParser =
cmd :: CommandDesc out <- mGet
subCmd <- do
stackCur :: CmdDescStack <- mGet
mSet $ fromMaybe (emptyCommandDesc :: CommandDesc out) mInitialDesc
mSet $ Maybe.fromMaybe (emptyCommandDesc :: CommandDesc out) mInitialDesc
mSet $ StackBottom mempty
processMain sub
c <- mGet
@ -1102,7 +1102,7 @@ runCmdParserAExt mTopLevel inputInitial cmdParser =
CmdParserChild cmdStr vis _sub _act next -> do
mExisting <- takeCommandChild cmdStr
let childDesc :: CommandDesc out =
fromMaybe emptyCommandDesc { _cmd_visibility = vis } mExisting
Maybe.fromMaybe emptyCommandDesc { _cmd_visibility = vis } mExisting
cmd_children %=+ Deque.snoc (cmdStr, childDesc)
next
CmdParserImpl out next -> do

View File

@ -211,7 +211,7 @@ ppHelpShallow desc =
PartDefault _ p -> go p
PartSuggestion _ p -> go p
PartRedirect s p ->
[PP.text s $$ PP.nest 20 (fromMaybe PP.empty $ ppPartDescUsage p)]
[PP.text s $$ PP.nest 20 (Maybe.fromMaybe PP.empty $ ppPartDescUsage p)]
++ (PP.nest 2 <$> go p)
PartReorder ps -> ps >>= go
PartMany p -> go p
@ -276,7 +276,7 @@ ppHelpDepthOne desc =
visibleChildren =
[ (n, c) | (Just n, c) <- children, _cmd_visibility c == Visible ]
childDescs = visibleChildren <&> \(n, c) ->
PP.text n $$ PP.nest 20 (fromMaybe PP.empty (_cmd_synopsis c))
PP.text n $$ PP.nest 20 (Maybe.fromMaybe PP.empty (_cmd_synopsis c))
commandSection = if null visibleChildren
then PP.empty
else PP.text "" $+$ PP.text "COMMANDS" $+$ PP.text "" $+$ PP.nest
@ -299,7 +299,7 @@ ppHelpDepthOne desc =
PartDefault _ p -> go p
PartSuggestion _ p -> go p
PartRedirect s p ->
[PP.text s $$ PP.nest 20 (fromMaybe PP.empty $ ppPartDescUsage p)]
[PP.text s $$ PP.nest 20 (Maybe.fromMaybe PP.empty $ ppPartDescUsage p)]
++ (PP.nest 2 <$> go p)
PartReorder ps -> ps >>= go
PartMany p -> go p

View File

@ -1,80 +1,80 @@
import qualified Data.Graph
import qualified Data.IntMap
import qualified Data.IntMap.Lazy
import qualified Data.IntMap.Strict
import qualified Data.IntSet
import qualified Data.Map
import qualified Data.Map.Lazy
import qualified Data.Map.Strict
import qualified Data.Sequence
import qualified Data.Set
import qualified Data.Tree
-- import qualified Data.Graph
-- import qualified Data.IntMap
-- import qualified Data.IntMap.Lazy
-- import qualified Data.IntMap.Strict
-- import qualified Data.IntSet
-- import qualified Data.Map
-- import qualified Data.Map.Lazy
-- import qualified Data.Map.Strict
-- import qualified Data.Sequence
-- import qualified Data.Set
-- import qualified Data.Tree
import qualified Control.Concurrent.Extra
import qualified Control.Exception.Extra
import qualified Control.Monad.Extra
import qualified Data.Either.Extra
import qualified Data.IORef.Extra
import qualified Data.List.Extra
import qualified Data.Tuple.Extra
import qualified Data.Version.Extra
import qualified Numeric.Extra
import qualified System.Directory.Extra
import qualified System.Environment.Extra
import qualified System.IO.Extra
import qualified System.Info.Extra
import qualified System.Process.Extra
import qualified System.Time.Extra
-- import qualified Control.Concurrent.Extra
-- import qualified Control.Exception.Extra
-- import qualified Control.Monad.Extra
-- import qualified Data.Either.Extra
-- import qualified Data.IORef.Extra
-- import qualified Data.List.Extra
-- import qualified Data.Tuple.Extra
-- import qualified Data.Version.Extra
-- import qualified Numeric.Extra
-- import qualified System.Directory.Extra
-- import qualified System.Environment.Extra
-- import qualified System.IO.Extra
-- import qualified System.Info.Extra
-- import qualified System.Process.Extra
-- import qualified System.Time.Extra
import qualified Control.Monad.Trans.MultiRWS.Lazy
import qualified Control.Monad.Trans.MultiRWS.Strict
import qualified Control.Monad.Trans.MultiReader
import qualified Control.Monad.Trans.MultiReader.Class
import qualified Control.Monad.Trans.MultiReader.Lazy
import qualified Control.Monad.Trans.MultiReader.Strict
import qualified Control.Monad.Trans.MultiState
import qualified Control.Monad.Trans.MultiState.Class
import qualified Control.Monad.Trans.MultiState.Lazy
import qualified Control.Monad.Trans.MultiState.Strict
import qualified Control.Monad.Trans.MultiWriter
import qualified Control.Monad.Trans.MultiWriter.Class
import qualified Control.Monad.Trans.MultiWriter.Lazy
import qualified Control.Monad.Trans.MultiWriter.Strict
-- import qualified Control.Monad.Trans.MultiRWS.Lazy
-- import qualified Control.Monad.Trans.MultiRWS.Strict
-- import qualified Control.Monad.Trans.MultiReader
-- import qualified Control.Monad.Trans.MultiReader.Class
-- import qualified Control.Monad.Trans.MultiReader.Lazy
-- import qualified Control.Monad.Trans.MultiReader.Strict
-- import qualified Control.Monad.Trans.MultiState
-- import qualified Control.Monad.Trans.MultiState.Class
-- import qualified Control.Monad.Trans.MultiState.Lazy
-- import qualified Control.Monad.Trans.MultiState.Strict
-- import qualified Control.Monad.Trans.MultiWriter
-- import qualified Control.Monad.Trans.MultiWriter.Class
-- import qualified Control.Monad.Trans.MultiWriter.Lazy
-- import qualified Control.Monad.Trans.MultiWriter.Strict
import qualified Control.Monad.Trans.MultiRWS.Strict as MultiRWSS
import qualified Control.Monad.Trans.MultiRWS.Lazy as MultiRWSL
-- import qualified Control.Monad.Trans.MultiRWS.Strict as MultiRWSS
-- import qualified Control.Monad.Trans.MultiRWS.Lazy as MultiRWSL
import qualified Data.Bifunctor
import qualified Data.Bits
import qualified Data.Bool
import qualified Data.Char
import qualified Data.Coerce
import qualified Data.Complex
import qualified Data.Data
import qualified Data.Dynamic
-- import qualified Data.Bifunctor
-- import qualified Data.Bits
-- import qualified Data.Bool
-- import qualified Data.Char
-- import qualified Data.Coerce
-- import qualified Data.Complex
-- import qualified Data.Data
-- import qualified Data.Dynamic
import qualified Data.Either
import qualified Data.Eq
import qualified Data.Fixed
-- import qualified Data.Eq
-- import qualified Data.Fixed
import qualified Data.Foldable
import qualified Data.Function
import qualified Data.Functor
import qualified Data.Functor.Identity
import qualified Data.IORef
import qualified Data.Int
import qualified Data.Ix
import qualified Data.List
import qualified Data.Maybe
-- import qualified Data.Functor
-- import qualified Data.Functor.Identity
-- import qualified Data.IORef
-- import qualified Data.Int
-- import qualified Data.Ix
-- import qualified Data.List
-- import qualified Data.Maybe
import qualified Data.Monoid
import qualified Data.Ord
import qualified Data.Proxy
import qualified Debug.Trace
import qualified Numeric
import qualified Numeric.Natural
-- import qualified Data.Ord
-- import qualified Data.Proxy
-- import qualified Debug.Trace
-- import qualified Numeric
-- import qualified Numeric.Natural
import qualified System.Environment
import qualified System.IO
-- import qualified System.IO
import qualified Text.Read
import qualified Text.Show
import qualified Unsafe.Coerce
-- import qualified Text.Show
-- import qualified Unsafe.Coerce
import qualified Data.Bool as Bool
import qualified Data.Char as Char
@ -87,12 +87,12 @@ import qualified GHC.OldList as List
import qualified Data.List as List
#endif
import qualified Data.IntMap as IntMap
import qualified Data.IntMap.Strict as IntMapS
-- import qualified Data.IntMap as IntMap
-- import qualified Data.IntMap.Strict as IntMapS
import qualified Data.Map.Strict as MapS
import qualified Data.Map.Lazy as MapL
import qualified Data.Sequence as Seq
import qualified Data.Set as Set
-- import qualified Data.Sequence as Seq
-- import qualified Data.Set as Set
import qualified Control.Monad.RWS.Class as RWS.Class
import qualified Control.Monad.Reader.Class as Reader.Class
@ -105,23 +105,14 @@ import qualified Control.Monad.Trans.State.Strict as StateS
import Data.Functor.Identity ( Identity(..) )
import Control.Concurrent.Chan ( Chan )
import Control.Concurrent.MVar ( MVar )
import Data.Int ( Int )
import Data.Word ( Word )
import Prelude ( Integer, Float, Double )
import Control.Monad.ST ( ST )
import Data.Bool ( Bool(..) )
import Data.Char ( Char )
import Data.Either ( Either(..) )
import Data.IORef ( IORef )
import Data.Maybe ( Maybe(..) )
-- import Control.Concurrent.MVar ( MVar )
-- import Control.Monad.ST ( ST )
-- import Data.IORef ( IORef )
import Data.Monoid ( Endo(..), All(..), Any(..), Sum(..), Product(..), First(..), Last(..), Alt(..), )
import Data.Ord ( Ordering(..), Down(..) )
import Data.Ratio ( Ratio, Rational )
import Data.String ( String )
-- import Data.Ord ( Ordering(..), Down(..) )
-- import Data.Ratio ( Ratio, Rational )
import Data.Void ( Void )
import System.IO ( IO )
import Data.Proxy ( Proxy(..) )
-- import Data.Proxy ( Proxy(..) )
import Data.Sequence ( Seq )
import Data.Semigroup ( Semigroup(..) )
@ -136,6 +127,7 @@ import Prelude ( Char
, String
, Int
, Integer
, Word
, Float
, Double
, Bool (..)
@ -192,6 +184,12 @@ import Prelude ( Char
, (^)
, Foldable
, Traversable
, mempty
, maybe
, Applicative(..)
, (<$)
, Monoid(..)
, either
)
import Data.Foldable ( foldl'
@ -235,38 +233,31 @@ import Data.List ( partition
, uncons
)
import Data.Tuple ( swap
)
-- import Data.Tuple ( swap
-- )
import Data.Char ( ord
, chr
)
-- import Data.Char ( ord
-- , chr
-- )
import Data.Maybe ( fromMaybe
, maybe
, listToMaybe
, maybeToList
, catMaybes
)
-- import Data.Word ( Word32
-- )
import Data.Word ( Word32
)
-- import Data.Ord ( comparing
-- , Down (..)
-- )
import Data.Ord ( comparing
, Down (..)
)
-- import Data.Either ( either
-- )
import Data.Either ( either
)
-- import Data.Ratio ( Ratio
-- , (%)
-- , numerator
-- , denominator
-- )
import Data.Ratio ( Ratio
, (%)
, numerator
, denominator
)
import Text.Read ( readMaybe
)
-- import Text.Read ( readMaybe
-- )
import Control.Monad ( Functor (..)
, Monad (..)
@ -301,56 +292,57 @@ import Control.Applicative ( Applicative (..)
, Alternative (..)
)
import Foreign.Storable ( Storable )
import GHC.Exts ( Constraint )
-- import Foreign.Storable ( Storable )
-- import GHC.Exts ( Constraint )
import Control.Concurrent ( threadDelay
, forkIO
, forkOS
)
-- import Control.Concurrent ( threadDelay
-- , forkIO
-- , forkOS
-- )
import Control.Concurrent.MVar ( MVar
, newEmptyMVar
, newMVar
, putMVar
, readMVar
, takeMVar
, swapMVar
)
-- import Control.Concurrent.MVar ( MVar
-- , newEmptyMVar
-- , newMVar
-- , putMVar
-- , readMVar
-- , takeMVar
-- , swapMVar
-- )
import Control.Exception ( evaluate
, bracket
, assert
)
-- import Control.Exception ( evaluate
-- , bracket
-- , assert
-- )
import Debug.Trace ( trace
, traceId
, traceShowId
, traceShow
, traceStack
, traceShowId
, traceIO
, traceM
, traceShowM
)
-- import Debug.Trace ( trace
-- , traceId
-- , traceShowId
-- , traceShow
-- , traceStack
-- , traceShowId
-- , traceIO
-- , traceM
-- , traceShowM
-- )
import Foreign.ForeignPtr ( ForeignPtr
)
-- import Foreign.ForeignPtr ( ForeignPtr
-- )
import Data.Monoid ( Monoid
, mempty
, mconcat
)
-- import Data.Monoid ( Monoid
-- , mempty
-- , mconcat
-- )
import Data.Bifunctor ( bimap )
-- import Data.Bifunctor ( bimap )
import Data.Functor ( (<$), ($>) )
import Data.Function ( (&) )
import System.IO ( hFlush
, stdout
)
-- import Data.Function ( (&) )
-- import System.IO ( hFlush
-- , stdout
-- )
import Data.Typeable ( Typeable
, cast
, Proxy(..)
)
import Control.Arrow ( first
@ -361,30 +353,30 @@ import Control.Arrow ( first
, (<<<)
)
import Data.Functor.Identity ( Identity (..)
)
-- import Data.Functor.Identity ( Identity (..)
-- )
import Data.Proxy ( Proxy (..)
)
-- import Data.Proxy ( Proxy (..)
-- )
import Data.Version ( showVersion
)
-- import Data.Version ( showVersion
-- )
import Data.List.Extra ( nubOrd
, stripSuffix
)
import Control.Monad.Extra ( whenM
, unlessM
, ifM
, notM
, orM
, andM
, anyM
, allM
)
-- import Data.List.Extra ( nubOrd
-- , stripSuffix
-- )
-- import Control.Monad.Extra ( whenM
-- , unlessM
-- , ifM
-- , notM
-- , orM
-- , andM
-- , anyM
-- , allM
-- )
import Data.Tree ( Tree(..)
)
-- import Data.Tree ( Tree(..)
-- )
import Control.Monad.Trans.MultiRWS ( MonadMultiReader(..)
, MonadMultiWriter(..)
@ -392,19 +384,19 @@ import Control.Monad.Trans.MultiRWS ( MonadMultiReader(..)
, mGet
)
import Control.Monad.Trans.MultiReader ( runMultiReaderTNil
, runMultiReaderTNil_
, MultiReaderT (..)
, MultiReader
, MultiReaderTNull
)
-- import Control.Monad.Trans.MultiReader ( runMultiReaderTNil
-- , runMultiReaderTNil_
-- , MultiReaderT (..)
-- , MultiReader
-- , MultiReaderTNull
-- )
import Control.Monad.IO.Class ( MonadIO (..)
)
-- import Control.Monad.IO.Class ( MonadIO (..)
-- )
import Control.Monad.Trans.Class ( lift
)
import Control.Monad.Trans.Maybe ( MaybeT (..)
)
-- import Control.Monad.Trans.Maybe ( MaybeT (..)
-- )
import Lens.Micro ( (<&>)
)