Simplify/Clean up prelude.inc
parent
d4b3555b77
commit
ded3192962
|
@ -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 ()
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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
|
||||
|
|
|
@ -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 ( (<&>)
|
||||
)
|
||||
|
|
Loading…
Reference in New Issue