classy-prelude-1.5.0.3: A typeclass-based Prelude.

Safe Haskell | None
Language | Haskell2010

ClassyPrelude

Contents

- CorePrelude
- Standard
  - Monoid
  - Semigroup
  - Functor
  - Applicative
  - Monad
  - UnliftIO reexports
  - Mutable references
  - STM Channels
  - Primitive (exported since 0.9.4)
  - Debugging
  - Time (since 0.6.1)
  - Generics (since 0.8.1)
  - Transformers (since 0.9.4)
- Poly hierarchy
  - Bifunctor (since 0.10.0)
- Mono hierarchy
- I/O
- Concurrency
- Non-standard
  - List-like classes
  - Set-like
  - Text-like
    - Case conversion
  - IO
  - Difference lists
  - Exceptions
  - Force types

Synopsis

- data Int
- data Float
- data Char
- data Maybe a
  - = Nothing
  - | Just a
- data IO a
- data Word8
- data Bool
  - = False
  - | True
- data Double
- data Word
- data Ordering
  - = LT
  - | EQ
  - | GT
- data Integer
- data Word64
- data Word32
- (<|>) :: Alternative f => f a -> f a -> f a
- class (Functor t, Foldable t) => Traversable (t :: Type -> Type)
- class Foldable (t :: Type -> Type)
- (***) :: Arrow a => a b c -> a b' c' -> a (b, b') (c, c')
- (&&&) :: Arrow a => a b c -> a b c' -> a b (c, c')
- const :: a -> b -> a
- getArgs :: MonadIO m => m [Text]
- seq :: a -> b -> b
- otherwise :: Bool
- ($) :: (a -> b) -> a -> b
- class Num a where
  - (+) :: a -> a -> a
  - (-) :: a -> a -> a
  - (*) :: a -> a -> a
  - negate :: a -> a
  - abs :: a -> a
  - signum :: a -> a
  - fromInteger :: Integer -> a
- class Num a => Fractional a where
  - (/) :: a -> a -> a
  - recip :: a -> a
  - fromRational :: Rational -> a
- class Enum a where
  - succ :: a -> a
  - pred :: a -> a
  - toEnum :: Int -> a
  - fromEnum :: a -> Int
  - enumFrom :: a -> [a]
  - enumFromThen :: a -> a -> [a]
  - enumFromTo :: a -> a -> [a]
  - enumFromThenTo :: a -> a -> a -> [a]
- class Eq a where
  - (==) :: a -> a -> Bool
  - (/=) :: a -> a -> Bool
- class Eq a => Ord a where
  - compare :: a -> a -> Ordering
  - (<) :: a -> a -> Bool
  - (<=) :: a -> a -> Bool
  - (>) :: a -> a -> Bool
  - (>=) :: a -> a -> Bool
  - max :: a -> a -> a
  - min :: a -> a -> a
- class Applicative m => Monad (m :: Type -> Type) where
  - (>>=) :: m a -> (a -> m b) -> m b
  - (>>) :: m a -> m b -> m b
  - return :: a -> m a
- class Functor (f :: Type -> Type) where
  - fmap :: (a -> b) -> f a -> f b
  - (<$) :: a -> f b -> f a
- class IsString a where
  - fromString :: String -> a
- fromIntegral :: (Integral a, Num b) => a -> b
- realToFrac :: (Real a, Fractional b) => a -> b
- class (Real a, Enum a) => Integral a where
  - quot :: a -> a -> a
  - rem :: a -> a -> a
  - div :: a -> a -> a
  - mod :: a -> a -> a
  - quotRem :: a -> a -> (a, a)
  - divMod :: a -> a -> (a, a)
  - toInteger :: a -> Integer
- class (Num a, Ord a) => Real a where
  - toRational :: a -> Rational
- class Semigroup a => Monoid a where
  - mempty :: a
  - mappend :: a -> a -> a
  - mconcat :: [a] -> a
- class Functor f => Applicative (f :: Type -> Type) where
  - pure :: a -> f a
  - (<*>) :: f (a -> b) -> f a -> f b
  - liftA2 :: (a -> b -> c) -> f a -> f b -> f c
  - (*>) :: f a -> f b -> f b
  - (<*) :: f a -> f b -> f a
- class Bounded a where
  - minBound :: a
  - maxBound :: a
- class Fractional a => Floating a where
  - pi :: a
  - exp :: a -> a
  - log :: a -> a
  - sqrt :: a -> a
  - (**) :: a -> a -> a
  - logBase :: a -> a -> a
  - sin :: a -> a
  - cos :: a -> a
  - tan :: a -> a
  - asin :: a -> a
  - acos :: a -> a
  - atan :: a -> a
  - sinh :: a -> a
  - cosh :: a -> a
  - tanh :: a -> a
  - asinh :: a -> a
  - acosh :: a -> a
  - atanh :: a -> a
- class Read a
- class (RealFrac a, Floating a) => RealFloat a where
  - floatRadix :: a -> Integer
  - floatDigits :: a -> Int
  - floatRange :: a -> (Int, Int)
  - decodeFloat :: a -> (Integer, Int)
  - encodeFloat :: Integer -> Int -> a
  - exponent :: a -> Int
  - significand :: a -> a
  - scaleFloat :: Int -> a -> a
  - isNaN :: a -> Bool
  - isInfinite :: a -> Bool
  - isDenormalized :: a -> Bool
  - isNegativeZero :: a -> Bool
  - isIEEE :: a -> Bool
  - atan2 :: a -> a -> a
- class (Real a, Fractional a) => RealFrac a where
  - properFraction :: Integral b => a -> (b, a)
  - truncate :: Integral b => a -> b
  - round :: Integral b => a -> b
  - ceiling :: Integral b => a -> b
  - floor :: Integral b => a -> b
- class Show a
- class Typeable (a :: k)
- type String = [Char]
- data Int32
- data Int64
- type Rational = Ratio Integer
- data Either a b
  - = Left a
  - | Right b
- (^) :: (Num a, Integral b) => a -> b -> a
- data Text
- (&&) :: Bool -> Bool -> Bool
- (||) :: Bool -> Bool -> Bool
- not :: Bool -> Bool
- fst :: (a, b) -> a
- snd :: (a, b) -> b
- curry :: ((a, b) -> c) -> a -> b -> c
- uncurry :: (a -> b -> c) -> (a, b) -> c
- swap :: (a, b) -> (b, a)
- data SomeException
- error :: HasCallStack => [Char] -> a
- (=<<) :: Monad m => (a -> m b) -> m a -> m b
- id :: forall (a :: k). Category cat => cat a a
- (.) :: forall (b :: k) (c :: k) (a :: k). Category cat => cat b c -> cat a b -> cat a c
- flip :: (a -> b -> c) -> b -> a -> c
- ($!) :: (a -> b) -> a -> b
- until :: (a -> Bool) -> (a -> a) -> a -> a
- asTypeOf :: a -> a -> a
- subtract :: Num a => a -> a -> a
- maybe :: b -> (a -> b) -> Maybe a -> b
- isJust :: Maybe a -> Bool
- isNothing :: Maybe a -> Bool
- fromMaybe :: a -> Maybe a -> a
- maybeToList :: Maybe a -> [a]
- listToMaybe :: [a] -> Maybe a
- mapMaybe :: (a -> Maybe b) -> [a] -> [b]
- even :: Integral a => a -> Bool
- odd :: Integral a => a -> Bool
- (^^) :: (Fractional a, Integral b) => a -> b -> a
- bool :: a -> a -> Bool -> a
- (<$>) :: Functor f => (a -> b) -> f a -> f b
- on :: (b -> b -> c) -> (a -> b) -> a -> a -> c
- lift :: (MonadTrans t, Monad m) => m a -> t m a
- either :: (a -> c) -> (b -> c) -> Either a b -> c
- lefts :: [Either a b] -> [a]
- rights :: [Either a b] -> [b]
- partitionEithers :: [Either a b] -> ([a], [b])
- class Storable a
- newtype Down a = Down {
  - getDown :: a
  }
- comparing :: Ord a => (b -> a) -> b -> b -> Ordering
- asum :: (Foldable t, Alternative f) => t (f a) -> f a
- class (Typeable e, Show e) => Exception e where
  - toException :: e -> SomeException
  - fromException :: SomeException -> Maybe e
  - displayException :: e -> String
  - backtraceDesired :: e -> Bool
- type IOError = IOException
- data IOException
- userError :: String -> IOError
- type FilePath = String
- class Monad m => MonadIO (m :: Type -> Type) where
  - liftIO :: IO a -> m a
- data IOErrorType
- ioError :: IOError -> IO a
- tryIOError :: IO a -> IO (Either IOError a)
- mkIOError :: IOErrorType -> String -> Maybe Handle -> Maybe FilePath -> IOError
- isAlreadyExistsError :: IOError -> Bool
- isDoesNotExistError :: IOError -> Bool
- isAlreadyInUseError :: IOError -> Bool
- isFullError :: IOError -> Bool
- isEOFError :: IOError -> Bool
- isIllegalOperation :: IOError -> Bool
- isPermissionError :: IOError -> Bool
- isUserError :: IOError -> Bool
- isResourceVanishedError :: IOError -> Bool
- alreadyExistsErrorType :: IOErrorType
- doesNotExistErrorType :: IOErrorType
- alreadyInUseErrorType :: IOErrorType
- fullErrorType :: IOErrorType
- eofErrorType :: IOErrorType
- illegalOperationErrorType :: IOErrorType
- permissionErrorType :: IOErrorType
- userErrorType :: IOErrorType
- resourceVanishedErrorType :: IOErrorType
- isAlreadyExistsErrorType :: IOErrorType -> Bool
- isDoesNotExistErrorType :: IOErrorType -> Bool
- isAlreadyInUseErrorType :: IOErrorType -> Bool
- isFullErrorType :: IOErrorType -> Bool
- isEOFErrorType :: IOErrorType -> Bool
- isIllegalOperationErrorType :: IOErrorType -> Bool
- isPermissionErrorType :: IOErrorType -> Bool
- isUserErrorType :: IOErrorType -> Bool
- isResourceVanishedErrorType :: IOErrorType -> Bool
- ioeGetErrorType :: IOError -> IOErrorType
- ioeGetErrorString :: IOError -> String
- ioeGetLocation :: IOError -> String
- ioeGetHandle :: IOError -> Maybe Handle
- ioeGetFileName :: IOError -> Maybe FilePath
- ioeSetErrorType :: IOError -> IOErrorType -> IOError
- ioeSetErrorString :: IOError -> String -> IOError
- ioeSetLocation :: IOError -> String -> IOError
- ioeSetHandle :: IOError -> Handle -> IOError
- ioeSetFileName :: IOError -> FilePath -> IOError
- modifyIOError :: (IOError -> IOError) -> IO a -> IO a
- annotateIOError :: IOError -> String -> Maybe Handle -> Maybe FilePath -> IOError
- (>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c
- data ByteString
- data Set a
- data Seq a
- data Map k a
- data IntSet
- data IntMap a
- (<.>) :: FilePath -> String -> FilePath
- (</>) :: FilePath -> FilePath -> FilePath
- class Eq a => Hashable a where
  - hashWithSalt :: Int -> a -> Int
  - hash :: a -> Int
- data HashMap k v
- data HashSet a
- class (Vector Vector a, MVector MVector a) => Unbox a
- data Vector a
- type SVector = Vector
- type UVector = Vector
- type LByteString = ByteString
- type LText = Text
- equating :: Eq a => (b -> a) -> b -> b -> Bool
- terror :: HasCallStack => Text -> a
- undefined :: HasCallStack => a
- (++) :: Monoid m => m -> m -> m
- class Semigroup a where
  - (<>) :: a -> a -> a
  - sconcat :: NonEmpty a -> a
  - stimes :: Integral b => b -> a -> a
- data WrappedMonoid m
- void :: Functor f => f a -> f ()
- class Functor (f :: Type -> Type) where
  - fmap :: (a -> b) -> f a -> f b
  - (<$) :: a -> f b -> f a
- (<$>) :: Functor f => (a -> b) -> f a -> f b
- (<&>) :: Functor f => f a -> (a -> b) -> f b
- ($>) :: Functor f => f a -> b -> f b
- class Applicative f => Alternative (f :: Type -> Type) where
  - empty :: f a
  - (<|>) :: f a -> f a -> f a
  - some :: f a -> f [a]
  - many :: f a -> f [a]
- liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f c
- (<**>) :: Applicative f => f a -> f (a -> b) -> f b
- liftA :: Applicative f => (a -> b) -> f a -> f b
- liftA3 :: Applicative f => (a -> b -> c -> d) -> f a -> f b -> f c -> f d
- optional :: Alternative f => f a -> f (Maybe a)
- (<&&>) :: Applicative a => a Bool -> a Bool -> a Bool
- (<||>) :: Applicative a => a Bool -> a Bool -> a Bool
- void :: Functor f => f a -> f ()
- guard :: Alternative f => Bool -> f ()
- join :: Monad m => m (m a) -> m a
- class (Alternative m, Monad m) => MonadPlus (m :: Type -> Type) where
  - mzero :: m a
  - mplus :: m a -> m a -> m a
- (=<<) :: Monad m => (a -> m b) -> m a -> m b
- when :: Applicative f => Bool -> f () -> f ()
- liftM :: Monad m => (a1 -> r) -> m a1 -> m r
- liftM2 :: Monad m => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r
- liftM3 :: Monad m => (a1 -> a2 -> a3 -> r) -> m a1 -> m a2 -> m a3 -> m r
- liftM4 :: Monad m => (a1 -> a2 -> a3 -> a4 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m r
- liftM5 :: Monad m => (a1 -> a2 -> a3 -> a4 -> a5 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m a5 -> m r
- ap :: Monad m => m (a -> b) -> m a -> m b
- (>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c
- (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c
- forever :: Applicative f => f a -> f b
- replicateM_ :: Applicative m => Int -> m a -> m ()
- unless :: Applicative f => Bool -> f () -> f ()
- whenM :: Monad m => m Bool -> m () -> m ()
- unlessM :: Monad m => m Bool -> m () -> m ()
- module UnliftIO
- orElseSTM :: STM a -> STM a -> STM a
- module Data.Mutable
- module Control.Concurrent.STM.TBChan
- module Control.Concurrent.STM.TBMChan
- module Control.Concurrent.STM.TBMQueue
- module Control.Concurrent.STM.TMChan
- module Control.Concurrent.STM.TMQueue
- primToPrim :: (PrimBase m1, PrimMonad m2, PrimState m1 ~ PrimState m2) => m1 a -> m2 a
- primToIO :: (PrimBase m, PrimState m ~ RealWorld) => m a -> IO a
- primToST :: PrimBase m => m a -> ST (PrimState m) a
- module Data.Primitive.MutVar
- trace :: String -> a -> a
- traceShow :: Show a => a -> b -> b
- traceId :: String -> String
- traceM :: Monad m => String -> m ()
- traceShowId :: Show a => a -> a
- traceShowM :: (Show a, Monad m) => a -> m ()
- formatTime :: FormatTime t => TimeLocale -> String -> t -> String
- fromGregorian :: Year -> MonthOfYear -> DayOfMonth -> Day
- newtype Day = ModifiedJulianDay {
  - toModifiedJulianDay :: Integer
  }
- toGregorian :: Day -> (Year, MonthOfYear, DayOfMonth)
- data UTCTime = UTCTime {
  - utctDay :: Day
  - utctDayTime :: DiffTime
  }
- getCurrentTime :: IO UTCTime
- defaultTimeLocale :: TimeLocale
- parseTimeM :: (MonadFail m, ParseTime t) => Bool -> TimeLocale -> String -> String -> m t
- parseTime :: ParseTime t => TimeLocale -> String -> String -> Maybe t
- class Generic a
- newtype Identity a = Identity {
  - runIdentity :: a
  }
- class Monad m => MonadReader r (m :: Type -> Type) | m -> r
- ask :: MonadReader r m => m r
- asks :: MonadReader r m => (r -> a) -> m a
- newtype ReaderT r (m :: Type -> Type) a = ReaderT {
  - runReaderT :: r -> m a
  }
- type Reader r = ReaderT r Identity
- class Foldable (t :: Type -> Type)
- class (Functor t, Foldable t) => Traversable (t :: Type -> Type) where
  - traverse :: Applicative f => (a -> f b) -> t a -> f (t b)
  - sequenceA :: Applicative f => t (f a) -> f (t a)
  - mapM :: Monad m => (a -> m b) -> t a -> m (t b)
  - sequence :: Monad m => t (m a) -> m (t a)
- for :: (Traversable t, Applicative f) => t a -> (a -> f b) -> f (t b)
- forM :: (Traversable t, Monad m) => t a -> (a -> m b) -> m (t b)
- module Data.Bifunctor
- module Data.MonoTraversable
- module Data.MonoTraversable.Unprefixed
- module Data.Sequences
- module Data.Containers
- module Data.Builder
- module Data.NonNull
- toByteVector :: ByteString -> SVector Word8
- fromByteVector :: SVector Word8 -> ByteString
- module Say
- yieldThread :: MonadIO m => m ()
- waitAsync :: MonadIO m => Async a -> m a
- pollAsync :: MonadIO m => Async a -> m (Maybe (Either SomeException a))
- waitCatchAsync :: MonadIO m => Async a -> m (Either SomeException a)
- linkAsync :: MonadIO m => Async a -> m ()
- link2Async :: MonadIO m => Async a -> Async b -> m ()
- map :: Functor f => (a -> b) -> f a -> f b
- readMay :: (Element c ~ Char, MonoFoldable c, Read a) => c -> Maybe a
- zip :: Zip f => f a -> f b -> f (a, b)
- zip3 :: Zip3 f => f a -> f b -> f c -> f (a, b, c)
- zip4 :: Zip4 f => f a -> f b -> f c -> f d -> f (a, b, c, d)
- zip5 :: Zip5 f => f a -> f b -> f c -> f d -> f e -> f (a, b, c, d, e)
- zip6 :: Zip6 f => f a -> f b -> f c -> f d -> f e -> f g -> f (a, b, c, d, e, g)
- zip7 :: Zip7 f => f a -> f b -> f c -> f d -> f e -> f g -> f h -> f (a, b, c, d, e, g, h)
- unzip :: Zip f => f (a, b) -> (f a, f b)
- unzip3 :: Zip3 f => f (a, b, c) -> (f a, f b, f c)
- unzip4 :: Zip4 f => f (a, b, c, d) -> (f a, f b, f c, f d)
- unzip5 :: Zip5 f => f (a, b, c, d, e) -> (f a, f b, f c, f d, f e)
- unzip6 :: Zip6 f => f (a, b, c, d, e, g) -> (f a, f b, f c, f d, f e, f g)
- unzip7 :: Zip7 f => f (a, b, c, d, e, g, h) -> (f a, f b, f c, f d, f e, f g, f h)
- zipWith :: Zip f => (a -> b -> c) -> f a -> f b -> f c
- zipWith3 :: Zip3 f => (a -> b -> c -> d) -> f a -> f b -> f c -> f d
- zipWith4 :: Zip4 f => (a -> b -> c -> d -> e) -> f a -> f b -> f c -> f d -> f e
- zipWith5 :: Zip5 f => (a -> b -> c -> d -> e -> g) -> f a -> f b -> f c -> f d -> f e -> f g
- zipWith6 :: Zip6 f => (a -> b -> c -> d -> e -> g -> h) -> f a -> f b -> f c -> f d -> f e -> f g -> f h
- zipWith7 :: Zip7 f => (a -> b -> c -> d -> e -> g -> h -> i) -> f a -> f b -> f c -> f d -> f e -> f g -> f h -> f i
- hashNub :: (Hashable a, Eq a) => [a] -> [a]
- ordNub :: Ord a => [a] -> [a]
- ordNubBy :: Ord b => (a -> b) -> (a -> a -> Bool) -> [a] -> [a]
- sortWith :: (Ord a, IsSequence c) => (Element c -> a) -> c -> c
- repeat :: a -> [a]
- (\\) :: SetContainer a => a -> a -> a
- intersect :: SetContainer a => a -> a -> a
- class Show a where
  - showsPrec :: Int -> a -> ShowS
  - show :: a -> String
  - showList :: [a] -> ShowS
- tshow :: Show a => a -> Text
- tlshow :: Show a => a -> LText
- charToLower :: Char -> Char
- charToUpper :: Char -> Char
- readFile :: MonadIO m => FilePath -> m ByteString
- readFileUtf8 :: MonadIO m => FilePath -> m Text
- writeFile :: MonadIO m => FilePath -> ByteString -> m ()
- writeFileUtf8 :: MonadIO m => FilePath -> Text -> m ()
- hGetContents :: MonadIO m => Handle -> m ByteString
- hPut :: MonadIO m => Handle -> ByteString -> m ()
- hGetChunk :: MonadIO m => Handle -> m ByteString
- print :: (Show a, MonadIO m) => a -> m ()
- putChar :: MonadIO m => Char -> m ()
- putStr :: MonadIO m => Text -> m ()
- putStrLn :: MonadIO m => Text -> m ()
- getChar :: MonadIO m => m Char
- getLine :: MonadIO m => m Text
- getContents :: MonadIO m => m LText
- interact :: MonadIO m => (LText -> LText) -> m ()
- data DList a
- asDList :: DList a -> DList a
- applyDList :: DList a -> [a] -> [a]
- deepseq :: NFData a => a -> b -> b
- class NFData a where
  - rnf :: a -> ()
- ($!!) :: NFData a => (a -> b) -> a -> b
- force :: NFData a => a -> a
- asByteString :: ByteString -> ByteString
- asLByteString :: LByteString -> LByteString
- asHashMap :: HashMap k v -> HashMap k v
- asHashSet :: HashSet a -> HashSet a
- asText :: Text -> Text
- asLText :: LText -> LText
- asList :: [a] -> [a]
- asMap :: Map k v -> Map k v
- asIntMap :: IntMap v -> IntMap v
- asMaybe :: Maybe a -> Maybe a
- asSet :: Set a -> Set a
- asIntSet :: IntSet -> IntSet
- asVector :: Vector a -> Vector a
- asUVector :: UVector a -> UVector a
- asSVector :: SVector a -> SVector a
- asString :: [Char] -> [Char]

# CorePrelude

data Int Source #

A fixed-precision integer type with at least the range `[-2^29 .. 2^29-1]`. The exact range for a given implementation can be determined by using `minBound` and `maxBound` from the `Bounded` class.

#### Instances

Instances details

PrintfArg Int | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Int -> FieldFormatter Source # parseFormat :: Int -> ModifierParser Source #
NFData Int |
Instance details Defined in Control.DeepSeq Methods rnf :: Int -> () Source #
Bounded Int | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Int Source # maxBound :: Int Source #
Enum Int | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: Int -> Int Source # pred :: Int -> Int Source # toEnum :: Int -> Int Source # fromEnum :: Int -> Int Source # enumFrom :: Int -> [Int] Source # enumFromThen :: Int -> Int -> [Int] Source # enumFromTo :: Int -> Int -> [Int] Source # enumFromThenTo :: Int -> Int -> Int -> [Int] Source #
Storable Int | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Int -> Int Source #

alignment :: Int -> Int Source #

peekElemOff :: Ptr Int -> Int -> IO Int Source #

pokeElemOff :: Ptr Int -> Int -> Int -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Int Source #

pokeByteOff :: Ptr b -> Int -> Int -> IO () Source #

peek :: Ptr Int -> IO Int Source #

poke :: Ptr Int -> Int -> IO () Source #

Num Int | Since: base-2.1
Instance details Defined in GHC.Internal.Num Methods (+) :: Int -> Int -> Int Source # (-) :: Int -> Int -> Int Source # (*) :: Int -> Int -> Int Source # negate :: Int -> Int Source # abs :: Int -> Int Source # signum :: Int -> Int Source # fromInteger :: Integer -> Int Source #
Read Int | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Int Source # readList :: ReadS [Int] Source # readPrec :: ReadPrec Int Source # readListPrec :: ReadPrec [Int] Source #
Integral Int | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods quot :: Int -> Int -> Int Source # rem :: Int -> Int -> Int Source # div :: Int -> Int -> Int Source # mod :: Int -> Int -> Int Source # quotRem :: Int -> Int -> (Int, Int) Source # divMod :: Int -> Int -> (Int, Int) Source # toInteger :: Int -> Integer Source #
Real Int | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods toRational :: Int -> Rational Source #
Show Int | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Int -> ShowS Source # show :: Int -> String Source # showList :: [Int] -> ShowS Source #
Eq Int |
Instance details Defined in GHC.Classes Methods (==) :: Int -> Int -> Bool Source # (/=) :: Int -> Int -> Bool Source #
Ord Int |
Instance details Defined in GHC.Classes Methods compare :: Int -> Int -> Ordering Source # (<) :: Int -> Int -> Bool Source # (<=) :: Int -> Int -> Bool Source # (>) :: Int -> Int -> Bool Source # (>=) :: Int -> Int -> Bool Source # max :: Int -> Int -> Int Source # min :: Int -> Int -> Int Source #
Hashable Int |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Int -> Int Source # hash :: Int -> Int Source #
Prim Int |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Int -> Int# Source #

sizeOf# :: Int -> Int# Source #

alignmentOfType# :: Proxy Int -> Int# Source #

alignment# :: Int -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Int Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Int #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Int -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Int Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Int #) Source #

writeOffAddr# :: Addr# -> Int# -> Int -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Int -> State# s -> State# s Source #

Unbox Int |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Int |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Int -> ST s (Vector Int)

basicUnsafeThaw :: Vector Int -> ST s (Mutable Vector s Int)

basicLength :: Vector Int -> Int

basicUnsafeSlice :: Int -> Int -> Vector Int -> Vector Int

basicUnsafeIndexM :: Vector Int -> Int -> Box Int

basicUnsafeCopy :: Mutable Vector s Int -> Vector Int -> ST s ()

elemseq :: Vector Int -> Int -> b -> b

MVector MVector Int |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Int -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Int -> MVector s Int

basicOverlaps :: MVector s Int -> MVector s Int -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Int)

basicInitialize :: MVector s Int -> ST s ()

basicUnsafeReplicate :: Int -> Int -> ST s (MVector s Int)

basicUnsafeRead :: MVector s Int -> Int -> ST s Int

basicUnsafeWrite :: MVector s Int -> Int -> Int -> ST s ()

basicClear :: MVector s Int -> ST s ()

basicSet :: MVector s Int -> Int -> ST s ()

basicUnsafeCopy :: MVector s Int -> MVector s Int -> ST s ()

basicUnsafeMove :: MVector s Int -> MVector s Int -> ST s ()

basicUnsafeGrow :: MVector s Int -> Int -> ST s (MVector s Int)

Generic1 (URec Int :: k -> Type) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep1 (URec Int :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Int :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UInt" 'PrefixI 'True) (S1 ('MetaSel ('Just "uInt#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UInt :: k -> Type)))

Methods

from1 :: forall (a :: k). URec Int a -> Rep1 (URec Int :: k -> Type) a Source #

to1 :: forall (a :: k). Rep1 (URec Int :: k -> Type) a -> URec Int a Source #

Eq1 (UInt :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftEq :: (a -> b -> Bool) -> UInt a -> UInt b -> Bool Source #
Ord1 (UInt :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftCompare :: (a -> b -> Ordering) -> UInt a -> UInt b -> Ordering Source #
Show1 (UInt :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> UInt a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [UInt a] -> ShowS Source #
Foldable (UInt :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UInt m -> m Source #

foldMap :: Monoid m => (a -> m) -> UInt a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UInt a -> m Source #

foldr :: (a -> b -> b) -> b -> UInt a -> b Source #

foldr' :: (a -> b -> b) -> b -> UInt a -> b Source #

foldl :: (b -> a -> b) -> b -> UInt a -> b Source #

foldl' :: (b -> a -> b) -> b -> UInt a -> b Source #

foldr1 :: (a -> a -> a) -> UInt a -> a Source #

foldl1 :: (a -> a -> a) -> UInt a -> a Source #

toList :: UInt a -> [a] Source #

null :: UInt a -> Bool Source #

length :: UInt a -> Int Source #

elem :: Eq a => a -> UInt a -> Bool Source #

maximum :: Ord a => UInt a -> a Source #

minimum :: Ord a => UInt a -> a Source #

sum :: Num a => UInt a -> a Source #

product :: Num a => UInt a -> a Source #

Traversable (UInt :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UInt a -> f (UInt b) Source # sequenceA :: Applicative f => UInt (f a) -> f (UInt a) Source # mapM :: Monad m => (a -> m b) -> UInt a -> m (UInt b) Source # sequence :: Monad m => UInt (m a) -> m (UInt a) Source #
Functor (URec Int :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Int a -> URec Int b Source # (<$) :: a -> URec Int b -> URec Int a Source #
Generic (URec Int p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Int p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Int p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UInt" 'PrefixI 'True) (S1 ('MetaSel ('Just "uInt#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UInt :: Type -> Type)))

Methods

from :: URec Int p -> Rep (URec Int p) x Source #

to :: Rep (URec Int p) x -> URec Int p Source #

Show (URec Int p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Int p -> ShowS Source # show :: URec Int p -> String Source # showList :: [URec Int p] -> ShowS Source #
Eq (URec Int p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Int p -> URec Int p -> Bool Source # (/=) :: URec Int p -> URec Int p -> Bool Source #
Ord (URec Int p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Int p -> URec Int p -> Ordering Source #

(<) :: URec Int p -> URec Int p -> Bool Source #

(<=) :: URec Int p -> URec Int p -> Bool Source #

(>) :: URec Int p -> URec Int p -> Bool Source #

(>=) :: URec Int p -> URec Int p -> Bool Source #

max :: URec Int p -> URec Int p -> URec Int p Source #

min :: URec Int p -> URec Int p -> URec Int p Source #

newtype Vector Int |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Int = V_Int (Vector Int)
data URec Int (p :: k) | Used for marking occurrences of `Int#` Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

data URec Int (p :: k) = UInt {

- uInt# :: Int#

}

newtype MVector s Int |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Int = MV_Int (MVector s Int)
type Rep1 (URec Int :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Int :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UInt" 'PrefixI 'True) (S1 ('MetaSel ('Just "uInt#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UInt :: k -> Type)))
type Rep (URec Int p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Int p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UInt" 'PrefixI 'True) (S1 ('MetaSel ('Just "uInt#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UInt :: Type -> Type)))

data Float Source #

Single-precision floating point numbers. It is desirable that this type be at least equal in range and precision to the IEEE single-precision type.

#### Instances

Instances details

PrintfArg Float | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Float -> FieldFormatter Source # parseFormat :: Float -> ModifierParser Source #
NFData Float |
Instance details Defined in Control.DeepSeq Methods rnf :: Float -> () Source #

Enum Float

`fromEnum` just truncates its argument, beware of all sorts of overflows.

List generators have extremely peculiar behavior, mandated by Haskell Report 2010:

    >>> [0..1.5 :: Float]
    [0.0,1.0,2.0]

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods succ :: Float -> Float Source # pred :: Float -> Float Source # toEnum :: Int -> Float Source # fromEnum :: Float -> Int Source # enumFrom :: Float -> [Float] Source # enumFromThen :: Float -> Float -> [Float] Source # enumFromTo :: Float -> Float -> [Float] Source # enumFromThenTo :: Float -> Float -> Float -> [Float] Source #
Floating Float | Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

pi :: Float Source #

exp :: Float -> Float Source #

log :: Float -> Float Source #

sqrt :: Float -> Float Source #

(**) :: Float -> Float -> Float Source #

logBase :: Float -> Float -> Float Source #

sin :: Float -> Float Source #

cos :: Float -> Float Source #

tan :: Float -> Float Source #

asin :: Float -> Float Source #

acos :: Float -> Float Source #

atan :: Float -> Float Source #

sinh :: Float -> Float Source #

cosh :: Float -> Float Source #

tanh :: Float -> Float Source #

asinh :: Float -> Float Source #

acosh :: Float -> Float Source #

atanh :: Float -> Float Source #

log1p :: Float -> Float Source #

expm1 :: Float -> Float Source #

log1pexp :: Float -> Float Source #

log1mexp :: Float -> Float Source #

RealFloat Float | Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

floatRadix :: Float -> Integer Source #

floatDigits :: Float -> Int Source #

floatRange :: Float -> (Int, Int) Source #

decodeFloat :: Float -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Float Source #

exponent :: Float -> Int Source #

significand :: Float -> Float Source #

scaleFloat :: Int -> Float -> Float Source #

isNaN :: Float -> Bool Source #

isInfinite :: Float -> Bool Source #

isDenormalized :: Float -> Bool Source #

isNegativeZero :: Float -> Bool Source #

isIEEE :: Float -> Bool Source #

atan2 :: Float -> Float -> Float Source #

Storable Float | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Float -> Int Source #

alignment :: Float -> Int Source #

peekElemOff :: Ptr Float -> Int -> IO Float Source #

pokeElemOff :: Ptr Float -> Int -> Float -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Float Source #

pokeByteOff :: Ptr b -> Int -> Float -> IO () Source #

peek :: Ptr Float -> IO Float Source #

poke :: Ptr Float -> Float -> IO () Source #

Num Float

This instance implements IEEE 754 standard with all its usual pitfalls about NaN, infinities and negative zero. Neither addition nor multiplication are associative or distributive:

    >>> (0.1 + 0.1 :: Float) + 0.5 == 0.1 + (0.1 + 0.5)
    False
    >>> (0.1 + 0.2 :: Float) * 0.9 == 0.1 * 0.9 + 0.2 * 0.9
    False
    >>> (0.1 * 0.1 :: Float) * 0.9 == 0.1 * (0.1 * 0.9)
    False

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods (+) :: Float -> Float -> Float Source # (-) :: Float -> Float -> Float Source # (*) :: Float -> Float -> Float Source # negate :: Float -> Float Source # abs :: Float -> Float Source # signum :: Float -> Float Source # fromInteger :: Integer -> Float Source #
Read Float | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Float Source # readList :: ReadS [Float] Source # readPrec :: ReadPrec Float Source # readListPrec :: ReadPrec [Float] Source #

Fractional Float

This instance implements IEEE 754 standard with all its usual pitfalls about NaN, infinities and negative zero.

    >>> 0 == (-0 :: Float)
    True
    >>> recip 0 == recip (-0 :: Float)
    False
    >>> map (/ 0) [-1, 0, 1 :: Float]
    [-Infinity,NaN,Infinity]
    >>> map (* 0) $ map (/ 0) [-1, 0, 1 :: Float]
    [NaN,NaN,NaN]

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods (/) :: Float -> Float -> Float Source # recip :: Float -> Float Source # fromRational :: Rational -> Float Source #

Real Float

Beware that `toRational` generates garbage for non-finite arguments:

    >>> toRational (1/0 :: Float)
    340282366920938463463374607431768211456 % 1
    >>> toRational (0/0 :: Float)
    510423550381407695195061911147652317184 % 1

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods toRational :: Float -> Rational Source #

RealFrac Float

Beware that results for non-finite arguments are garbage:

    >>> [ f x | f <- [round, floor, ceiling], x <- [-1/0, 0/0, 1/0 :: Float] ] :: [Int]
    [0,0,0,0,0,0,0,0,0]
    >>> map properFraction [-1/0, 0/0, 1/0] :: [(Int, Float)]
    [(0,0.0),(0,0.0),(0,0.0)]

and get even more non-sensical if you ask for `Integer` instead of `Int`.

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods properFraction :: Integral b => Float -> (b, Float) Source # truncate :: Integral b => Float -> b Source # round :: Integral b => Float -> b Source # ceiling :: Integral b => Float -> b Source # floor :: Integral b => Float -> b Source #
Show Float | Since: base-2.1
Instance details Defined in GHC.Internal.Float Methods showsPrec :: Int -> Float -> ShowS Source # show :: Float -> String Source # showList :: [Float] -> ShowS Source #

Eq Float

Note that due to the presence of `NaN`, `Float`'s `Eq` instance does not satisfy reflexivity.

    >>> 0/0 == (0/0 :: Float)
    False

Also note that `Float`'s `Eq` instance does not satisfy extensionality:

    >>> 0 == (-0 :: Float)
    True
    >>> recip 0 == recip (-0 :: Float)
    False

Instance details Defined in GHC.Classes Methods (==) :: Float -> Float -> Bool Source # (/=) :: Float -> Float -> Bool Source #
Ord Float | See `instance` `Ord` `Double` for discussion of deviations from IEEE 754 standard.
Instance details Defined in GHC.Classes Methods compare :: Float -> Float -> Ordering Source # (<) :: Float -> Float -> Bool Source # (<=) :: Float -> Float -> Bool Source # (>) :: Float -> Float -> Bool Source # (>=) :: Float -> Float -> Bool Source # max :: Float -> Float -> Float Source # min :: Float -> Float -> Float Source #
Hashable Float | Note: prior to `hashable-1.3.0.0`, `hash 0.0 /= hash (-0.0)` The `hash` of NaN is not well defined. Since: hashable-1.3.0.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Float -> Int Source # hash :: Float -> Int Source #
Prim Float |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Float -> Int# Source #

sizeOf# :: Float -> Int# Source #

alignmentOfType# :: Proxy Float -> Int# Source #

alignment# :: Float -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Float Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Float #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Float -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Float -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Float Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Float #) Source #

writeOffAddr# :: Addr# -> Int# -> Float -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Float -> State# s -> State# s Source #

Unbox Float |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Float |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Float -> ST s (Vector Float)

basicUnsafeThaw :: Vector Float -> ST s (Mutable Vector s Float)

basicLength :: Vector Float -> Int

basicUnsafeSlice :: Int -> Int -> Vector Float -> Vector Float

basicUnsafeIndexM :: Vector Float -> Int -> Box Float

basicUnsafeCopy :: Mutable Vector s Float -> Vector Float -> ST s ()

elemseq :: Vector Float -> Float -> b -> b

MVector MVector Float |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Float -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Float -> MVector s Float

basicOverlaps :: MVector s Float -> MVector s Float -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Float)

basicInitialize :: MVector s Float -> ST s ()

basicUnsafeReplicate :: Int -> Float -> ST s (MVector s Float)

basicUnsafeRead :: MVector s Float -> Int -> ST s Float

basicUnsafeWrite :: MVector s Float -> Int -> Float -> ST s ()

basicClear :: MVector s Float -> ST s ()

basicSet :: MVector s Float -> Float -> ST s ()

basicUnsafeCopy :: MVector s Float -> MVector s Float -> ST s ()

basicUnsafeMove :: MVector s Float -> MVector s Float -> ST s ()

basicUnsafeGrow :: MVector s Float -> Int -> ST s (MVector s Float)

Generic1 (URec Float :: k -> Type) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep1 (URec Float :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Float :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UFloat" 'PrefixI 'True) (S1 ('MetaSel ('Just "uFloat#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UFloat :: k -> Type)))

Methods

from1 :: forall (a :: k). URec Float a -> Rep1 (URec Float :: k -> Type) a Source #

to1 :: forall (a :: k). Rep1 (URec Float :: k -> Type) a -> URec Float a Source #

Eq1 (UFloat :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftEq :: (a -> b -> Bool) -> UFloat a -> UFloat b -> Bool Source #
Ord1 (UFloat :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftCompare :: (a -> b -> Ordering) -> UFloat a -> UFloat b -> Ordering Source #
Show1 (UFloat :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> UFloat a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [UFloat a] -> ShowS Source #
Foldable (UFloat :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UFloat m -> m Source #

foldMap :: Monoid m => (a -> m) -> UFloat a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UFloat a -> m Source #

foldr :: (a -> b -> b) -> b -> UFloat a -> b Source #

foldr' :: (a -> b -> b) -> b -> UFloat a -> b Source #

foldl :: (b -> a -> b) -> b -> UFloat a -> b Source #

foldl' :: (b -> a -> b) -> b -> UFloat a -> b Source #

foldr1 :: (a -> a -> a) -> UFloat a -> a Source #

foldl1 :: (a -> a -> a) -> UFloat a -> a Source #

toList :: UFloat a -> [a] Source #

null :: UFloat a -> Bool Source #

length :: UFloat a -> Int Source #

elem :: Eq a => a -> UFloat a -> Bool Source #

maximum :: Ord a => UFloat a -> a Source #

minimum :: Ord a => UFloat a -> a Source #

sum :: Num a => UFloat a -> a Source #

product :: Num a => UFloat a -> a Source #

Traversable (UFloat :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UFloat a -> f (UFloat b) Source # sequenceA :: Applicative f => UFloat (f a) -> f (UFloat a) Source # mapM :: Monad m => (a -> m b) -> UFloat a -> m (UFloat b) Source # sequence :: Monad m => UFloat (m a) -> m (UFloat a) Source #
Functor (URec Float :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Float a -> URec Float b Source # (<$) :: a -> URec Float b -> URec Float a Source #
Generic (URec Float p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Float p) |
Instance details Defined in GHC.Internal.Generics type Rep (URec Float p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UFloat" 'PrefixI 'True) (S1 ('MetaSel ('Just "uFloat#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UFloat :: Type -> Type)))

Methods

from :: URec Float p -> Rep (URec Float p) x Source #

to :: Rep (URec Float p) x -> URec Float p Source #

Show (URec Float p) |
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Float p -> ShowS Source # show :: URec Float p -> String Source # showList :: [URec Float p] -> ShowS Source #
Eq (URec Float p) |
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Float p -> URec Float p -> Bool Source # (/=) :: URec Float p -> URec Float p -> Bool Source #
Ord (URec Float p) |

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Float p -> URec Float p -> Ordering Source #

(<) :: URec Float p -> URec Float p -> Bool Source #

(<=) :: URec Float p -> URec Float p -> Bool Source #

(>) :: URec Float p -> URec Float p -> Bool Source #

(>=) :: URec Float p -> URec Float p -> Bool Source #

max :: URec Float p -> URec Float p -> URec Float p Source #

min :: URec Float p -> URec Float p -> URec Float p Source #

newtype Vector Float |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Float = V_Float (Vector Float)
data URec Float (p :: k) | Used for marking occurrences of `Float#` Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

data URec Float (p :: k) = UFloat {

- uFloat# :: Float#

}

newtype MVector s Float |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Float = MV_Float (MVector s Float)
type Rep1 (URec Float :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Float :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UFloat" 'PrefixI 'True) (S1 ('MetaSel ('Just "uFloat#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UFloat :: k -> Type)))
type Rep (URec Float p) |
Instance details Defined in GHC.Internal.Generics type Rep (URec Float p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UFloat" 'PrefixI 'True) (S1 ('MetaSel ('Just "uFloat#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UFloat :: Type -> Type)))

data Char Source #

The character type `Char` represents Unicode codespace and its elements are code points as in definitions D9 and D10 of the Unicode Standard.

Character literals in Haskell are single-quoted: `'Q'`, `'Я'` or `'Ω'`. To represent a single quote itself use `'\''`, and to represent a backslash use `'\\'`. The full grammar can be found in the section 2.6 of the Haskell 2010 Language Report.

To specify a character by its code point one can use decimal, hexadecimal or octal notation: `'\65'`, `'\x41'` and `'\o101'` are all alternative forms of `'A'`. The largest code point is `'\x10ffff'`.

There is a special escape syntax for ASCII control characters:

Escape | Alternatives | Meaning
--- | --- | ---
`'\NUL'` | `'\0'` | null character
`'\SOH'` | `'\1'` | start of heading
`'\STX'` | `'\2'` | start of text
`'\ETX'` | `'\3'` | end of text
`'\EOT'` | `'\4'` | end of transmission
`'\ENQ'` | `'\5'` | enquiry
`'\ACK'` | `'\6'` | acknowledge
`'\BEL'` | `'\7'`, `'\a'` | bell (alert)
`'\BS'` | `'\8'`, `'\b'` | backspace
`'\HT'` | `'\9'`, `'\t'` | horizontal tab
`'\LF'` | `'\10'`, `'\n'` | line feed (new line)
`'\VT'` | `'\11'`, `'\v'` | vertical tab
`'\FF'` | `'\12'`, `'\f'` | form feed
`'\CR'` | `'\13'`, `'\r'` | carriage return
`'\SO'` | `'\14'` | shift out
`'\SI'` | `'\15'` | shift in
`'\DLE'` | `'\16'` | data link escape
`'\DC1'` | `'\17'` | device control 1
`'\DC2'` | `'\18'` | device control 2
`'\DC3'` | `'\19'` | device control 3
`'\DC4'` | `'\20'` | device control 4
`'\NAK'` | `'\21'` | negative acknowledge
`'\SYN'` | `'\22'` | synchronous idle
`'\ETB'` | `'\23'` | end of transmission block
`'\CAN'` | `'\24'` | cancel
`'\EM'` | `'\25'` | end of medium
`'\SUB'` | `'\26'` | substitute
`'\ESC'` | `'\27'` | escape
`'\FS'` | `'\28'` | file separator
`'\GS'` | `'\29'` | group separator
`'\RS'` | `'\30'` | record separator
`'\US'` | `'\31'` | unit separator
`'\SP'` | `'\32'`, `' '` | space
`'\DEL'` | `'\127'` | delete

Data.Char provides utilities to work with `Char`.

#### Instances

Instances details

IsChar Char | Since: base-2.1
Instance details Defined in Text.Printf Methods toChar :: Char -> Char Source # fromChar :: Char -> Char Source #
PrintfArg Char | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Char -> FieldFormatter Source # parseFormat :: Char -> ModifierParser Source #
NFData Char |
Instance details Defined in Control.DeepSeq Methods rnf :: Char -> () Source #
Bounded Char | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Char Source # maxBound :: Char Source #
Enum Char | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: Char -> Char Source # pred :: Char -> Char Source # toEnum :: Int -> Char Source # fromEnum :: Char -> Int Source # enumFrom :: Char -> [Char] Source # enumFromThen :: Char -> Char -> [Char] Source # enumFromTo :: Char -> Char -> [Char] Source # enumFromThenTo :: Char -> Char -> Char -> [Char] Source #
Storable Char | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Char -> Int Source #

alignment :: Char -> Int Source #

peekElemOff :: Ptr Char -> Int -> IO Char Source #

pokeElemOff :: Ptr Char -> Int -> Char -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Char Source #

pokeByteOff :: Ptr b -> Int -> Char -> IO () Source #

peek :: Ptr Char -> IO Char Source #

poke :: Ptr Char -> Char -> IO () Source #

Read Char | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Char Source # readList :: ReadS [Char] Source # readPrec :: ReadPrec Char Source # readListPrec :: ReadPrec [Char] Source #
Show Char | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Char -> ShowS Source # show :: Char -> String Source # showList :: [Char] -> ShowS Source #
Eq Char |
Instance details Defined in GHC.Classes Methods (==) :: Char -> Char -> Bool Source # (/=) :: Char -> Char -> Bool Source #
Ord Char |
Instance details Defined in GHC.Classes Methods compare :: Char -> Char -> Ordering Source # (<) :: Char -> Char -> Bool Source # (<=) :: Char -> Char -> Bool Source # (>) :: Char -> Char -> Bool Source # (>=) :: Char -> Char -> Bool Source # max :: Char -> Char -> Char Source # min :: Char -> Char -> Char Source #
Hashable Char |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Char -> Int Source # hash :: Char -> Int Source #
Prim Char |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Char -> Int# Source #

sizeOf# :: Char -> Int# Source #

alignmentOfType# :: Proxy Char -> Int# Source #

alignment# :: Char -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Char Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Char #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Char -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Char -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Char Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Char #) Source #

writeOffAddr# :: Addr# -> Int# -> Char -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Char -> State# s -> State# s Source #

Unbox Char |
Instance details Defined in Data.Vector.Unboxed.Base
ToBuilder Char Builder |
Instance details Defined in Data.Builder Methods toBuilder :: Char -> Builder Source #
ToBuilder Char Builder |
Instance details Defined in Data.Builder Methods toBuilder :: Char -> Builder Source #
Vector Vector Char |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Char -> ST s (Vector Char)

basicUnsafeThaw :: Vector Char -> ST s (Mutable Vector s Char)

basicLength :: Vector Char -> Int

basicUnsafeSlice :: Int -> Int -> Vector Char -> Vector Char

basicUnsafeIndexM :: Vector Char -> Int -> Box Char

basicUnsafeCopy :: Mutable Vector s Char -> Vector Char -> ST s ()

elemseq :: Vector Char -> Char -> b -> b

MVector MVector Char |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Char -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Char -> MVector s Char

basicOverlaps :: MVector s Char -> MVector s Char -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Char)

basicInitialize :: MVector s Char -> ST s ()

basicUnsafeReplicate :: Int -> Char -> ST s (MVector s Char)

basicUnsafeRead :: MVector s Char -> Int -> ST s Char

basicUnsafeWrite :: MVector s Char -> Int -> Char -> ST s ()

basicClear :: MVector s Char -> ST s ()

basicSet :: MVector s Char -> Char -> ST s ()

basicUnsafeCopy :: MVector s Char -> MVector s Char -> ST s ()

basicUnsafeMove :: MVector s Char -> MVector s Char -> ST s ()

basicUnsafeGrow :: MVector s Char -> Int -> ST s (MVector s Char)

Generic1 (URec Char :: k -> Type) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep1 (URec Char :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Char :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UChar" 'PrefixI 'True) (S1 ('MetaSel ('Just "uChar#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UChar :: k -> Type)))

Methods

from1 :: forall (a :: k). URec Char a -> Rep1 (URec Char :: k -> Type) a Source #

to1 :: forall (a :: k). Rep1 (URec Char :: k -> Type) a -> URec Char a Source #

Eq1 (UChar :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftEq :: (a -> b -> Bool) -> UChar a -> UChar b -> Bool Source #
Ord1 (UChar :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftCompare :: (a -> b -> Ordering) -> UChar a -> UChar b -> Ordering Source #
Show1 (UChar :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> UChar a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [UChar a] -> ShowS Source #
Foldable (UChar :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UChar m -> m Source #

foldMap :: Monoid m => (a -> m) -> UChar a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UChar a -> m Source #

foldr :: (a -> b -> b) -> b -> UChar a -> b Source #

foldr' :: (a -> b -> b) -> b -> UChar a -> b Source #

foldl :: (b -> a -> b) -> b -> UChar a -> b Source #

foldl' :: (b -> a -> b) -> b -> UChar a -> b Source #

foldr1 :: (a -> a -> a) -> UChar a -> a Source #

foldl1 :: (a -> a -> a) -> UChar a -> a Source #

toList :: UChar a -> [a] Source #

null :: UChar a -> Bool Source #

length :: UChar a -> Int Source #

elem :: Eq a => a -> UChar a -> Bool Source #

maximum :: Ord a => UChar a -> a Source #

minimum :: Ord a => UChar a -> a Source #

sum :: Num a => UChar a -> a Source #

product :: Num a => UChar a -> a Source #

Traversable (UChar :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UChar a -> f (UChar b) Source # sequenceA :: Applicative f => UChar (f a) -> f (UChar a) Source # mapM :: Monad m => (a -> m b) -> UChar a -> m (UChar b) Source # sequence :: Monad m => UChar (m a) -> m (UChar a) Source #
Functor (URec Char :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Char a -> URec Char b Source # (<$) :: a -> URec Char b -> URec Char a Source #
Generic (URec Char p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Char p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Char p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UChar" 'PrefixI 'True) (S1 ('MetaSel ('Just "uChar#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UChar :: Type -> Type)))

Methods

from :: URec Char p -> Rep (URec Char p) x Source #

to :: Rep (URec Char p) x -> URec Char p Source #

Show (URec Char p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Char p -> ShowS Source # show :: URec Char p -> String Source # showList :: [URec Char p] -> ShowS Source #
Eq (URec Char p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Char p -> URec Char p -> Bool Source # (/=) :: URec Char p -> URec Char p -> Bool Source #
Ord (URec Char p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Char p -> URec Char p -> Ordering Source #

(<) :: URec Char p -> URec Char p -> Bool Source #

(<=) :: URec Char p -> URec Char p -> Bool Source #

(>) :: URec Char p -> URec Char p -> Bool Source #

(>=) :: URec Char p -> URec Char p -> Bool Source #

max :: URec Char p -> URec Char p -> URec Char p Source #

min :: URec Char p -> URec Char p -> URec Char p Source #

newtype Vector Char |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Char = V_Char (Vector Char)
data URec Char (p :: k) | Used for marking occurrences of `Char#` Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

data URec Char (p :: k) = UChar {

- uChar# :: Char#

}

newtype MVector s Char |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Char = MV_Char (MVector s Char)
type Rep1 (URec Char :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Char :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UChar" 'PrefixI 'True) (S1 ('MetaSel ('Just "uChar#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UChar :: k -> Type)))
type Rep (URec Char p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Char p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UChar" 'PrefixI 'True) (S1 ('MetaSel ('Just "uChar#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UChar :: Type -> Type)))

data Maybe a Source #

The `Maybe` type encapsulates an optional value. A value of type ``Maybe` a` either contains a value of type `a` (represented as ``Just` a`), or it is empty (represented as `Nothing`). Using `Maybe` is a good way to deal with errors or exceptional cases without resorting to drastic measures such as `error`.

The `Maybe` type is also a monad. It is a simple kind of error monad, where all errors are represented by `Nothing`. A richer error monad can be built using the `Either` type.

Constructors

Nothing |
Just a |

#### Instances

Instances details

MonadZip Maybe | Since: base-4.8.0.0
Instance details Defined in Control.Monad.Zip Methods mzip :: Maybe a -> Maybe b -> Maybe (a, b) Source # mzipWith :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c Source # munzip :: Maybe (a, b) -> (Maybe a, Maybe b) Source #
Eq1 Maybe | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftEq :: (a -> b -> Bool) -> Maybe a -> Maybe b -> Bool Source #
Ord1 Maybe | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftCompare :: (a -> b -> Ordering) -> Maybe a -> Maybe b -> Ordering Source #
Read1 Maybe | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Maybe a) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Maybe a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Maybe a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Maybe a] Source #
Show1 Maybe | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Maybe a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Maybe a] -> ShowS Source #
NFData1 Maybe | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods liftRnf :: (a -> ()) -> Maybe a -> () Source #
MonadThrow Maybe |
Instance details Defined in Control.Monad.Catch Methods throwM :: (HasCallStack, Exception e) => e -> Maybe a Source #
Alternative Maybe | Picks the leftmost `Just` value, or, alternatively, `Nothing`. Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods empty :: Maybe a Source # (<|>) :: Maybe a -> Maybe a -> Maybe a Source # some :: Maybe a -> Maybe [a] Source # many :: Maybe a -> Maybe [a] Source #
Applicative Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods pure :: a -> Maybe a Source # (<*>) :: Maybe (a -> b) -> Maybe a -> Maybe b Source # liftA2 :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c Source # (*>) :: Maybe a -> Maybe b -> Maybe b Source # (<*) :: Maybe a -> Maybe b -> Maybe a Source #
Functor Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> Maybe a -> Maybe b Source # (<$) :: a -> Maybe b -> Maybe a Source #
Monad Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods (>>=) :: Maybe a -> (a -> Maybe b) -> Maybe b Source # (>>) :: Maybe a -> Maybe b -> Maybe b Source # return :: a -> Maybe a Source #
MonadPlus Maybe | Picks the leftmost `Just` value, or, alternatively, `Nothing`. Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mzero :: Maybe a Source # mplus :: Maybe a -> Maybe a -> Maybe a Source #
MonadFail Maybe | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Control.Monad.Fail Methods fail :: String -> Maybe a Source #
Foldable Maybe | Since: base-2.1

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Maybe m -> m Source #

foldMap :: Monoid m => (a -> m) -> Maybe a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Maybe a -> m Source #

foldr :: (a -> b -> b) -> b -> Maybe a -> b Source #

foldr' :: (a -> b -> b) -> b -> Maybe a -> b Source #

foldl :: (b -> a -> b) -> b -> Maybe a -> b Source #

foldl' :: (b -> a -> b) -> b -> Maybe a -> b Source #

foldr1 :: (a -> a -> a) -> Maybe a -> a Source #

foldl1 :: (a -> a -> a) -> Maybe a -> a Source #

toList :: Maybe a -> [a] Source #

null :: Maybe a -> Bool Source #

length :: Maybe a -> Int Source #

elem :: Eq a => a -> Maybe a -> Bool Source #

maximum :: Ord a => Maybe a -> a Source #

minimum :: Ord a => Maybe a -> a Source #

sum :: Num a => Maybe a -> a Source #

product :: Num a => Maybe a -> a Source #

Traversable Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Maybe a -> f (Maybe b) Source # sequenceA :: Applicative f => Maybe (f a) -> f (Maybe a) Source # mapM :: Monad m => (a -> m b) -> Maybe a -> m (Maybe b) Source # sequence :: Monad m => Maybe (m a) -> m (Maybe a) Source #
Hashable1 Maybe |
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> Maybe a -> Int Source #
FoldableWithKey Maybe |
Instance details Defined in Data.Key Methods toKeyedList :: Maybe a -> [(Key Maybe, a)] foldMapWithKey :: Monoid m => (Key Maybe -> a -> m) -> Maybe a -> m foldrWithKey :: (Key Maybe -> a -> b -> b) -> b -> Maybe a -> b foldlWithKey :: (b -> Key Maybe -> a -> b) -> b -> Maybe a -> b
Indexable Maybe |
Instance details Defined in Data.Key Methods index :: Maybe a -> Key Maybe -> a
Keyed Maybe |
Instance details Defined in Data.Key Methods mapWithKey :: (Key Maybe -> a -> b) -> Maybe a -> Maybe b
Lookup Maybe |
Instance details Defined in Data.Key Methods lookup :: Key Maybe -> Maybe a -> Maybe a
TraversableWithKey Maybe |
Instance details Defined in Data.Key Methods traverseWithKey :: Applicative f => (Key Maybe -> a -> f b) -> Maybe a -> f (Maybe b) mapWithKeyM :: Monad m => (Key Maybe -> a -> m b) -> Maybe a -> m (Maybe b)
Zip Maybe |
Instance details Defined in Data.Key Methods zipWith :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c zip :: Maybe a -> Maybe b -> Maybe (a, b) zap :: Maybe (a -> b) -> Maybe a -> Maybe b
ZipWithKey Maybe |
Instance details Defined in Data.Key Methods zipWithKey :: (Key Maybe -> a -> b -> c) -> Maybe a -> Maybe b -> Maybe c zapWithKey :: Maybe (Key Maybe -> a -> b) -> Maybe a -> Maybe b
Generic1 Maybe |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep1 Maybe | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 Maybe = D1 ('MetaData "Maybe" "GHC.Internal.Maybe" "ghc-internal" 'False) (C1 ('MetaCons "Nothing" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Just" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))

Methods

from1 :: Maybe a -> Rep1 Maybe a Source #

to1 :: Rep1 Maybe a -> Maybe a Source #

MonadError () Maybe | Since: mtl-2.2.2
Instance details Defined in Control.Monad.Error.Class Methods throwError :: () -> Maybe a Source # catchError :: Maybe a -> (() -> Maybe a) -> Maybe a Source #
NFData a => NFData (Maybe a) |
Instance details Defined in Control.DeepSeq Methods rnf :: Maybe a -> () Source #
Semigroup a => Monoid (Maybe a) | Lift a semigroup into `Maybe` forming a `Monoid` according to http://en.wikipedia.org/wiki/Monoid: "Any semigroup `S` may be turned into a monoid simply by adjoining an element `e` not in `S` and defining `e*e = e` and `e*s = s = s*e` for all `s ∈ S`." Since 4.11.0: constraint on inner `a` value generalised from `Monoid` to `Semigroup`. Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: Maybe a Source # mappend :: Maybe a -> Maybe a -> Maybe a Source # mconcat :: [Maybe a] -> Maybe a Source #
Semigroup a => Semigroup (Maybe a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: Maybe a -> Maybe a -> Maybe a Source # sconcat :: NonEmpty (Maybe a) -> Maybe a Source # stimes :: Integral b => b -> Maybe a -> Maybe a Source #
Generic (Maybe a) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Maybe a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Maybe a) = D1 ('MetaData "Maybe" "GHC.Internal.Maybe" "ghc-internal" 'False) (C1 ('MetaCons "Nothing" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Just" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Maybe a -> Rep (Maybe a) x Source #

to :: Rep (Maybe a) x -> Maybe a Source #

SingKind a => SingKind (Maybe a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Associated Types

type DemoteRep (Maybe a) |
Instance details Defined in GHC.Internal.Generics type DemoteRep (Maybe a) = Maybe (DemoteRep a)

Methods

fromSing :: forall (a0 :: Maybe a). Sing a0 -> DemoteRep (Maybe a)

Read a => Read (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (Maybe a) Source # readList :: ReadS [Maybe a] Source # readPrec :: ReadPrec (Maybe a) Source # readListPrec :: ReadPrec [Maybe a] Source #
Show a => Show (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Maybe a -> ShowS Source # show :: Maybe a -> String Source # showList :: [Maybe a] -> ShowS Source #
Eq a => Eq (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Maybe Methods (==) :: Maybe a -> Maybe a -> Bool Source # (/=) :: Maybe a -> Maybe a -> Bool Source #
Ord a => Ord (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Maybe Methods compare :: Maybe a -> Maybe a -> Ordering Source # (<) :: Maybe a -> Maybe a -> Bool Source # (<=) :: Maybe a -> Maybe a -> Bool Source # (>) :: Maybe a -> Maybe a -> Bool Source # (>=) :: Maybe a -> Maybe a -> Bool Source # max :: Maybe a -> Maybe a -> Maybe a Source # min :: Maybe a -> Maybe a -> Maybe a Source #
Hashable a => Hashable (Maybe a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Maybe a -> Int Source # hash :: Maybe a -> Int Source #
MonoFoldable (Maybe a) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (Maybe a) -> m) -> Maybe a -> m Source #

ofoldr :: (Element (Maybe a) -> b -> b) -> b -> Maybe a -> b Source #

ofoldl' :: (a0 -> Element (Maybe a) -> a0) -> a0 -> Maybe a -> a0 Source #

otoList :: Maybe a -> [Element (Maybe a)] Source #

oall :: (Element (Maybe a) -> Bool) -> Maybe a -> Bool Source #

oany :: (Element (Maybe a) -> Bool) -> Maybe a -> Bool Source #

onull :: Maybe a -> Bool Source #

olength :: Maybe a -> Int Source #

olength64 :: Maybe a -> Int64 Source #

ocompareLength :: Integral i => Maybe a -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (Maybe a) -> f b) -> Maybe a -> f () Source #

ofor_ :: Applicative f => Maybe a -> (Element (Maybe a) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (Maybe a) -> m ()) -> Maybe a -> m () Source #

oforM_ :: Applicative m => Maybe a -> (Element (Maybe a) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a0 -> Element (Maybe a) -> m a0) -> a0 -> Maybe a -> m a0 Source #

ofoldMap1Ex :: Semigroup m => (Element (Maybe a) -> m) -> Maybe a -> m Source #

ofoldr1Ex :: (Element (Maybe a) -> Element (Maybe a) -> Element (Maybe a)) -> Maybe a -> Element (Maybe a) Source #

ofoldl1Ex' :: (Element (Maybe a) -> Element (Maybe a) -> Element (Maybe a)) -> Maybe a -> Element (Maybe a) Source #

headEx :: Maybe a -> Element (Maybe a) Source #

lastEx :: Maybe a -> Element (Maybe a) Source #

unsafeHead :: Maybe a -> Element (Maybe a) Source #

unsafeLast :: Maybe a -> Element (Maybe a) Source #

maximumByEx :: (Element (Maybe a) -> Element (Maybe a) -> Ordering) -> Maybe a -> Element (Maybe a) Source #

minimumByEx :: (Element (Maybe a) -> Element (Maybe a) -> Ordering) -> Maybe a -> Element (Maybe a) Source #

oelem :: Element (Maybe a) -> Maybe a -> Bool Source #

onotElem :: Element (Maybe a) -> Maybe a -> Bool Source #

MonoFunctor (Maybe a) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (Maybe a) -> Element (Maybe a)) -> Maybe a -> Maybe a Source #
MonoPointed (Maybe a) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (Maybe a) -> Maybe a Source #
MonoTraversable (Maybe a) |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element (Maybe a) -> f (Element (Maybe a))) -> Maybe a -> f (Maybe a) Source # omapM :: Applicative m => (Element (Maybe a) -> m (Element (Maybe a))) -> Maybe a -> m (Maybe a) Source #
SingI ('Nothing :: Maybe a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods sing :: Sing ('Nothing :: Maybe a)
SingI a2 => SingI ('Just a2 :: Maybe a1) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods sing :: Sing ('Just a2)
type Key Maybe |
Instance details Defined in Data.Key type Key Maybe = ()
type Rep1 Maybe | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 Maybe = D1 ('MetaData "Maybe" "GHC.Internal.Maybe" "ghc-internal" 'False) (C1 ('MetaCons "Nothing" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Just" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))
type DemoteRep (Maybe a) |
Instance details Defined in GHC.Internal.Generics type DemoteRep (Maybe a) = Maybe (DemoteRep a)
type Rep (Maybe a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Maybe a) = D1 ('MetaData "Maybe" "GHC.Internal.Maybe" "ghc-internal" 'False) (C1 ('MetaCons "Nothing" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Just" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))
data Sing (b :: Maybe a) |

Instance details

Defined in GHC.Internal.Generics

data Sing (b :: Maybe a) where

- SNothing :: forall {a}. Sing ('Nothing :: Maybe a)
- SJust :: forall {a} (a1 :: a). Sing a1 -> Sing ('Just a1)

type Element (Maybe a) |
Instance details Defined in Data.MonoTraversable type Element (Maybe a) = a

data IO a Source #

A value of type ``IO` a` is a computation which, when performed, does some I/O before returning a value of type `a`.

There is really only one way to "perform" an I/O action: bind it to `Main.main` in your program. When your program is run, the I/O will be performed. It isn't possible to perform I/O from an arbitrary function, unless that function is itself in the `IO` monad and called at some point, directly or indirectly, from `Main.main`.

`IO` is a monad, so `IO` actions can be combined using either the do-notation or the `>>` and `>>=` operations from the `Monad` class.

#### Instances

Instances details

MonadIO IO | Since: base-4.9.0.0
Instance details Defined in Control.Monad.IO.Class Methods liftIO :: IO a -> IO a Source #
MonadCatch IO |
Instance details Defined in Control.Monad.Catch Methods catch :: (HasCallStack, Exception e) => IO a -> (e -> IO a) -> IO a Source #
MonadMask IO |
Instance details Defined in Control.Monad.Catch Methods mask :: HasCallStack => ((forall a. IO a -> IO a) -> IO b) -> IO b Source # uninterruptibleMask :: HasCallStack => ((forall a. IO a -> IO a) -> IO b) -> IO b Source # generalBracket :: HasCallStack => IO a -> (a -> ExitCase b -> IO c) -> (a -> IO b) -> IO (b, c) Source #
MonadThrow IO |
Instance details Defined in Control.Monad.Catch Methods throwM :: (HasCallStack, Exception e) => e -> IO a Source #
Alternative IO | Takes the first non-throwing `IO` action's result. `empty` throws an exception. Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods empty :: IO a Source # (<|>) :: IO a -> IO a -> IO a Source # some :: IO a -> IO [a] Source # many :: IO a -> IO [a] Source #
Applicative IO | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods pure :: a -> IO a Source # (<*>) :: IO (a -> b) -> IO a -> IO b Source # liftA2 :: (a -> b -> c) -> IO a -> IO b -> IO c Source # (*>) :: IO a -> IO b -> IO b Source # (<*) :: IO a -> IO b -> IO a Source #
Functor IO | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> IO a -> IO b Source # (<$) :: a -> IO b -> IO a Source #
Monad IO | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods (>>=) :: IO a -> (a -> IO b) -> IO b Source # (>>) :: IO a -> IO b -> IO b Source # return :: a -> IO a Source #
MonadPlus IO | Takes the first non-throwing `IO` action's result. `mzero` throws an exception. Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods mzero :: IO a Source # mplus :: IO a -> IO a -> IO a Source #
MonadFail IO | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Control.Monad.Fail Methods fail :: String -> IO a Source #
PrimBase IO |
Instance details Defined in Control.Monad.Primitive Methods internal :: IO a -> State# (PrimState IO) -> (# State# (PrimState IO), a #) Source #
PrimMonad IO |

Instance details

Defined in Control.Monad.Primitive

Associated Types

type PrimState IO |
Instance details Defined in Control.Monad.Primitive type PrimState IO = RealWorld

Methods

primitive :: (State# (PrimState IO) -> (# State# (PrimState IO), a #)) -> IO a Source #

MonadUnliftIO IO |
Instance details Defined in Control.Monad.IO.Unlift Methods withRunInIO :: ((forall a. IO a -> IO a) -> IO b) -> IO b
MonadError IOException IO |
Instance details Defined in Control.Monad.Error.Class Methods throwError :: IOException -> IO a Source # catchError :: IO a -> (IOException -> IO a) -> IO a Source #
MArray TArray e IO | Writes are slow in `IO`.

Instance details

Defined in Control.Concurrent.STM.TArray

Methods

getBounds :: Ix i => TArray i e -> IO (i, i) Source #

getNumElements :: Ix i => TArray i e -> IO Int Source #

newArray :: Ix i => (i, i) -> e -> IO (TArray i e) Source #

newArray_ :: Ix i => (i, i) -> IO (TArray i e) Source #

unsafeNewArray_ :: Ix i => (i, i) -> IO (TArray i e) Source #

unsafeRead :: Ix i => TArray i e -> Int -> IO e Source #

unsafeWrite :: Ix i => TArray i e -> Int -> e -> IO () Source #

a ~ () => HPrintfType (IO a) | Since: base-4.7.0.0
Instance details Defined in Text.Printf Methods hspr :: Handle -> String -> [UPrintf] -> IO a
a ~ () => PrintfType (IO a) | Since: base-4.7.0.0
Instance details Defined in Text.Printf Methods spr :: String -> [UPrintf] -> IO a
Monoid a => Monoid (IO a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods mempty :: IO a Source # mappend :: IO a -> IO a -> IO a Source # mconcat :: [IO a] -> IO a Source #
Semigroup a => Semigroup (IO a) | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: IO a -> IO a -> IO a Source # sconcat :: NonEmpty (IO a) -> IO a Source # stimes :: Integral b => b -> IO a -> IO a Source #
MonoFunctor (IO a) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (IO a) -> Element (IO a)) -> IO a -> IO a Source #
MonoPointed (IO a) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (IO a) -> IO a Source #
type PrimState IO |
Instance details Defined in Control.Monad.Primitive type PrimState IO = RealWorld
type Element (IO a) |
Instance details Defined in Data.MonoTraversable type Element (IO a) = a

data Word8 Source #

8-bit unsigned integer type

#### Instances

Instances details

PrintfArg Word8 | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Word8 -> FieldFormatter Source # parseFormat :: Word8 -> ModifierParser Source #
NFData Word8 |
Instance details Defined in Control.DeepSeq Methods rnf :: Word8 -> () Source #
Bits Word8 | Since: base-2.1

Instance details

Defined in GHC.Internal.Word

Methods

(.&.) :: Word8 -> Word8 -> Word8 Source #

(.|.) :: Word8 -> Word8 -> Word8 Source #

xor :: Word8 -> Word8 -> Word8 Source #

complement :: Word8 -> Word8 Source #

shift :: Word8 -> Int -> Word8 Source #

rotate :: Word8 -> Int -> Word8 Source #

zeroBits :: Word8 Source #

bit :: Int -> Word8 Source #

setBit :: Word8 -> Int -> Word8 Source #

clearBit :: Word8 -> Int -> Word8 Source #

complementBit :: Word8 -> Int -> Word8 Source #

testBit :: Word8 -> Int -> Bool Source #

bitSizeMaybe :: Word8 -> Maybe Int Source #

bitSize :: Word8 -> Int Source #

isSigned :: Word8 -> Bool Source #

shiftL :: Word8 -> Int -> Word8 Source #

unsafeShiftL :: Word8 -> Int -> Word8 Source #

shiftR :: Word8 -> Int -> Word8 Source #

unsafeShiftR :: Word8 -> Int -> Word8 Source #

rotateL :: Word8 -> Int -> Word8 Source #

rotateR :: Word8 -> Int -> Word8 Source #

popCount :: Word8 -> Int Source #

FiniteBits Word8 | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Word Methods finiteBitSize :: Word8 -> Int Source # countLeadingZeros :: Word8 -> Int Source # countTrailingZeros :: Word8 -> Int Source #
Bounded Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods minBound :: Word8 Source # maxBound :: Word8 Source #
Enum Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods succ :: Word8 -> Word8 Source # pred :: Word8 -> Word8 Source # toEnum :: Int -> Word8 Source # fromEnum :: Word8 -> Int Source # enumFrom :: Word8 -> [Word8] Source # enumFromThen :: Word8 -> Word8 -> [Word8] Source # enumFromTo :: Word8 -> Word8 -> [Word8] Source # enumFromThenTo :: Word8 -> Word8 -> Word8 -> [Word8] Source #
Storable Word8 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word8 -> Int Source #

alignment :: Word8 -> Int Source #

peekElemOff :: Ptr Word8 -> Int -> IO Word8 Source #

pokeElemOff :: Ptr Word8 -> Int -> Word8 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word8 Source #

pokeByteOff :: Ptr b -> Int -> Word8 -> IO () Source #

peek :: Ptr Word8 -> IO Word8 Source #

poke :: Ptr Word8 -> Word8 -> IO () Source #

Ix Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods range :: (Word8, Word8) -> [Word8] Source # index :: (Word8, Word8) -> Word8 -> Int Source # unsafeIndex :: (Word8, Word8) -> Word8 -> Int Source # inRange :: (Word8, Word8) -> Word8 -> Bool Source # rangeSize :: (Word8, Word8) -> Int Source # unsafeRangeSize :: (Word8, Word8) -> Int Source #
Num Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (+) :: Word8 -> Word8 -> Word8 Source # (-) :: Word8 -> Word8 -> Word8 Source # (*) :: Word8 -> Word8 -> Word8 Source # negate :: Word8 -> Word8 Source # abs :: Word8 -> Word8 Source # signum :: Word8 -> Word8 Source # fromInteger :: Integer -> Word8 Source #
Read Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word8 Source # readList :: ReadS [Word8] Source # readPrec :: ReadPrec Word8 Source # readListPrec :: ReadPrec [Word8] Source #
Integral Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods quot :: Word8 -> Word8 -> Word8 Source # rem :: Word8 -> Word8 -> Word8 Source # div :: Word8 -> Word8 -> Word8 Source # mod :: Word8 -> Word8 -> Word8 Source # quotRem :: Word8 -> Word8 -> (Word8, Word8) Source # divMod :: Word8 -> Word8 -> (Word8, Word8) Source # toInteger :: Word8 -> Integer Source #
Real Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods toRational :: Word8 -> Rational Source #
Show Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word8 -> ShowS Source # show :: Word8 -> String Source # showList :: [Word8] -> ShowS Source #
Eq Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (==) :: Word8 -> Word8 -> Bool Source # (/=) :: Word8 -> Word8 -> Bool Source #
Ord Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods compare :: Word8 -> Word8 -> Ordering Source # (<) :: Word8 -> Word8 -> Bool Source # (<=) :: Word8 -> Word8 -> Bool Source # (>) :: Word8 -> Word8 -> Bool Source # (>=) :: Word8 -> Word8 -> Bool Source # max :: Word8 -> Word8 -> Word8 Source # min :: Word8 -> Word8 -> Word8 Source #
Hashable Word8 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word8 -> Int Source # hash :: Word8 -> Int Source #
Prim Word8 |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Word8 -> Int# Source #

sizeOf# :: Word8 -> Int# Source #

alignmentOfType# :: Proxy Word8 -> Int# Source #

alignment# :: Word8 -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Word8 Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Word8 #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Word8 -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word8 -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Word8 Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Word8 #) Source #

writeOffAddr# :: Addr# -> Int# -> Word8 -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Word8 -> State# s -> State# s Source #

Unbox Word8 |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Word8 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word8 -> ST s (Vector Word8)

basicUnsafeThaw :: Vector Word8 -> ST s (Mutable Vector s Word8)

basicLength :: Vector Word8 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word8 -> Vector Word8

basicUnsafeIndexM :: Vector Word8 -> Int -> Box Word8

basicUnsafeCopy :: Mutable Vector s Word8 -> Vector Word8 -> ST s ()

elemseq :: Vector Word8 -> Word8 -> b -> b

MVector MVector Word8 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word8 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word8 -> MVector s Word8

basicOverlaps :: MVector s Word8 -> MVector s Word8 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word8)

basicInitialize :: MVector s Word8 -> ST s ()

basicUnsafeReplicate :: Int -> Word8 -> ST s (MVector s Word8)

basicUnsafeRead :: MVector s Word8 -> Int -> ST s Word8

basicUnsafeWrite :: MVector s Word8 -> Int -> Word8 -> ST s ()

basicClear :: MVector s Word8 -> ST s ()

basicSet :: MVector s Word8 -> Word8 -> ST s ()

basicUnsafeCopy :: MVector s Word8 -> MVector s Word8 -> ST s ()

basicUnsafeMove :: MVector s Word8 -> MVector s Word8 -> ST s ()

basicUnsafeGrow :: MVector s Word8 -> Int -> ST s (MVector s Word8)

newtype Vector Word8 |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Word8 = V_Word8 (Vector Word8)
newtype MVector s Word8 |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Word8 = MV_Word8 (MVector s Word8)

data Bool Source #

Constructors

False |
True |

#### Instances

Instances details

NFData Bool |
Instance details Defined in Control.DeepSeq Methods rnf :: Bool -> () Source #
Bounded Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Bool Source # maxBound :: Bool Source #
Enum Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: Bool -> Bool Source # pred :: Bool -> Bool Source # toEnum :: Int -> Bool Source # fromEnum :: Bool -> Int Source # enumFrom :: Bool -> [Bool] Source # enumFromThen :: Bool -> Bool -> [Bool] Source # enumFromTo :: Bool -> Bool -> [Bool] Source # enumFromThenTo :: Bool -> Bool -> Bool -> [Bool] Source #
Storable Bool | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Bool -> Int Source #

alignment :: Bool -> Int Source #

peekElemOff :: Ptr Bool -> Int -> IO Bool Source #

pokeElemOff :: Ptr Bool -> Int -> Bool -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Bool Source #

pokeByteOff :: Ptr b -> Int -> Bool -> IO () Source #

peek :: Ptr Bool -> IO Bool Source #

poke :: Ptr Bool -> Bool -> IO () Source #

Generic Bool |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep Bool | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep Bool = D1 ('MetaData "Bool" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "False" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "True" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: Bool -> Rep Bool x Source #

to :: Rep Bool x -> Bool Source #

SingKind Bool | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Associated Types

type DemoteRep Bool |
Instance details Defined in GHC.Internal.Generics type DemoteRep Bool = Bool

Methods

fromSing :: forall (a :: Bool). Sing a -> DemoteRep Bool

Read Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Bool Source # readList :: ReadS [Bool] Source # readPrec :: ReadPrec Bool Source # readListPrec :: ReadPrec [Bool] Source #
Show Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Bool -> ShowS Source # show :: Bool -> String Source # showList :: [Bool] -> ShowS Source #
Eq Bool |
Instance details Defined in GHC.Classes Methods (==) :: Bool -> Bool -> Bool Source # (/=) :: Bool -> Bool -> Bool Source #
Ord Bool |
Instance details Defined in GHC.Classes Methods compare :: Bool -> Bool -> Ordering Source # (<) :: Bool -> Bool -> Bool Source # (<=) :: Bool -> Bool -> Bool Source # (>) :: Bool -> Bool -> Bool Source # (>=) :: Bool -> Bool -> Bool Source # max :: Bool -> Bool -> Bool Source # min :: Bool -> Bool -> Bool Source #
Hashable Bool |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Bool -> Int Source # hash :: Bool -> Int Source #
Unbox Bool |
Instance details Defined in Data.Vector.Unboxed.Base
SingI 'False | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods sing :: Sing 'False
SingI 'True | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods sing :: Sing 'True
Vector Vector Bool |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Bool -> ST s (Vector Bool)

basicUnsafeThaw :: Vector Bool -> ST s (Mutable Vector s Bool)

basicLength :: Vector Bool -> Int

basicUnsafeSlice :: Int -> Int -> Vector Bool -> Vector Bool

basicUnsafeIndexM :: Vector Bool -> Int -> Box Bool

basicUnsafeCopy :: Mutable Vector s Bool -> Vector Bool -> ST s ()

elemseq :: Vector Bool -> Bool -> b -> b

MVector MVector Bool |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Bool -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Bool -> MVector s Bool

basicOverlaps :: MVector s Bool -> MVector s Bool -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Bool)

basicInitialize :: MVector s Bool -> ST s ()

basicUnsafeReplicate :: Int -> Bool -> ST s (MVector s Bool)

basicUnsafeRead :: MVector s Bool -> Int -> ST s Bool

basicUnsafeWrite :: MVector s Bool -> Int -> Bool -> ST s ()

basicClear :: MVector s Bool -> ST s ()

basicSet :: MVector s Bool -> Bool -> ST s ()

basicUnsafeCopy :: MVector s Bool -> MVector s Bool -> ST s ()

basicUnsafeMove :: MVector s Bool -> MVector s Bool -> ST s ()

basicUnsafeGrow :: MVector s Bool -> Int -> ST s (MVector s Bool)

type DemoteRep Bool |
Instance details Defined in GHC.Internal.Generics type DemoteRep Bool = Bool
type Rep Bool | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep Bool = D1 ('MetaData "Bool" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "False" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "True" 'PrefixI 'False) (U1 :: Type -> Type))
data Sing (a :: Bool) |

Instance details

Defined in GHC.Internal.Generics

data Sing (a :: Bool) where

- STrue :: Sing 'True
- SFalse :: Sing 'False

newtype Vector Bool |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Bool = V_Bool (Vector Word8)
newtype MVector s Bool |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Bool = MV_Bool (MVector s Word8)

data Double Source #

Double-precision floating point numbers. It is desirable that this type be at least equal in range and precision to the IEEE double-precision type.

#### Instances

Instances details

PrintfArg Double | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Double -> FieldFormatter Source # parseFormat :: Double -> ModifierParser Source #
NFData Double |
Instance details Defined in Control.DeepSeq Methods rnf :: Double -> () Source #

Enum Double

`fromEnum` just truncates its argument, beware of all sorts of overflows.

List generators have extremely peculiar behavior, mandated by Haskell Report 2010:

    >>> [0..1.5]
    [0.0,1.0,2.0]

Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

succ :: Double -> Double Source #

pred :: Double -> Double Source #

toEnum :: Int -> Double Source #

fromEnum :: Double -> Int Source #

enumFrom :: Double -> [Double] Source #

enumFromThen :: Double -> Double -> [Double] Source #

enumFromTo :: Double -> Double -> [Double] Source #

enumFromThenTo :: Double -> Double -> Double -> [Double] Source #

Floating Double | Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

pi :: Double Source #

exp :: Double -> Double Source #

log :: Double -> Double Source #

sqrt :: Double -> Double Source #

(**) :: Double -> Double -> Double Source #

logBase :: Double -> Double -> Double Source #

sin :: Double -> Double Source #

cos :: Double -> Double Source #

tan :: Double -> Double Source #

asin :: Double -> Double Source #

acos :: Double -> Double Source #

atan :: Double -> Double Source #

sinh :: Double -> Double Source #

cosh :: Double -> Double Source #

tanh :: Double -> Double Source #

asinh :: Double -> Double Source #

acosh :: Double -> Double Source #

atanh :: Double -> Double Source #

log1p :: Double -> Double Source #

expm1 :: Double -> Double Source #

log1pexp :: Double -> Double Source #

log1mexp :: Double -> Double Source #

RealFloat Double | Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

floatRadix :: Double -> Integer Source #

floatDigits :: Double -> Int Source #

floatRange :: Double -> (Int, Int) Source #

decodeFloat :: Double -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Double Source #

exponent :: Double -> Int Source #

significand :: Double -> Double Source #

scaleFloat :: Int -> Double -> Double Source #

isNaN :: Double -> Bool Source #

isInfinite :: Double -> Bool Source #

isDenormalized :: Double -> Bool Source #

isNegativeZero :: Double -> Bool Source #

isIEEE :: Double -> Bool Source #

atan2 :: Double -> Double -> Double Source #

Storable Double | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Double -> Int Source #

alignment :: Double -> Int Source #

peekElemOff :: Ptr Double -> Int -> IO Double Source #

pokeElemOff :: Ptr Double -> Int -> Double -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Double Source #

pokeByteOff :: Ptr b -> Int -> Double -> IO () Source #

peek :: Ptr Double -> IO Double Source #

poke :: Ptr Double -> Double -> IO () Source #

Num Double

This instance implements IEEE 754 standard with all its usual pitfalls about NaN, infinities and negative zero. Neither addition nor multiplication are associative or distributive:

    >>> (0.1 + 0.1) + 0.4 == 0.1 + (0.1 + 0.4)
    False
    >>> (0.1 + 0.2) * 0.3 == 0.1 * 0.3 + 0.2 * 0.3
    False
    >>> (0.1 * 0.1) * 0.3 == 0.1 * (0.1 * 0.3)
    False

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods (+) :: Double -> Double -> Double Source # (-) :: Double -> Double -> Double Source # (*) :: Double -> Double -> Double Source # negate :: Double -> Double Source # abs :: Double -> Double Source # signum :: Double -> Double Source # fromInteger :: Integer -> Double Source #
Read Double | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Double Source # readList :: ReadS [Double] Source # readPrec :: ReadPrec Double Source # readListPrec :: ReadPrec [Double] Source #

Fractional Double

This instance implements IEEE 754 standard with all its usual pitfalls about NaN, infinities and negative zero.

    >>> 0 == (-0 :: Double)
    True
    >>> recip 0 == recip (-0 :: Double)
    False
    >>> map (/ 0) [-1, 0, 1]
    [-Infinity,NaN,Infinity]
    >>> map (* 0) $ map (/ 0) [-1, 0, 1]
    [NaN,NaN,NaN]

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods (/) :: Double -> Double -> Double Source # recip :: Double -> Double Source # fromRational :: Rational -> Double Source #

Real Double

Beware that `toRational` generates garbage for non-finite arguments:

    >>> toRational (1/0)
    179769313 (and 300 more digits...) % 1
    >>> toRational (0/0)
    269653970 (and 300 more digits...) % 1

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods toRational :: Double -> Rational Source #

RealFrac Double

Beware that results for non-finite arguments are garbage:

    >>> [ f x | f <- [round, floor, ceiling], x <- [-1/0, 0/0, 1/0] ] :: [Int]
    [0,0,0,0,0,0,0,0,0]
    >>> map properFraction [-1/0, 0/0, 1/0] :: [(Int, Double)]
    [(0,0.0),(0,0.0),(0,0.0)]

and get even more non-sensical if you ask for `Integer` instead of `Int`.

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods properFraction :: Integral b => Double -> (b, Double) Source # truncate :: Integral b => Double -> b Source # round :: Integral b => Double -> b Source # ceiling :: Integral b => Double -> b Source # floor :: Integral b => Double -> b Source #
Show Double | Since: base-2.1
Instance details Defined in GHC.Internal.Float Methods showsPrec :: Int -> Double -> ShowS Source # show :: Double -> String Source # showList :: [Double] -> ShowS Source #

Eq Double

Note that due to the presence of `NaN`, `Double`'s `Eq` instance does not satisfy reflexivity.

    >>> 0/0 == (0/0 :: Double)
    False

Also note that `Double`'s `Eq` instance does not satisfy substitutivity:

    >>> 0 == (-0 :: Double)
    True
    >>> recip 0 == recip (-0 :: Double)
    False

Instance details Defined in GHC.Classes Methods (==) :: Double -> Double -> Bool Source # (/=) :: Double -> Double -> Bool Source #

Ord Double

IEEE 754 `Double`-precision type includes not only numbers, but also positive and negative infinities and a special element called `NaN` (which can be quiet or signal).

IEEE 754-2008, section 5.11 requires that if at least one of arguments of `<=`, `<`, `>`, `>=` is `NaN` then the result of the comparison is `False`, and `instance` `Ord` `Double` complies with this requirement. This violates the reflexivity: both `NaN` `<=` `NaN` and `NaN` `>=` `NaN` are `False`.

IEEE 754-2008, section 5.10 defines `totalOrder` predicate. Unfortunately, `compare` on `Double`s violates the IEEE standard and does not define a total order. More specifically, both `compare` `NaN` `x` and `compare` `x` `NaN` always return `GT`.

Thus, users must be extremely cautious when using `instance` `Ord` `Double`. For instance, one should avoid ordered containers with keys represented by `Double`, because data loss and corruption may happen. An IEEE-compliant `compare` is available in `fp-ieee` package as `TotallyOrdered` newtype.

Moving further, the behaviour of `min` and `max` with regards to `NaN` is also non-compliant. IEEE 754-2008, section 5.3.1 defines that quiet `NaN` should be treated as a missing data by `minNum` and `maxNum` functions, for example, `minNum(NaN, 1) = minNum(1, NaN) = 1`. Some languages such as Java deviate from the standard implementing `minNum(NaN, 1) = minNum(1, NaN) = NaN`. However, `min` / `max` in `base` are even worse: `min` `NaN` 1 is 1, but `min` 1 `NaN` is `NaN`.

IEEE 754-2008 compliant `min` / `max` can be found in `ieee754` package under `minNum` / `maxNum` names. Implementations compliant with `minimumNumber` / `maximumNumber` from a newer IEEE 754-2019, section 9.6 are available from `fp-ieee` package.

Instance details Defined in GHC.Classes Methods compare :: Double -> Double -> Ordering Source # (<) :: Double -> Double -> Bool Source # (<=) :: Double -> Double -> Bool Source # (>) :: Double -> Double -> Bool Source # (>=) :: Double -> Double -> Bool Source # max :: Double -> Double -> Double Source # min :: Double -> Double -> Double Source #
Hashable Double | Note: prior to `hashable-1.3.0.0`, `hash 0.0 /= hash (-0.0)` The `hash` of NaN is not well defined. Since: hashable-1.3.0.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Double -> Int Source # hash :: Double -> Int Source #
Prim Double |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Double -> Int# Source #

sizeOf# :: Double -> Int# Source #

alignmentOfType# :: Proxy Double -> Int# Source #

alignment# :: Double -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Double Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Double #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Double -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Double -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Double Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Double #) Source #

writeOffAddr# :: Addr# -> Int# -> Double -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Double -> State# s -> State# s Source #

Unbox Double |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Double |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Double -> ST s (Vector Double)

basicUnsafeThaw :: Vector Double -> ST s (Mutable Vector s Double)

basicLength :: Vector Double -> Int

basicUnsafeSlice :: Int -> Int -> Vector Double -> Vector Double

basicUnsafeIndexM :: Vector Double -> Int -> Box Double

basicUnsafeCopy :: Mutable Vector s Double -> Vector Double -> ST s ()

elemseq :: Vector Double -> Double -> b -> b

MVector MVector Double |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Double -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Double -> MVector s Double

basicOverlaps :: MVector s Double -> MVector s Double -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Double)

basicInitialize :: MVector s Double -> ST s ()

basicUnsafeReplicate :: Int -> Double -> ST s (MVector s Double)

basicUnsafeRead :: MVector s Double -> Int -> ST s Double

basicUnsafeWrite :: MVector s Double -> Int -> Double -> ST s ()

basicClear :: MVector s Double -> ST s ()

basicSet :: MVector s Double -> Double -> ST s ()

basicUnsafeCopy :: MVector s Double -> MVector s Double -> ST s ()

basicUnsafeMove :: MVector s Double -> MVector s Double -> ST s ()

basicUnsafeGrow :: MVector s Double -> Int -> ST s (MVector s Double)

Generic1 (URec Double :: k -> Type) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep1 (URec Double :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Double :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UDouble" 'PrefixI 'True) (S1 ('MetaSel ('Just "uDouble#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UDouble :: k -> Type)))

Methods

from1 :: forall (a :: k). URec Double a -> Rep1 (URec Double :: k -> Type) a Source #

to1 :: forall (a :: k). Rep1 (URec Double :: k -> Type) a -> URec Double a Source #

Eq1 (UDouble :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftEq :: (a -> b -> Bool) -> UDouble a -> UDouble b -> Bool Source #
Ord1 (UDouble :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftCompare :: (a -> b -> Ordering) -> UDouble a -> UDouble b -> Ordering Source #
Show1 (UDouble :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> UDouble a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [UDouble a] -> ShowS Source #
Foldable (UDouble :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UDouble m -> m Source #

foldMap :: Monoid m => (a -> m) -> UDouble a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UDouble a -> m Source #

foldr :: (a -> b -> b) -> b -> UDouble a -> b Source #

foldr' :: (a -> b -> b) -> b -> UDouble a -> b Source #

foldl :: (b -> a -> b) -> b -> UDouble a -> b Source #

foldl' :: (b -> a -> b) -> b -> UDouble a -> b Source #

foldr1 :: (a -> a -> a) -> UDouble a -> a Source #

foldl1 :: (a -> a -> a) -> UDouble a -> a Source #

toList :: UDouble a -> [a] Source #

null :: UDouble a -> Bool Source #

length :: UDouble a -> Int Source #

elem :: Eq a => a -> UDouble a -> Bool Source #

maximum :: Ord a => UDouble a -> a Source #

minimum :: Ord a => UDouble a -> a Source #

sum :: Num a => UDouble a -> a Source #

product :: Num a => UDouble a -> a Source #

Traversable (UDouble :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UDouble a -> f (UDouble b) Source # sequenceA :: Applicative f => UDouble (f a) -> f (UDouble a) Source # mapM :: Monad m => (a -> m b) -> UDouble a -> m (UDouble b) Source # sequence :: Monad m => UDouble (m a) -> m (UDouble a) Source #
Functor (URec Double :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Double a -> URec Double b Source # (<$) :: a -> URec Double b -> URec Double a Source #
Generic (URec Double p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Double p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Double p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UDouble" 'PrefixI 'True) (S1 ('MetaSel ('Just "uDouble#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UDouble :: Type -> Type)))

Methods

from :: URec Double p -> Rep (URec Double p) x Source #

to :: Rep (URec Double p) x -> URec Double p Source #

Show (URec Double p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Double p -> ShowS Source # show :: URec Double p -> String Source # showList :: [URec Double p] -> ShowS Source #
Eq (URec Double p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Double p -> URec Double p -> Bool Source # (/=) :: URec Double p -> URec Double p -> Bool Source #
Ord (URec Double p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Double p -> URec Double p -> Ordering Source #

(<) :: URec Double p -> URec Double p -> Bool Source #

(<=) :: URec Double p -> URec Double p -> Bool Source #

(>) :: URec Double p -> URec Double p -> Bool Source #

(>=) :: URec Double p -> URec Double p -> Bool Source #

max :: URec Double p -> URec Double p -> URec Double p Source #

min :: URec Double p -> URec Double p -> URec Double p Source #

newtype Vector Double |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Double = V_Double (Vector Double)
data URec Double (p :: k) | Used for marking occurrences of `Double#` Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

data URec Double (p :: k) = UDouble {

- uDouble# :: Double#

}

newtype MVector s Double |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Double = MV_Double (MVector s Double)
type Rep1 (URec Double :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Double :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UDouble" 'PrefixI 'True) (S1 ('MetaSel ('Just "uDouble#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UDouble :: k -> Type)))
type Rep (URec Double p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Double p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UDouble" 'PrefixI 'True) (S1 ('MetaSel ('Just "uDouble#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UDouble :: Type -> Type)))

data Word Source #

A `Word` is an unsigned integral type, with the same size as `Int`.

#### Instances

Instances details

PrintfArg Word | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Word -> FieldFormatter Source # parseFormat :: Word -> ModifierParser Source #
NFData Word |
Instance details Defined in Control.DeepSeq Methods rnf :: Word -> () Source #
Bounded Word | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Word Source # maxBound :: Word Source #
Enum Word | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: Word -> Word Source # pred :: Word -> Word Source # toEnum :: Int -> Word Source # fromEnum :: Word -> Int Source # enumFrom :: Word -> [Word] Source # enumFromThen :: Word -> Word -> [Word] Source # enumFromTo :: Word -> Word -> [Word] Source # enumFromThenTo :: Word -> Word -> Word -> [Word] Source #
Storable Word | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word -> Int Source #

alignment :: Word -> Int Source #

peekElemOff :: Ptr Word -> Int -> IO Word Source #

pokeElemOff :: Ptr Word -> Int -> Word -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word Source #

pokeByteOff :: Ptr b -> Int -> Word -> IO () Source #

peek :: Ptr Word -> IO Word Source #

poke :: Ptr Word -> Word -> IO () Source #

Num Word | Since: base-2.1
Instance details Defined in GHC.Internal.Num Methods (+) :: Word -> Word -> Word Source # (-) :: Word -> Word -> Word Source # (*) :: Word -> Word -> Word Source # negate :: Word -> Word Source # abs :: Word -> Word Source # signum :: Word -> Word Source # fromInteger :: Integer -> Word Source #
Read Word | Since: base-4.5.0.0
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word Source # readList :: ReadS [Word] Source # readPrec :: ReadPrec Word Source # readListPrec :: ReadPrec [Word] Source #
Integral Word | Since: base-2.1
Instance details Defined in GHC.Internal.Real Methods quot :: Word -> Word -> Word Source # rem :: Word -> Word -> Word Source # div :: Word -> Word -> Word Source # mod :: Word -> Word -> Word Source # quotRem :: Word -> Word -> (Word, Word) Source # divMod :: Word -> Word -> (Word, Word) Source # toInteger :: Word -> Integer Source #
Real Word | Since: base-2.1
Instance details Defined in GHC.Internal.Real Methods toRational :: Word -> Rational Source #
Show Word | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Word -> ShowS Source # show :: Word -> String Source # showList :: [Word] -> ShowS Source #
Eq Word |
Instance details Defined in GHC.Classes Methods (==) :: Word -> Word -> Bool Source # (/=) :: Word -> Word -> Bool Source #
Ord Word |
Instance details Defined in GHC.Classes Methods compare :: Word -> Word -> Ordering Source # (<) :: Word -> Word -> Bool Source # (<=) :: Word -> Word -> Bool Source # (>) :: Word -> Word -> Bool Source # (>=) :: Word -> Word -> Bool Source # max :: Word -> Word -> Word Source # min :: Word -> Word -> Word Source #
Hashable Word |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word -> Int Source # hash :: Word -> Int Source #
Prim Word |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Word -> Int# Source #

sizeOf# :: Word -> Int# Source #

alignmentOfType# :: Proxy Word -> Int# Source #

alignment# :: Word -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Word Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Word #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Word -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Word Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Word #) Source #

writeOffAddr# :: Addr# -> Int# -> Word -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Word -> State# s -> State# s Source #

Unbox Word |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Word |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word -> ST s (Vector Word)

basicUnsafeThaw :: Vector Word -> ST s (Mutable Vector s Word)

basicLength :: Vector Word -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word -> Vector Word

basicUnsafeIndexM :: Vector Word -> Int -> Box Word

basicUnsafeCopy :: Mutable Vector s Word -> Vector Word -> ST s ()

elemseq :: Vector Word -> Word -> b -> b

MVector MVector Word |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word -> MVector s Word

basicOverlaps :: MVector s Word -> MVector s Word -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word)

basicInitialize :: MVector s Word -> ST s ()

basicUnsafeReplicate :: Int -> Word -> ST s (MVector s Word)

basicUnsafeRead :: MVector s Word -> Int -> ST s Word

basicUnsafeWrite :: MVector s Word -> Int -> Word -> ST s ()

basicClear :: MVector s Word -> ST s ()

basicSet :: MVector s Word -> Word -> ST s ()

basicUnsafeCopy :: MVector s Word -> MVector s Word -> ST s ()

basicUnsafeMove :: MVector s Word -> MVector s Word -> ST s ()

basicUnsafeGrow :: MVector s Word -> Int -> ST s (MVector s Word)

Generic1 (URec Word :: k -> Type) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep1 (URec Word :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Word :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UWord" 'PrefixI 'True) (S1 ('MetaSel ('Just "uWord#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UWord :: k -> Type)))

Methods

from1 :: forall (a :: k). URec Word a -> Rep1 (URec Word :: k -> Type) a Source #

to1 :: forall (a :: k). Rep1 (URec Word :: k -> Type) a -> URec Word a Source #

Eq1 (UWord :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftEq :: (a -> b -> Bool) -> UWord a -> UWord b -> Bool Source #
Ord1 (UWord :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftCompare :: (a -> b -> Ordering) -> UWord a -> UWord b -> Ordering Source #
Show1 (UWord :: Type -> Type) |
Instance details Defined in Data.Orphans Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> UWord a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [UWord a] -> ShowS Source #
Foldable (UWord :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UWord m -> m Source #

foldMap :: Monoid m => (a -> m) -> UWord a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UWord a -> m Source #

foldr :: (a -> b -> b) -> b -> UWord a -> b Source #

foldr' :: (a -> b -> b) -> b -> UWord a -> b Source #

foldl :: (b -> a -> b) -> b -> UWord a -> b Source #

foldl' :: (b -> a -> b) -> b -> UWord a -> b Source #

foldr1 :: (a -> a -> a) -> UWord a -> a Source #

foldl1 :: (a -> a -> a) -> UWord a -> a Source #

toList :: UWord a -> [a] Source #

null :: UWord a -> Bool Source #

length :: UWord a -> Int Source #

elem :: Eq a => a -> UWord a -> Bool Source #

maximum :: Ord a => UWord a -> a Source #

minimum :: Ord a => UWord a -> a Source #

sum :: Num a => UWord a -> a Source #

product :: Num a => UWord a -> a Source #

Traversable (UWord :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UWord a -> f (UWord b) Source # sequenceA :: Applicative f => UWord (f a) -> f (UWord a) Source # mapM :: Monad m => (a -> m b) -> UWord a -> m (UWord b) Source # sequence :: Monad m => UWord (m a) -> m (UWord a) Source #
Functor (URec Word :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Word a -> URec Word b Source # (<$) :: a -> URec Word b -> URec Word a Source #
Generic (URec Word p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Word p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Word p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UWord" 'PrefixI 'True) (S1 ('MetaSel ('Just "uWord#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UWord :: Type -> Type)))

Methods

from :: URec Word p -> Rep (URec Word p) x Source #

to :: Rep (URec Word p) x -> URec Word p Source #

Show (URec Word p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Word p -> ShowS Source # show :: URec Word p -> String Source # showList :: [URec Word p] -> ShowS Source #
Eq (URec Word p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Word p -> URec Word p -> Bool Source # (/=) :: URec Word p -> URec Word p -> Bool Source #
Ord (URec Word p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Word p -> URec Word p -> Ordering Source #

(<) :: URec Word p -> URec Word p -> Bool Source #

(<=) :: URec Word p -> URec Word p -> Bool Source #

(>) :: URec Word p -> URec Word p -> Bool Source #

(>=) :: URec Word p -> URec Word p -> Bool Source #

max :: URec Word p -> URec Word p -> URec Word p Source #

min :: URec Word p -> URec Word p -> URec Word p Source #

newtype Vector Word |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Word = V_Word (Vector Word)
data URec Word (p :: k) | Used for marking occurrences of `Word#` Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

data URec Word (p :: k) = UWord {

- uWord# :: Word#

}

newtype MVector s Word |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Word = MV_Word (MVector s Word)
type Rep1 (URec Word :: k -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 (URec Word :: k -> Type) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UWord" 'PrefixI 'True) (S1 ('MetaSel ('Just "uWord#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UWord :: k -> Type)))
type Rep (URec Word p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Word p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UWord" 'PrefixI 'True) (S1 ('MetaSel ('Just "uWord#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UWord :: Type -> Type)))

data Ordering Source #

Constructors

LT |
EQ |
GT |

#### Instances

Instances details

NFData Ordering |
Instance details Defined in Control.DeepSeq Methods rnf :: Ordering -> () Source #
Monoid Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: Ordering Source # mappend :: Ordering -> Ordering -> Ordering Source # mconcat :: [Ordering] -> Ordering Source #
Semigroup Ordering | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: Ordering -> Ordering -> Ordering Source # sconcat :: NonEmpty Ordering -> Ordering Source # stimes :: Integral b => b -> Ordering -> Ordering Source #
Bounded Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Ordering Source # maxBound :: Ordering Source #
Enum Ordering | Since: base-2.1

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: Ordering -> Ordering Source #

pred :: Ordering -> Ordering Source #

toEnum :: Int -> Ordering Source #

fromEnum :: Ordering -> Int Source #

enumFrom :: Ordering -> [Ordering] Source #

enumFromThen :: Ordering -> Ordering -> [Ordering] Source #

enumFromTo :: Ordering -> Ordering -> [Ordering] Source #

enumFromThenTo :: Ordering -> Ordering -> Ordering -> [Ordering] Source #

Generic Ordering |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep Ordering | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep Ordering = D1 ('MetaData "Ordering" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "LT" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "EQ" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GT" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: Ordering -> Rep Ordering x Source #

to :: Rep Ordering x -> Ordering Source #

Read Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Ordering Source # readList :: ReadS [Ordering] Source # readPrec :: ReadPrec Ordering Source # readListPrec :: ReadPrec [Ordering] Source #
Show Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Ordering -> ShowS Source # show :: Ordering -> String Source # showList :: [Ordering] -> ShowS Source #
Eq Ordering |
Instance details Defined in GHC.Classes Methods (==) :: Ordering -> Ordering -> Bool Source # (/=) :: Ordering -> Ordering -> Bool Source #
Ord Ordering |
Instance details Defined in GHC.Classes Methods compare :: Ordering -> Ordering -> Ordering Source # (<) :: Ordering -> Ordering -> Bool Source # (<=) :: Ordering -> Ordering -> Bool Source # (>) :: Ordering -> Ordering -> Bool Source # (>=) :: Ordering -> Ordering -> Bool Source # max :: Ordering -> Ordering -> Ordering Source # min :: Ordering -> Ordering -> Ordering Source #
Hashable Ordering |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Ordering -> Int Source # hash :: Ordering -> Int Source #
type Rep Ordering | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep Ordering = D1 ('MetaData "Ordering" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "LT" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "EQ" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GT" 'PrefixI 'False) (U1 :: Type -> Type)))

data Integer Source #

Arbitrary precision integers. In contrast with fixed-size integral types such as `Int`, the `Integer` type represents the entire infinite range of integers.

Integers are stored in a kind of sign-magnitude form, hence do not expect two's complement form when using bit operations.

If the value is small (i.e., fits into an `Int`), the `IS` constructor is used. Otherwise `IP` and `IN` constructors are used to store a `BigNat` representing the positive or the negative value magnitude, respectively.

Invariant: `IP` and `IN` are used iff the value does not fit in `IS`.

#### Instances

Instances details

PrintfArg Integer | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Integer -> FieldFormatter Source # parseFormat :: Integer -> ModifierParser Source #
NFData Integer |
Instance details Defined in Control.DeepSeq Methods rnf :: Integer -> () Source #
Enum Integer | Since: base-2.1

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: Integer -> Integer Source #

pred :: Integer -> Integer Source #

toEnum :: Int -> Integer Source #

fromEnum :: Integer -> Int Source #

enumFrom :: Integer -> [Integer] Source #

enumFromThen :: Integer -> Integer -> [Integer] Source #

enumFromTo :: Integer -> Integer -> [Integer] Source #

enumFromThenTo :: Integer -> Integer -> Integer -> [Integer] Source #

Num Integer | Since: base-2.1
Instance details Defined in GHC.Internal.Num Methods (+) :: Integer -> Integer -> Integer Source # (-) :: Integer -> Integer -> Integer Source # (*) :: Integer -> Integer -> Integer Source # negate :: Integer -> Integer Source # abs :: Integer -> Integer Source # signum :: Integer -> Integer Source # fromInteger :: Integer -> Integer Source #
Read Integer | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Integer Source # readList :: ReadS [Integer] Source # readPrec :: ReadPrec Integer Source # readListPrec :: ReadPrec [Integer] Source #
Integral Integer | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods quot :: Integer -> Integer -> Integer Source # rem :: Integer -> Integer -> Integer Source # div :: Integer -> Integer -> Integer Source # mod :: Integer -> Integer -> Integer Source # quotRem :: Integer -> Integer -> (Integer, Integer) Source # divMod :: Integer -> Integer -> (Integer, Integer) Source # toInteger :: Integer -> Integer Source #
Real Integer | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods toRational :: Integer -> Rational Source #
Show Integer | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Integer -> ShowS Source # show :: Integer -> String Source # showList :: [Integer] -> ShowS Source #
Eq Integer |
Instance details Defined in GHC.Num.Integer Methods (==) :: Integer -> Integer -> Bool Source # (/=) :: Integer -> Integer -> Bool Source #
Ord Integer |
Instance details Defined in GHC.Num.Integer Methods compare :: Integer -> Integer -> Ordering Source # (<) :: Integer -> Integer -> Bool Source # (<=) :: Integer -> Integer -> Bool Source # (>) :: Integer -> Integer -> Bool Source # (>=) :: Integer -> Integer -> Bool Source # max :: Integer -> Integer -> Integer Source # min :: Integer -> Integer -> Integer Source #
Hashable Integer |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Integer -> Int Source # hash :: Integer -> Int Source #
DayPeriod Year |
Instance details Defined in Data.Time.Calendar.Gregorian Methods periodFirstDay :: Year -> Day Source # periodLastDay :: Year -> Day Source # dayPeriod :: Day -> Year Source #

data Word64 Source #

64-bit unsigned integer type

#### Instances

Instances details

PrintfArg Word64 | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Word64 -> FieldFormatter Source # parseFormat :: Word64 -> ModifierParser Source #
NFData Word64 |
Instance details Defined in Control.DeepSeq Methods rnf :: Word64 -> () Source #
Bits Word64 | Since: base-2.1

Instance details

Defined in GHC.Internal.Word

Methods

(.&.) :: Word64 -> Word64 -> Word64 Source #

(.|.) :: Word64 -> Word64 -> Word64 Source #

xor :: Word64 -> Word64 -> Word64 Source #

complement :: Word64 -> Word64 Source #

shift :: Word64 -> Int -> Word64 Source #

rotate :: Word64 -> Int -> Word64 Source #

zeroBits :: Word64 Source #

bit :: Int -> Word64 Source #

setBit :: Word64 -> Int -> Word64 Source #

clearBit :: Word64 -> Int -> Word64 Source #

complementBit :: Word64 -> Int -> Word64 Source #

testBit :: Word64 -> Int -> Bool Source #

bitSizeMaybe :: Word64 -> Maybe Int Source #

bitSize :: Word64 -> Int Source #

isSigned :: Word64 -> Bool Source #

shiftL :: Word64 -> Int -> Word64 Source #

unsafeShiftL :: Word64 -> Int -> Word64 Source #

shiftR :: Word64 -> Int -> Word64 Source #

unsafeShiftR :: Word64 -> Int -> Word64 Source #

rotateL :: Word64 -> Int -> Word64 Source #

rotateR :: Word64 -> Int -> Word64 Source #

popCount :: Word64 -> Int Source #

FiniteBits Word64 | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Word Methods finiteBitSize :: Word64 -> Int Source # countLeadingZeros :: Word64 -> Int Source # countTrailingZeros :: Word64 -> Int Source #
Bounded Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods minBound :: Word64 Source # maxBound :: Word64 Source #
Enum Word64 | Since: base-2.1

Instance details

Defined in GHC.Internal.Word

Methods

succ :: Word64 -> Word64 Source #

pred :: Word64 -> Word64 Source #

toEnum :: Int -> Word64 Source #

fromEnum :: Word64 -> Int Source #

enumFrom :: Word64 -> [Word64] Source #

enumFromThen :: Word64 -> Word64 -> [Word64] Source #

enumFromTo :: Word64 -> Word64 -> [Word64] Source #

enumFromThenTo :: Word64 -> Word64 -> Word64 -> [Word64] Source #

Storable Word64 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word64 -> Int Source #

alignment :: Word64 -> Int Source #

peekElemOff :: Ptr Word64 -> Int -> IO Word64 Source #

pokeElemOff :: Ptr Word64 -> Int -> Word64 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word64 Source #

pokeByteOff :: Ptr b -> Int -> Word64 -> IO () Source #

peek :: Ptr Word64 -> IO Word64 Source #

poke :: Ptr Word64 -> Word64 -> IO () Source #

Ix Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods range :: (Word64, Word64) -> [Word64] Source # index :: (Word64, Word64) -> Word64 -> Int Source # unsafeIndex :: (Word64, Word64) -> Word64 -> Int Source # inRange :: (Word64, Word64) -> Word64 -> Bool Source # rangeSize :: (Word64, Word64) -> Int Source # unsafeRangeSize :: (Word64, Word64) -> Int Source #
Num Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (+) :: Word64 -> Word64 -> Word64 Source # (-) :: Word64 -> Word64 -> Word64 Source # (*) :: Word64 -> Word64 -> Word64 Source # negate :: Word64 -> Word64 Source # abs :: Word64 -> Word64 Source # signum :: Word64 -> Word64 Source # fromInteger :: Integer -> Word64 Source #
Read Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word64 Source # readList :: ReadS [Word64] Source # readPrec :: ReadPrec Word64 Source # readListPrec :: ReadPrec [Word64] Source #
Integral Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods quot :: Word64 -> Word64 -> Word64 Source # rem :: Word64 -> Word64 -> Word64 Source # div :: Word64 -> Word64 -> Word64 Source # mod :: Word64 -> Word64 -> Word64 Source # quotRem :: Word64 -> Word64 -> (Word64, Word64) Source # divMod :: Word64 -> Word64 -> (Word64, Word64) Source # toInteger :: Word64 -> Integer Source #
Real Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods toRational :: Word64 -> Rational Source #
Show Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word64 -> ShowS Source # show :: Word64 -> String Source # showList :: [Word64] -> ShowS Source #
Eq Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (==) :: Word64 -> Word64 -> Bool Source # (/=) :: Word64 -> Word64 -> Bool Source #
Ord Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods compare :: Word64 -> Word64 -> Ordering Source # (<) :: Word64 -> Word64 -> Bool Source # (<=) :: Word64 -> Word64 -> Bool Source # (>) :: Word64 -> Word64 -> Bool Source # (>=) :: Word64 -> Word64 -> Bool Source # max :: Word64 -> Word64 -> Word64 Source # min :: Word64 -> Word64 -> Word64 Source #
Hashable Word64 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word64 -> Int Source # hash :: Word64 -> Int Source #
Prim Word64 |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Word64 -> Int# Source #

sizeOf# :: Word64 -> Int# Source #

alignmentOfType# :: Proxy Word64 -> Int# Source #

alignment# :: Word64 -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Word64 Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Word64 #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Word64 -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word64 -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Word64 Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Word64 #) Source #

writeOffAddr# :: Addr# -> Int# -> Word64 -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Word64 -> State# s -> State# s Source #

Unbox Word64 |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Word64 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word64 -> ST s (Vector Word64)

basicUnsafeThaw :: Vector Word64 -> ST s (Mutable Vector s Word64)

basicLength :: Vector Word64 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word64 -> Vector Word64

basicUnsafeIndexM :: Vector Word64 -> Int -> Box Word64

basicUnsafeCopy :: Mutable Vector s Word64 -> Vector Word64 -> ST s ()

elemseq :: Vector Word64 -> Word64 -> b -> b

MVector MVector Word64 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word64 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word64 -> MVector s Word64

basicOverlaps :: MVector s Word64 -> MVector s Word64 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word64)

basicInitialize :: MVector s Word64 -> ST s ()

basicUnsafeReplicate :: Int -> Word64 -> ST s (MVector s Word64)

basicUnsafeRead :: MVector s Word64 -> Int -> ST s Word64

basicUnsafeWrite :: MVector s Word64 -> Int -> Word64 -> ST s ()

basicClear :: MVector s Word64 -> ST s ()

basicSet :: MVector s Word64 -> Word64 -> ST s ()

basicUnsafeCopy :: MVector s Word64 -> MVector s Word64 -> ST s ()

basicUnsafeMove :: MVector s Word64 -> MVector s Word64 -> ST s ()

basicUnsafeGrow :: MVector s Word64 -> Int -> ST s (MVector s Word64)

newtype Vector Word64 |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Word64 = V_Word64 (Vector Word64)
newtype MVector s Word64 |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Word64 = MV_Word64 (MVector s Word64)

data Word32 Source #

32-bit unsigned integer type

#### Instances

Instances details

PrintfArg Word32 | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Word32 -> FieldFormatter Source # parseFormat :: Word32 -> ModifierParser Source #
NFData Word32 |
Instance details Defined in Control.DeepSeq Methods rnf :: Word32 -> () Source #
Bits Word32 | Since: base-2.1

Instance details

Defined in GHC.Internal.Word

Methods

(.&.) :: Word32 -> Word32 -> Word32 Source #

(.|.) :: Word32 -> Word32 -> Word32 Source #

xor :: Word32 -> Word32 -> Word32 Source #

complement :: Word32 -> Word32 Source #

shift :: Word32 -> Int -> Word32 Source #

rotate :: Word32 -> Int -> Word32 Source #

zeroBits :: Word32 Source #

bit :: Int -> Word32 Source #

setBit :: Word32 -> Int -> Word32 Source #

clearBit :: Word32 -> Int -> Word32 Source #

complementBit :: Word32 -> Int -> Word32 Source #

testBit :: Word32 -> Int -> Bool Source #

bitSizeMaybe :: Word32 -> Maybe Int Source #

bitSize :: Word32 -> Int Source #

isSigned :: Word32 -> Bool Source #

shiftL :: Word32 -> Int -> Word32 Source #

unsafeShiftL :: Word32 -> Int -> Word32 Source #

shiftR :: Word32 -> Int -> Word32 Source #

unsafeShiftR :: Word32 -> Int -> Word32 Source #

rotateL :: Word32 -> Int -> Word32 Source #

rotateR :: Word32 -> Int -> Word32 Source #

popCount :: Word32 -> Int Source #

FiniteBits Word32 | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Word Methods finiteBitSize :: Word32 -> Int Source # countLeadingZeros :: Word32 -> Int Source # countTrailingZeros :: Word32 -> Int Source #
Bounded Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods minBound :: Word32 Source # maxBound :: Word32 Source #
Enum Word32 | Since: base-2.1

Instance details

Defined in GHC.Internal.Word

Methods

succ :: Word32 -> Word32 Source #

pred :: Word32 -> Word32 Source #

toEnum :: Int -> Word32 Source #

fromEnum :: Word32 -> Int Source #

enumFrom :: Word32 -> [Word32] Source #

enumFromThen :: Word32 -> Word32 -> [Word32] Source #

enumFromTo :: Word32 -> Word32 -> [Word32] Source #

enumFromThenTo :: Word32 -> Word32 -> Word32 -> [Word32] Source #

Storable Word32 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word32 -> Int Source #

alignment :: Word32 -> Int Source #

peekElemOff :: Ptr Word32 -> Int -> IO Word32 Source #

pokeElemOff :: Ptr Word32 -> Int -> Word32 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word32 Source #

pokeByteOff :: Ptr b -> Int -> Word32 -> IO () Source #

peek :: Ptr Word32 -> IO Word32 Source #

poke :: Ptr Word32 -> Word32 -> IO () Source #

Ix Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods range :: (Word32, Word32) -> [Word32] Source # index :: (Word32, Word32) -> Word32 -> Int Source # unsafeIndex :: (Word32, Word32) -> Word32 -> Int Source # inRange :: (Word32, Word32) -> Word32 -> Bool Source # rangeSize :: (Word32, Word32) -> Int Source # unsafeRangeSize :: (Word32, Word32) -> Int Source #
Num Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (+) :: Word32 -> Word32 -> Word32 Source # (-) :: Word32 -> Word32 -> Word32 Source # (*) :: Word32 -> Word32 -> Word32 Source # negate :: Word32 -> Word32 Source # abs :: Word32 -> Word32 Source # signum :: Word32 -> Word32 Source # fromInteger :: Integer -> Word32 Source #
Read Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word32 Source # readList :: ReadS [Word32] Source # readPrec :: ReadPrec Word32 Source # readListPrec :: ReadPrec [Word32] Source #
Integral Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods quot :: Word32 -> Word32 -> Word32 Source # rem :: Word32 -> Word32 -> Word32 Source # div :: Word32 -> Word32 -> Word32 Source # mod :: Word32 -> Word32 -> Word32 Source # quotRem :: Word32 -> Word32 -> (Word32, Word32) Source # divMod :: Word32 -> Word32 -> (Word32, Word32) Source # toInteger :: Word32 -> Integer Source #
Real Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods toRational :: Word32 -> Rational Source #
Show Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word32 -> ShowS Source # show :: Word32 -> String Source # showList :: [Word32] -> ShowS Source #
Eq Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (==) :: Word32 -> Word32 -> Bool Source # (/=) :: Word32 -> Word32 -> Bool Source #
Ord Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods compare :: Word32 -> Word32 -> Ordering Source # (<) :: Word32 -> Word32 -> Bool Source # (<=) :: Word32 -> Word32 -> Bool Source # (>) :: Word32 -> Word32 -> Bool Source # (>=) :: Word32 -> Word32 -> Bool Source # max :: Word32 -> Word32 -> Word32 Source # min :: Word32 -> Word32 -> Word32 Source #
Hashable Word32 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word32 -> Int Source # hash :: Word32 -> Int Source #
Prim Word32 |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Word32 -> Int# Source #

sizeOf# :: Word32 -> Int# Source #

alignmentOfType# :: Proxy Word32 -> Int# Source #

alignment# :: Word32 -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Word32 Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Word32 #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Word32 -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Word32 -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Word32 Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Word32 #) Source #

writeOffAddr# :: Addr# -> Int# -> Word32 -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Word32 -> State# s -> State# s Source #

Unbox Word32 |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Word32 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Word32 -> ST s (Vector Word32)

basicUnsafeThaw :: Vector Word32 -> ST s (Mutable Vector s Word32)

basicLength :: Vector Word32 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Word32 -> Vector Word32

basicUnsafeIndexM :: Vector Word32 -> Int -> Box Word32

basicUnsafeCopy :: Mutable Vector s Word32 -> Vector Word32 -> ST s ()

elemseq :: Vector Word32 -> Word32 -> b -> b

MVector MVector Word32 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Word32 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Word32 -> MVector s Word32

basicOverlaps :: MVector s Word32 -> MVector s Word32 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Word32)

basicInitialize :: MVector s Word32 -> ST s ()

basicUnsafeReplicate :: Int -> Word32 -> ST s (MVector s Word32)

basicUnsafeRead :: MVector s Word32 -> Int -> ST s Word32

basicUnsafeWrite :: MVector s Word32 -> Int -> Word32 -> ST s ()

basicClear :: MVector s Word32 -> ST s ()

basicSet :: MVector s Word32 -> Word32 -> ST s ()

basicUnsafeCopy :: MVector s Word32 -> MVector s Word32 -> ST s ()

basicUnsafeMove :: MVector s Word32 -> MVector s Word32 -> ST s ()

basicUnsafeGrow :: MVector s Word32 -> Int -> ST s (MVector s Word32)

newtype Vector Word32 |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Word32 = V_Word32 (Vector Word32)
newtype MVector s Word32 |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Word32 = MV_Word32 (MVector s Word32)

(<|>) :: Alternative f => f a -> f a -> f a infixl 3 Source #

An associative binary operation

class (Functor t, Foldable t) => Traversable (t :: Type -> Type) Source #

Functors representing data structures that can be transformed to structures of the same shape by performing an `Applicative` (or, therefore, `Monad`) action on each element from left to right.

A more detailed description of what same shape means, the various methods, how traversals are constructed, and example advanced use-cases can be found in the Overview section of Data.Traversable.

For the class laws see the Laws section of Data.Traversable.

Minimal complete definition

traverse | sequenceA

#### Instances

Instances details

Traversable Complex | Since: base-4.9.0.0
Instance details Defined in Data.Complex Methods traverse :: Applicative f => (a -> f b) -> Complex a -> f (Complex b) Source # sequenceA :: Applicative f => Complex (f a) -> f (Complex a) Source # mapM :: Monad m => (a -> m b) -> Complex a -> m (Complex b) Source # sequence :: Monad m => Complex (m a) -> m (Complex a) Source #
Traversable First | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a -> f b) -> First a -> f (First b) Source # sequenceA :: Applicative f => First (f a) -> f (First a) Source # mapM :: Monad m => (a -> m b) -> First a -> m (First b) Source # sequence :: Monad m => First (m a) -> m (First a) Source #
Traversable Last | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a -> f b) -> Last a -> f (Last b) Source # sequenceA :: Applicative f => Last (f a) -> f (Last a) Source # mapM :: Monad m => (a -> m b) -> Last a -> m (Last b) Source # sequence :: Monad m => Last (m a) -> m (Last a) Source #
Traversable Max | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a -> f b) -> Max a -> f (Max b) Source # sequenceA :: Applicative f => Max (f a) -> f (Max a) Source # mapM :: Monad m => (a -> m b) -> Max a -> m (Max b) Source # sequence :: Monad m => Max (m a) -> m (Max a) Source #
Traversable Min | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a -> f b) -> Min a -> f (Min b) Source # sequenceA :: Applicative f => Min (f a) -> f (Min a) Source # mapM :: Monad m => (a -> m b) -> Min a -> m (Min b) Source # sequence :: Monad m => Min (m a) -> m (Min a) Source #
Traversable SCC | Since: containers-0.5.9
Instance details Defined in Data.Graph Methods traverse :: Applicative f => (a -> f b) -> SCC a -> f (SCC b) Source # sequenceA :: Applicative f => SCC (f a) -> f (SCC a) Source # mapM :: Monad m => (a -> m b) -> SCC a -> m (SCC b) Source # sequence :: Monad m => SCC (m a) -> m (SCC a) Source #
Traversable IntMap | Traverses in order of increasing key.
Instance details Defined in Data.IntMap.Internal Methods traverse :: Applicative f => (a -> f b) -> IntMap a -> f (IntMap b) Source # sequenceA :: Applicative f => IntMap (f a) -> f (IntMap a) Source # mapM :: Monad m => (a -> m b) -> IntMap a -> m (IntMap b) Source # sequence :: Monad m => IntMap (m a) -> m (IntMap a) Source #
Traversable Digit |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Digit a -> f (Digit b) Source # sequenceA :: Applicative f => Digit (f a) -> f (Digit a) Source # mapM :: Monad m => (a -> m b) -> Digit a -> m (Digit b) Source # sequence :: Monad m => Digit (m a) -> m (Digit a) Source #
Traversable Elem |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Elem a -> f (Elem b) Source # sequenceA :: Applicative f => Elem (f a) -> f (Elem a) Source # mapM :: Monad m => (a -> m b) -> Elem a -> m (Elem b) Source # sequence :: Monad m => Elem (m a) -> m (Elem a) Source #
Traversable FingerTree |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> FingerTree a -> f (FingerTree b) Source # sequenceA :: Applicative f => FingerTree (f a) -> f (FingerTree a) Source # mapM :: Monad m => (a -> m b) -> FingerTree a -> m (FingerTree b) Source # sequence :: Monad m => FingerTree (m a) -> m (FingerTree a) Source #
Traversable Node |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Node a -> f (Node b) Source # sequenceA :: Applicative f => Node (f a) -> f (Node a) Source # mapM :: Monad m => (a -> m b) -> Node a -> m (Node b) Source # sequence :: Monad m => Node (m a) -> m (Node a) Source #
Traversable Seq |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Seq a -> f (Seq b) Source # sequenceA :: Applicative f => Seq (f a) -> f (Seq a) Source # mapM :: Monad m => (a -> m b) -> Seq a -> m (Seq b) Source # sequence :: Monad m => Seq (m a) -> m (Seq a) Source #
Traversable ViewL |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> ViewL a -> f (ViewL b) Source # sequenceA :: Applicative f => ViewL (f a) -> f (ViewL a) Source # mapM :: Monad m => (a -> m b) -> ViewL a -> m (ViewL b) Source # sequence :: Monad m => ViewL (m a) -> m (ViewL a) Source #
Traversable ViewR |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> ViewR a -> f (ViewR b) Source # sequenceA :: Applicative f => ViewR (f a) -> f (ViewR a) Source # mapM :: Monad m => (a -> m b) -> ViewR a -> m (ViewR b) Source # sequence :: Monad m => ViewR (m a) -> m (ViewR a) Source #
Traversable Tree |
Instance details Defined in Data.Tree Methods traverse :: Applicative f => (a -> f b) -> Tree a -> f (Tree b) Source # sequenceA :: Applicative f => Tree (f a) -> f (Tree a) Source # mapM :: Monad m => (a -> m b) -> Tree a -> m (Tree b) Source # sequence :: Monad m => Tree (m a) -> m (Tree a) Source #
Traversable DList |
Instance details Defined in Data.DList.Internal Methods traverse :: Applicative f => (a -> f b) -> DList a -> f (DList b) Source # sequenceA :: Applicative f => DList (f a) -> f (DList a) Source # mapM :: Monad m => (a -> m b) -> DList a -> m (DList b) Source # sequence :: Monad m => DList (m a) -> m (DList a) Source #
Traversable NonEmpty | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> NonEmpty a -> f (NonEmpty b) Source # sequenceA :: Applicative f => NonEmpty (f a) -> f (NonEmpty a) Source # mapM :: Monad m => (a -> m b) -> NonEmpty a -> m (NonEmpty b) Source # sequence :: Monad m => NonEmpty (m a) -> m (NonEmpty a) Source #
Traversable Identity | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Identity a -> f (Identity b) Source # sequenceA :: Applicative f => Identity (f a) -> f (Identity a) Source # mapM :: Monad m => (a -> m b) -> Identity a -> m (Identity b) Source # sequence :: Monad m => Identity (m a) -> m (Identity a) Source #
Traversable First | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> First a -> f (First b) Source # sequenceA :: Applicative f => First (f a) -> f (First a) Source # mapM :: Monad m => (a -> m b) -> First a -> m (First b) Source # sequence :: Monad m => First (m a) -> m (First a) Source #
Traversable Last | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Last a -> f (Last b) Source # sequenceA :: Applicative f => Last (f a) -> f (Last a) Source # mapM :: Monad m => (a -> m b) -> Last a -> m (Last b) Source # sequence :: Monad m => Last (m a) -> m (Last a) Source #
Traversable Down | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Down a -> f (Down b) Source # sequenceA :: Applicative f => Down (f a) -> f (Down a) Source # mapM :: Monad m => (a -> m b) -> Down a -> m (Down b) Source # sequence :: Monad m => Down (m a) -> m (Down a) Source #
Traversable Dual | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Dual a -> f (Dual b) Source # sequenceA :: Applicative f => Dual (f a) -> f (Dual a) Source # mapM :: Monad m => (a -> m b) -> Dual a -> m (Dual b) Source # sequence :: Monad m => Dual (m a) -> m (Dual a) Source #
Traversable Product | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Product a -> f (Product b) Source # sequenceA :: Applicative f => Product (f a) -> f (Product a) Source # mapM :: Monad m => (a -> m b) -> Product a -> m (Product b) Source # sequence :: Monad m => Product (m a) -> m (Product a) Source #
Traversable Sum | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Sum a -> f (Sum b) Source # sequenceA :: Applicative f => Sum (f a) -> f (Sum a) Source # mapM :: Monad m => (a -> m b) -> Sum a -> m (Sum b) Source # sequence :: Monad m => Sum (m a) -> m (Sum a) Source #
Traversable Par1 | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Par1 a -> f (Par1 b) Source # sequenceA :: Applicative f => Par1 (f a) -> f (Par1 a) Source # mapM :: Monad m => (a -> m b) -> Par1 a -> m (Par1 b) Source # sequence :: Monad m => Par1 (m a) -> m (Par1 a) Source #
Traversable Array |
Instance details Defined in Data.Primitive.Array Methods traverse :: Applicative f => (a -> f b) -> Array a -> f (Array b) Source # sequenceA :: Applicative f => Array (f a) -> f (Array a) Source # mapM :: Monad m => (a -> m b) -> Array a -> m (Array b) Source # sequence :: Monad m => Array (m a) -> m (Array a) Source #
Traversable SmallArray |
Instance details Defined in Data.Primitive.SmallArray Methods traverse :: Applicative f => (a -> f b) -> SmallArray a -> f (SmallArray b) Source # sequenceA :: Applicative f => SmallArray (f a) -> f (SmallArray a) Source # mapM :: Monad m => (a -> m b) -> SmallArray a -> m (SmallArray b) Source # sequence :: Monad m => SmallArray (m a) -> m (SmallArray a) Source #
Traversable Vector |
Instance details Defined in Data.Vector Methods traverse :: Applicative f => (a -> f b) -> Vector a -> f (Vector b) Source # sequenceA :: Applicative f => Vector (f a) -> f (Vector a) Source # mapM :: Monad m => (a -> m b) -> Vector a -> m (Vector b) Source # sequence :: Monad m => Vector (m a) -> m (Vector a) Source #
Traversable Vector |
Instance details Defined in Data.Vector.Strict Methods traverse :: Applicative f => (a -> f b) -> Vector a -> f (Vector b) Source # sequenceA :: Applicative f => Vector (f a) -> f (Vector a) Source # mapM :: Monad m => (a -> m b) -> Vector a -> m (Vector b) Source # sequence :: Monad m => Vector (m a) -> m (Vector a) Source #
Traversable Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Maybe a -> f (Maybe b) Source # sequenceA :: Applicative f => Maybe (f a) -> f (Maybe a) Source # mapM :: Monad m => (a -> m b) -> Maybe a -> m (Maybe b) Source # sequence :: Monad m => Maybe (m a) -> m (Maybe a) Source #
Traversable Solo | Since: base-4.15
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Solo a -> f (Solo b) Source # sequenceA :: Applicative f => Solo (f a) -> f (Solo a) Source # mapM :: Monad m => (a -> m b) -> Solo a -> m (Solo b) Source # sequence :: Monad m => Solo (m a) -> m (Solo a) Source #
Traversable [] | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> [a] -> f [b] Source # sequenceA :: Applicative f => [f a] -> f [a] Source # mapM :: Monad m => (a -> m b) -> [a] -> m [b] Source # sequence :: Monad m => [m a] -> m [a] Source #
Traversable (Arg a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a0 -> f b) -> Arg a a0 -> f (Arg a b) Source # sequenceA :: Applicative f => Arg a (f a0) -> f (Arg a a0) Source # mapM :: Monad m => (a0 -> m b) -> Arg a a0 -> m (Arg a b) Source # sequence :: Monad m => Arg a (m a0) -> m (Arg a a0) Source #
Traversable (Map k) | Traverses in order of increasing key.
Instance details Defined in Data.Map.Internal Methods traverse :: Applicative f => (a -> f b) -> Map k a -> f (Map k b) Source # sequenceA :: Applicative f => Map k (f a) -> f (Map k a) Source # mapM :: Monad m => (a -> m b) -> Map k a -> m (Map k b) Source # sequence :: Monad m => Map k (m a) -> m (Map k a) Source #
Traversable f => Traversable (Cofree f) |
Instance details Defined in Control.Comonad.Cofree Methods traverse :: Applicative f0 => (a -> f0 b) -> Cofree f a -> f0 (Cofree f b) Source # sequenceA :: Applicative f0 => Cofree f (f0 a) -> f0 (Cofree f a) Source # mapM :: Monad m => (a -> m b) -> Cofree f a -> m (Cofree f b) Source # sequence :: Monad m => Cofree f (m a) -> m (Cofree f a) Source #
Traversable f => Traversable (Free f) |
Instance details Defined in Control.Monad.Free Methods traverse :: Applicative f0 => (a -> f0 b) -> Free f a -> f0 (Free f b) Source # sequenceA :: Applicative f0 => Free f (f0 a) -> f0 (Free f a) Source # mapM :: Monad m => (a -> m b) -> Free f a -> m (Free f b) Source # sequence :: Monad m => Free f (m a) -> m (Free f a) Source #
Ix i => Traversable (Array i) | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Array i a -> f (Array i b) Source # sequenceA :: Applicative f => Array i (f a) -> f (Array i a) Source # mapM :: Monad m => (a -> m b) -> Array i a -> m (Array i b) Source # sequence :: Monad m => Array i (m a) -> m (Array i a) Source #
Traversable (Either a) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a0 -> f b) -> Either a a0 -> f (Either a b) Source # sequenceA :: Applicative f => Either a (f a0) -> f (Either a a0) Source # mapM :: Monad m => (a0 -> m b) -> Either a a0 -> m (Either a b) Source # sequence :: Monad m => Either a (m a0) -> m (Either a a0) Source #
Traversable (Proxy :: Type -> Type) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Proxy a -> f (Proxy b) Source # sequenceA :: Applicative f => Proxy (f a) -> f (Proxy a) Source # mapM :: Monad m => (a -> m b) -> Proxy a -> m (Proxy b) Source # sequence :: Monad m => Proxy (m a) -> m (Proxy a) Source #
Traversable (U1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> U1 a -> f (U1 b) Source # sequenceA :: Applicative f => U1 (f a) -> f (U1 a) Source # mapM :: Monad m => (a -> m b) -> U1 a -> m (U1 b) Source # sequence :: Monad m => U1 (m a) -> m (U1 a) Source #
Traversable (UAddr :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UAddr a -> f (UAddr b) Source # sequenceA :: Applicative f => UAddr (f a) -> f (UAddr a) Source # mapM :: Monad m => (a -> m b) -> UAddr a -> m (UAddr b) Source # sequence :: Monad m => UAddr (m a) -> m (UAddr a) Source #
Traversable (UChar :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UChar a -> f (UChar b) Source # sequenceA :: Applicative f => UChar (f a) -> f (UChar a) Source # mapM :: Monad m => (a -> m b) -> UChar a -> m (UChar b) Source # sequence :: Monad m => UChar (m a) -> m (UChar a) Source #
Traversable (UDouble :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UDouble a -> f (UDouble b) Source # sequenceA :: Applicative f => UDouble (f a) -> f (UDouble a) Source # mapM :: Monad m => (a -> m b) -> UDouble a -> m (UDouble b) Source # sequence :: Monad m => UDouble (m a) -> m (UDouble a) Source #
Traversable (UFloat :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UFloat a -> f (UFloat b) Source # sequenceA :: Applicative f => UFloat (f a) -> f (UFloat a) Source # mapM :: Monad m => (a -> m b) -> UFloat a -> m (UFloat b) Source # sequence :: Monad m => UFloat (m a) -> m (UFloat a) Source #
Traversable (UInt :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UInt a -> f (UInt b) Source # sequenceA :: Applicative f => UInt (f a) -> f (UInt a) Source # mapM :: Monad m => (a -> m b) -> UInt a -> m (UInt b) Source # sequence :: Monad m => UInt (m a) -> m (UInt a) Source #
Traversable (UWord :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UWord a -> f (UWord b) Source # sequenceA :: Applicative f => UWord (f a) -> f (UWord a) Source # mapM :: Monad m => (a -> m b) -> UWord a -> m (UWord b) Source # sequence :: Monad m => UWord (m a) -> m (UWord a) Source #
Traversable (V1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> V1 a -> f (V1 b) Source # sequenceA :: Applicative f => V1 (f a) -> f (V1 a) Source # mapM :: Monad m => (a -> m b) -> V1 a -> m (V1 b) Source # sequence :: Monad m => V1 (m a) -> m (V1 a) Source #
Traversable f => Traversable (Lift f) |
Instance details Defined in Control.Applicative.Lift Methods traverse :: Applicative f0 => (a -> f0 b) -> Lift f a -> f0 (Lift f b) Source # sequenceA :: Applicative f0 => Lift f (f0 a) -> f0 (Lift f a) Source # mapM :: Monad m => (a -> m b) -> Lift f a -> m (Lift f b) Source # sequence :: Monad m => Lift f (m a) -> m (Lift f a) Source #
Traversable f => Traversable (MaybeT f) |
Instance details Defined in Control.Monad.Trans.Maybe Methods traverse :: Applicative f0 => (a -> f0 b) -> MaybeT f a -> f0 (MaybeT f b) Source # sequenceA :: Applicative f0 => MaybeT f (f0 a) -> f0 (MaybeT f a) Source # mapM :: Monad m => (a -> m b) -> MaybeT f a -> m (MaybeT f b) Source # sequence :: Monad m => MaybeT f (m a) -> m (MaybeT f a) Source #
Traversable (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods traverse :: Applicative f => (a -> f b) -> HashMap k a -> f (HashMap k b) Source # sequenceA :: Applicative f => HashMap k (f a) -> f (HashMap k a) Source # mapM :: Monad m => (a -> m b) -> HashMap k a -> m (HashMap k b) Source # sequence :: Monad m => HashMap k (m a) -> m (HashMap k a) Source #
Traversable ((,) a) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a0 -> f b) -> (a, a0) -> f (a, b) Source # sequenceA :: Applicative f => (a, f a0) -> f (a, a0) Source # mapM :: Monad m => (a0 -> m b) -> (a, a0) -> m (a, b) Source # sequence :: Monad m => (a, m a0) -> m (a, a0) Source #
Traversable (bi a) => Traversable (Biap bi a) |
Instance details Defined in Data.Bifunctor.Biap Methods traverse :: Applicative f => (a0 -> f b) -> Biap bi a a0 -> f (Biap bi a b) Source # sequenceA :: Applicative f => Biap bi a (f a0) -> f (Biap bi a a0) Source # mapM :: Monad m => (a0 -> m b) -> Biap bi a a0 -> m (Biap bi a b) Source # sequence :: Monad m => Biap bi a (m a0) -> m (Biap bi a a0) Source #
Bitraversable p => Traversable (Fix p) |
Instance details Defined in Data.Bifunctor.Fix Methods traverse :: Applicative f => (a -> f b) -> Fix p a -> f (Fix p b) Source # sequenceA :: Applicative f => Fix p (f a) -> f (Fix p a) Source # mapM :: Monad m => (a -> m b) -> Fix p a -> m (Fix p b) Source # sequence :: Monad m => Fix p (m a) -> m (Fix p a) Source #
Bitraversable p => Traversable (Join p) |
Instance details Defined in Data.Bifunctor.Join Methods traverse :: Applicative f => (a -> f b) -> Join p a -> f (Join p b) Source # sequenceA :: Applicative f => Join p (f a) -> f (Join p a) Source # mapM :: Monad m => (a -> m b) -> Join p a -> m (Join p b) Source # sequence :: Monad m => Join p (m a) -> m (Join p a) Source #
Traversable f => Traversable (FreeF f a) |
Instance details Defined in Control.Monad.Trans.Free Methods traverse :: Applicative f0 => (a0 -> f0 b) -> FreeF f a a0 -> f0 (FreeF f a b) Source # sequenceA :: Applicative f0 => FreeF f a (f0 a0) -> f0 (FreeF f a a0) Source # mapM :: Monad m => (a0 -> m b) -> FreeF f a a0 -> m (FreeF f a b) Source # sequence :: Monad m => FreeF f a (m a0) -> m (FreeF f a a0) Source #
(Monad m, Traversable m, Traversable f) => Traversable (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods traverse :: Applicative f0 => (a -> f0 b) -> FreeT f m a -> f0 (FreeT f m b) Source # sequenceA :: Applicative f0 => FreeT f m (f0 a) -> f0 (FreeT f m a) Source # mapM :: Monad m0 => (a -> m0 b) -> FreeT f m a -> m0 (FreeT f m b) Source # sequence :: Monad m0 => FreeT f m (m0 a) -> m0 (FreeT f m a) Source #
Traversable (Const m :: Type -> Type) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Const m a -> f (Const m b) Source # sequenceA :: Applicative f => Const m (f a) -> f (Const m a) Source # mapM :: Monad m0 => (a -> m0 b) -> Const m a -> m0 (Const m b) Source # sequence :: Monad m0 => Const m (m0 a) -> m0 (Const m a) Source #
Traversable f => Traversable (Ap f) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> Ap f a -> f0 (Ap f b) Source # sequenceA :: Applicative f0 => Ap f (f0 a) -> f0 (Ap f a) Source # mapM :: Monad m => (a -> m b) -> Ap f a -> m (Ap f b) Source # sequence :: Monad m => Ap f (m a) -> m (Ap f a) Source #
Traversable f => Traversable (Alt f) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> Alt f a -> f0 (Alt f b) Source # sequenceA :: Applicative f0 => Alt f (f0 a) -> f0 (Alt f a) Source # mapM :: Monad m => (a -> m b) -> Alt f a -> m (Alt f b) Source # sequence :: Monad m => Alt f (m a) -> m (Alt f a) Source #
Traversable f => Traversable (Rec1 f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> Rec1 f a -> f0 (Rec1 f b) Source # sequenceA :: Applicative f0 => Rec1 f (f0 a) -> f0 (Rec1 f a) Source # mapM :: Monad m => (a -> m b) -> Rec1 f a -> m (Rec1 f b) Source # sequence :: Monad m => Rec1 f (m a) -> m (Rec1 f a) Source #
Traversable (Tagged s) |
Instance details Defined in Data.Tagged Methods traverse :: Applicative f => (a -> f b) -> Tagged s a -> f (Tagged s b) Source # sequenceA :: Applicative f => Tagged s (f a) -> f (Tagged s a) Source # mapM :: Monad m => (a -> m b) -> Tagged s a -> m (Tagged s b) Source # sequence :: Monad m => Tagged s (m a) -> m (Tagged s a) Source #
Traversable f => Traversable (Backwards f) | Derived instance.
Instance details Defined in Control.Applicative.Backwards Methods traverse :: Applicative f0 => (a -> f0 b) -> Backwards f a -> f0 (Backwards f b) Source # sequenceA :: Applicative f0 => Backwards f (f0 a) -> f0 (Backwards f a) Source # mapM :: Monad m => (a -> m b) -> Backwards f a -> m (Backwards f b) Source # sequence :: Monad m => Backwards f (m a) -> m (Backwards f a) Source #
Traversable f => Traversable (ExceptT e f) |
Instance details Defined in Control.Monad.Trans.Except Methods traverse :: Applicative f0 => (a -> f0 b) -> ExceptT e f a -> f0 (ExceptT e f b) Source # sequenceA :: Applicative f0 => ExceptT e f (f0 a) -> f0 (ExceptT e f a) Source # mapM :: Monad m => (a -> m b) -> ExceptT e f a -> m (ExceptT e f b) Source # sequence :: Monad m => ExceptT e f (m a) -> m (ExceptT e f a) Source #
Traversable f => Traversable (IdentityT f) |
Instance details Defined in Control.Monad.Trans.Identity Methods traverse :: Applicative f0 => (a -> f0 b) -> IdentityT f a -> f0 (IdentityT f b) Source # sequenceA :: Applicative f0 => IdentityT f (f0 a) -> f0 (IdentityT f a) Source # mapM :: Monad m => (a -> m b) -> IdentityT f a -> m (IdentityT f b) Source # sequence :: Monad m => IdentityT f (m a) -> m (IdentityT f a) Source #
Traversable f => Traversable (WriterT w f) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods traverse :: Applicative f0 => (a -> f0 b) -> WriterT w f a -> f0 (WriterT w f b) Source # sequenceA :: Applicative f0 => WriterT w f (f0 a) -> f0 (WriterT w f a) Source # mapM :: Monad m => (a -> m b) -> WriterT w f a -> m (WriterT w f b) Source # sequence :: Monad m => WriterT w f (m a) -> m (WriterT w f a) Source #
Traversable f => Traversable (WriterT w f) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods traverse :: Applicative f0 => (a -> f0 b) -> WriterT w f a -> f0 (WriterT w f b) Source # sequenceA :: Applicative f0 => WriterT w f (f0 a) -> f0 (WriterT w f a) Source # mapM :: Monad m => (a -> m b) -> WriterT w f a -> m (WriterT w f b) Source # sequence :: Monad m => WriterT w f (m a) -> m (WriterT w f a) Source #
Traversable (Constant a :: Type -> Type) |
Instance details Defined in Data.Functor.Constant Methods traverse :: Applicative f => (a0 -> f b) -> Constant a a0 -> f (Constant a b) Source # sequenceA :: Applicative f => Constant a (f a0) -> f (Constant a a0) Source # mapM :: Monad m => (a0 -> m b) -> Constant a a0 -> m (Constant a b) Source # sequence :: Monad m => Constant a (m a0) -> m (Constant a a0) Source #
Traversable f => Traversable (Reverse f) | Traverse from right to left.
Instance details Defined in Data.Functor.Reverse Methods traverse :: Applicative f0 => (a -> f0 b) -> Reverse f a -> f0 (Reverse f b) Source # sequenceA :: Applicative f0 => Reverse f (f0 a) -> f0 (Reverse f a) Source # mapM :: Monad m => (a -> m b) -> Reverse f a -> m (Reverse f b) Source # sequence :: Monad m => Reverse f (m a) -> m (Reverse f a) Source #
(Traversable f, Traversable g) => Traversable (Product f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Product Methods traverse :: Applicative f0 => (a -> f0 b) -> Product f g a -> f0 (Product f g b) Source # sequenceA :: Applicative f0 => Product f g (f0 a) -> f0 (Product f g a) Source # mapM :: Monad m => (a -> m b) -> Product f g a -> m (Product f g b) Source # sequence :: Monad m => Product f g (m a) -> m (Product f g a) Source #
(Traversable f, Traversable g) => Traversable (Sum f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Sum Methods traverse :: Applicative f0 => (a -> f0 b) -> Sum f g a -> f0 (Sum f g b) Source # sequenceA :: Applicative f0 => Sum f g (f0 a) -> f0 (Sum f g a) Source # mapM :: Monad m => (a -> m b) -> Sum f g a -> m (Sum f g b) Source # sequence :: Monad m => Sum f g (m a) -> m (Sum f g a) Source #
(Traversable f, Traversable g) => Traversable (f :*: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> (f :*: g) a -> f0 ((f :*: g) b) Source # sequenceA :: Applicative f0 => (f :*: g) (f0 a) -> f0 ((f :*: g) a) Source # mapM :: Monad m => (a -> m b) -> (f :*: g) a -> m ((f :*: g) b) Source # sequence :: Monad m => (f :*: g) (m a) -> m ((f :*: g) a) Source #
(Traversable f, Traversable g) => Traversable (f :+: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> (f :+: g) a -> f0 ((f :+: g) b) Source # sequenceA :: Applicative f0 => (f :+: g) (f0 a) -> f0 ((f :+: g) a) Source # mapM :: Monad m => (a -> m b) -> (f :+: g) a -> m ((f :+: g) b) Source # sequence :: Monad m => (f :+: g) (m a) -> m ((f :+: g) a) Source #
Traversable (K1 i c :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> K1 i c a -> f (K1 i c b) Source # sequenceA :: Applicative f => K1 i c (f a) -> f (K1 i c a) Source # mapM :: Monad m => (a -> m b) -> K1 i c a -> m (K1 i c b) Source # sequence :: Monad m => K1 i c (m a) -> m (K1 i c a) Source #
(Traversable f, Traversable g) => Traversable (Compose f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Compose Methods traverse :: Applicative f0 => (a -> f0 b) -> Compose f g a -> f0 (Compose f g b) Source # sequenceA :: Applicative f0 => Compose f g (f0 a) -> f0 (Compose f g a) Source # mapM :: Monad m => (a -> m b) -> Compose f g a -> m (Compose f g b) Source # sequence :: Monad m => Compose f g (m a) -> m (Compose f g a) Source #
Traversable (Clown f a :: Type -> Type) |
Instance details Defined in Data.Bifunctor.Clown Methods traverse :: Applicative f0 => (a0 -> f0 b) -> Clown f a a0 -> f0 (Clown f a b) Source # sequenceA :: Applicative f0 => Clown f a (f0 a0) -> f0 (Clown f a a0) Source # mapM :: Monad m => (a0 -> m b) -> Clown f a a0 -> m (Clown f a b) Source # sequence :: Monad m => Clown f a (m a0) -> m (Clown f a a0) Source #
Bitraversable p => Traversable (Flip p a) |
Instance details Defined in Data.Bifunctor.Flip Methods traverse :: Applicative f => (a0 -> f b) -> Flip p a a0 -> f (Flip p a b) Source # sequenceA :: Applicative f => Flip p a (f a0) -> f (Flip p a a0) Source # mapM :: Monad m => (a0 -> m b) -> Flip p a a0 -> m (Flip p a b) Source # sequence :: Monad m => Flip p a (m a0) -> m (Flip p a a0) Source #
Traversable g => Traversable (Joker g a) |
Instance details Defined in Data.Bifunctor.Joker Methods traverse :: Applicative f => (a0 -> f b) -> Joker g a a0 -> f (Joker g a b) Source # sequenceA :: Applicative f => Joker g a (f a0) -> f (Joker g a a0) Source # mapM :: Monad m => (a0 -> m b) -> Joker g a a0 -> m (Joker g a b) Source # sequence :: Monad m => Joker g a (m a0) -> m (Joker g a a0) Source #
Bitraversable p => Traversable (WrappedBifunctor p a) |

Instance details

Defined in Data.Bifunctor.Wrapped

Methods

traverse :: Applicative f => (a0 -> f b) -> WrappedBifunctor p a a0 -> f (WrappedBifunctor p a b) Source #

sequenceA :: Applicative f => WrappedBifunctor p a (f a0) -> f (WrappedBifunctor p a a0) Source #

mapM :: Monad m => (a0 -> m b) -> WrappedBifunctor p a a0 -> m (WrappedBifunctor p a b) Source #

sequence :: Monad m => WrappedBifunctor p a (m a0) -> m (WrappedBifunctor p a a0) Source #

(Traversable f, Traversable g) => Traversable (f :.: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> (f :.: g) a -> f0 ((f :.: g) b) Source # sequenceA :: Applicative f0 => (f :.: g) (f0 a) -> f0 ((f :.: g) a) Source # mapM :: Monad m => (a -> m b) -> (f :.: g) a -> m ((f :.: g) b) Source # sequence :: Monad m => (f :.: g) (m a) -> m ((f :.: g) a) Source #
Traversable f => Traversable (M1 i c f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> M1 i c f a -> f0 (M1 i c f b) Source # sequenceA :: Applicative f0 => M1 i c f (f0 a) -> f0 (M1 i c f a) Source # mapM :: Monad m => (a -> m b) -> M1 i c f a -> m (M1 i c f b) Source # sequence :: Monad m => M1 i c f (m a) -> m (M1 i c f a) Source #
(Traversable (f a), Traversable (g a)) => Traversable (Product f g a) |

Instance details

Defined in Data.Bifunctor.Product

Methods

traverse :: Applicative f0 => (a0 -> f0 b) -> Product f g a a0 -> f0 (Product f g a b) Source #

sequenceA :: Applicative f0 => Product f g a (f0 a0) -> f0 (Product f g a a0) Source #

mapM :: Monad m => (a0 -> m b) -> Product f g a a0 -> m (Product f g a b) Source #

sequence :: Monad m => Product f g a (m a0) -> m (Product f g a a0) Source #

(Traversable (f a), Traversable (g a)) => Traversable (Sum f g a) |
Instance details Defined in Data.Bifunctor.Sum Methods traverse :: Applicative f0 => (a0 -> f0 b) -> Sum f g a a0 -> f0 (Sum f g a b) Source # sequenceA :: Applicative f0 => Sum f g a (f0 a0) -> f0 (Sum f g a a0) Source # mapM :: Monad m => (a0 -> m b) -> Sum f g a a0 -> m (Sum f g a b) Source # sequence :: Monad m => Sum f g a (m a0) -> m (Sum f g a a0) Source #
(Traversable f, Bitraversable p) => Traversable (Tannen f p a) |
Instance details Defined in Data.Bifunctor.Tannen Methods traverse :: Applicative f0 => (a0 -> f0 b) -> Tannen f p a a0 -> f0 (Tannen f p a b) Source # sequenceA :: Applicative f0 => Tannen f p a (f0 a0) -> f0 (Tannen f p a a0) Source # mapM :: Monad m => (a0 -> m b) -> Tannen f p a a0 -> m (Tannen f p a b) Source # sequence :: Monad m => Tannen f p a (m a0) -> m (Tannen f p a a0) Source #
(Bitraversable p, Traversable g) => Traversable (Biff p f g a) |
Instance details Defined in Data.Bifunctor.Biff Methods traverse :: Applicative f0 => (a0 -> f0 b) -> Biff p f g a a0 -> f0 (Biff p f g a b) Source # sequenceA :: Applicative f0 => Biff p f g a (f0 a0) -> f0 (Biff p f g a a0) Source # mapM :: Monad m => (a0 -> m b) -> Biff p f g a a0 -> m (Biff p f g a b) Source # sequence :: Monad m => Biff p f g a (m a0) -> m (Biff p f g a a0) Source #

class Foldable (t :: Type -> Type) Source #

The Foldable class represents data structures that can be reduced to a summary value one element at a time. Strict left-associative folds are a good fit for space-efficient reduction, while lazy right-associative folds are a good fit for corecursive iteration, or for folds that short-circuit after processing an initial subsequence of the structure's elements.

Instances can be derived automatically by enabling the `DeriveFoldable` extension. For example, a derived instance for a binary tree might be:

    {-# LANGUAGE DeriveFoldable #-}
    data Tree a = Empty
                | Leaf a
                | Node (Tree a) a (Tree a)
        deriving Foldable

A more detailed description can be found in the Overview section of Data.Foldable.

For the class laws see the Laws section of Data.Foldable.

Minimal complete definition

foldMap | foldr

#### Instances

Instances details

Foldable Complex | Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Methods

fold :: Monoid m => Complex m -> m Source #

foldMap :: Monoid m => (a -> m) -> Complex a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Complex a -> m Source #

foldr :: (a -> b -> b) -> b -> Complex a -> b Source #

foldr' :: (a -> b -> b) -> b -> Complex a -> b Source #

foldl :: (b -> a -> b) -> b -> Complex a -> b Source #

foldl' :: (b -> a -> b) -> b -> Complex a -> b Source #

foldr1 :: (a -> a -> a) -> Complex a -> a Source #

foldl1 :: (a -> a -> a) -> Complex a -> a Source #

toList :: Complex a -> [a] Source #

null :: Complex a -> Bool Source #

length :: Complex a -> Int Source #

elem :: Eq a => a -> Complex a -> Bool Source #

maximum :: Ord a => Complex a -> a Source #

minimum :: Ord a => Complex a -> a Source #

sum :: Num a => Complex a -> a Source #

product :: Num a => Complex a -> a Source #

Foldable First | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => First m -> m Source #

foldMap :: Monoid m => (a -> m) -> First a -> m Source #

foldMap' :: Monoid m => (a -> m) -> First a -> m Source #

foldr :: (a -> b -> b) -> b -> First a -> b Source #

foldr' :: (a -> b -> b) -> b -> First a -> b Source #

foldl :: (b -> a -> b) -> b -> First a -> b Source #

foldl' :: (b -> a -> b) -> b -> First a -> b Source #

foldr1 :: (a -> a -> a) -> First a -> a Source #

foldl1 :: (a -> a -> a) -> First a -> a Source #

toList :: First a -> [a] Source #

null :: First a -> Bool Source #

length :: First a -> Int Source #

elem :: Eq a => a -> First a -> Bool Source #

maximum :: Ord a => First a -> a Source #

minimum :: Ord a => First a -> a Source #

sum :: Num a => First a -> a Source #

product :: Num a => First a -> a Source #

Foldable Last | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => Last m -> m Source #

foldMap :: Monoid m => (a -> m) -> Last a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Last a -> m Source #

foldr :: (a -> b -> b) -> b -> Last a -> b Source #

foldr' :: (a -> b -> b) -> b -> Last a -> b Source #

foldl :: (b -> a -> b) -> b -> Last a -> b Source #

foldl' :: (b -> a -> b) -> b -> Last a -> b Source #

foldr1 :: (a -> a -> a) -> Last a -> a Source #

foldl1 :: (a -> a -> a) -> Last a -> a Source #

toList :: Last a -> [a] Source #

null :: Last a -> Bool Source #

length :: Last a -> Int Source #

elem :: Eq a => a -> Last a -> Bool Source #

maximum :: Ord a => Last a -> a Source #

minimum :: Ord a => Last a -> a Source #

sum :: Num a => Last a -> a Source #

product :: Num a => Last a -> a Source #

Foldable Max | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => Max m -> m Source #

foldMap :: Monoid m => (a -> m) -> Max a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Max a -> m Source #

foldr :: (a -> b -> b) -> b -> Max a -> b Source #

foldr' :: (a -> b -> b) -> b -> Max a -> b Source #

foldl :: (b -> a -> b) -> b -> Max a -> b Source #

foldl' :: (b -> a -> b) -> b -> Max a -> b Source #

foldr1 :: (a -> a -> a) -> Max a -> a Source #

foldl1 :: (a -> a -> a) -> Max a -> a Source #

toList :: Max a -> [a] Source #

null :: Max a -> Bool Source #

length :: Max a -> Int Source #

elem :: Eq a => a -> Max a -> Bool Source #

maximum :: Ord a => Max a -> a Source #

minimum :: Ord a => Max a -> a Source #

sum :: Num a => Max a -> a Source #

product :: Num a => Max a -> a Source #

Foldable Min | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => Min m -> m Source #

foldMap :: Monoid m => (a -> m) -> Min a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Min a -> m Source #

foldr :: (a -> b -> b) -> b -> Min a -> b Source #

foldr' :: (a -> b -> b) -> b -> Min a -> b Source #

foldl :: (b -> a -> b) -> b -> Min a -> b Source #

foldl' :: (b -> a -> b) -> b -> Min a -> b Source #

foldr1 :: (a -> a -> a) -> Min a -> a Source #

foldl1 :: (a -> a -> a) -> Min a -> a Source #

toList :: Min a -> [a] Source #

null :: Min a -> Bool Source #

length :: Min a -> Int Source #

elem :: Eq a => a -> Min a -> Bool Source #

maximum :: Ord a => Min a -> a Source #

minimum :: Ord a => Min a -> a Source #

sum :: Num a => Min a -> a Source #

product :: Num a => Min a -> a Source #

Foldable SCC | Since: containers-0.5.9

Instance details

Defined in Data.Graph

Methods

fold :: Monoid m => SCC m -> m Source #

foldMap :: Monoid m => (a -> m) -> SCC a -> m Source #

foldMap' :: Monoid m => (a -> m) -> SCC a -> m Source #

foldr :: (a -> b -> b) -> b -> SCC a -> b Source #

foldr' :: (a -> b -> b) -> b -> SCC a -> b Source #

foldl :: (b -> a -> b) -> b -> SCC a -> b Source #

foldl' :: (b -> a -> b) -> b -> SCC a -> b Source #

foldr1 :: (a -> a -> a) -> SCC a -> a Source #

foldl1 :: (a -> a -> a) -> SCC a -> a Source #

toList :: SCC a -> [a] Source #

null :: SCC a -> Bool Source #

length :: SCC a -> Int Source #

elem :: Eq a => a -> SCC a -> Bool Source #

maximum :: Ord a => SCC a -> a Source #

minimum :: Ord a => SCC a -> a Source #

sum :: Num a => SCC a -> a Source #

product :: Num a => SCC a -> a Source #

Foldable IntMap | Folds in order of increasing key.

Instance details

Defined in Data.IntMap.Internal

Methods

fold :: Monoid m => IntMap m -> m Source #

foldMap :: Monoid m => (a -> m) -> IntMap a -> m Source #

foldMap' :: Monoid m => (a -> m) -> IntMap a -> m Source #

foldr :: (a -> b -> b) -> b -> IntMap a -> b Source #

foldr' :: (a -> b -> b) -> b -> IntMap a -> b Source #

foldl :: (b -> a -> b) -> b -> IntMap a -> b Source #

foldl' :: (b -> a -> b) -> b -> IntMap a -> b Source #

foldr1 :: (a -> a -> a) -> IntMap a -> a Source #

foldl1 :: (a -> a -> a) -> IntMap a -> a Source #

toList :: IntMap a -> [a] Source #

null :: IntMap a -> Bool Source #

length :: IntMap a -> Int Source #

elem :: Eq a => a -> IntMap a -> Bool Source #

maximum :: Ord a => IntMap a -> a Source #

minimum :: Ord a => IntMap a -> a Source #

sum :: Num a => IntMap a -> a Source #

product :: Num a => IntMap a -> a Source #

Foldable Digit |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Digit m -> m Source #

foldMap :: Monoid m => (a -> m) -> Digit a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Digit a -> m Source #

foldr :: (a -> b -> b) -> b -> Digit a -> b Source #

foldr' :: (a -> b -> b) -> b -> Digit a -> b Source #

foldl :: (b -> a -> b) -> b -> Digit a -> b Source #

foldl' :: (b -> a -> b) -> b -> Digit a -> b Source #

foldr1 :: (a -> a -> a) -> Digit a -> a Source #

foldl1 :: (a -> a -> a) -> Digit a -> a Source #

toList :: Digit a -> [a] Source #

null :: Digit a -> Bool Source #

length :: Digit a -> Int Source #

elem :: Eq a => a -> Digit a -> Bool Source #

maximum :: Ord a => Digit a -> a Source #

minimum :: Ord a => Digit a -> a Source #

sum :: Num a => Digit a -> a Source #

product :: Num a => Digit a -> a Source #

Foldable Elem |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Elem m -> m Source #

foldMap :: Monoid m => (a -> m) -> Elem a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Elem a -> m Source #

foldr :: (a -> b -> b) -> b -> Elem a -> b Source #

foldr' :: (a -> b -> b) -> b -> Elem a -> b Source #

foldl :: (b -> a -> b) -> b -> Elem a -> b Source #

foldl' :: (b -> a -> b) -> b -> Elem a -> b Source #

foldr1 :: (a -> a -> a) -> Elem a -> a Source #

foldl1 :: (a -> a -> a) -> Elem a -> a Source #

toList :: Elem a -> [a] Source #

null :: Elem a -> Bool Source #

length :: Elem a -> Int Source #

elem :: Eq a => a -> Elem a -> Bool Source #

maximum :: Ord a => Elem a -> a Source #

minimum :: Ord a => Elem a -> a Source #

sum :: Num a => Elem a -> a Source #

product :: Num a => Elem a -> a Source #

Foldable FingerTree |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => FingerTree m -> m Source #

foldMap :: Monoid m => (a -> m) -> FingerTree a -> m Source #

foldMap' :: Monoid m => (a -> m) -> FingerTree a -> m Source #

foldr :: (a -> b -> b) -> b -> FingerTree a -> b Source #

foldr' :: (a -> b -> b) -> b -> FingerTree a -> b Source #

foldl :: (b -> a -> b) -> b -> FingerTree a -> b Source #

foldl' :: (b -> a -> b) -> b -> FingerTree a -> b Source #

foldr1 :: (a -> a -> a) -> FingerTree a -> a Source #

foldl1 :: (a -> a -> a) -> FingerTree a -> a Source #

toList :: FingerTree a -> [a] Source #

null :: FingerTree a -> Bool Source #

length :: FingerTree a -> Int Source #

elem :: Eq a => a -> FingerTree a -> Bool Source #

maximum :: Ord a => FingerTree a -> a Source #

minimum :: Ord a => FingerTree a -> a Source #

sum :: Num a => FingerTree a -> a Source #

product :: Num a => FingerTree a -> a Source #

Foldable Node |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Node m -> m Source #

foldMap :: Monoid m => (a -> m) -> Node a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Node a -> m Source #

foldr :: (a -> b -> b) -> b -> Node a -> b Source #

foldr' :: (a -> b -> b) -> b -> Node a -> b Source #

foldl :: (b -> a -> b) -> b -> Node a -> b Source #

foldl' :: (b -> a -> b) -> b -> Node a -> b Source #

foldr1 :: (a -> a -> a) -> Node a -> a Source #

foldl1 :: (a -> a -> a) -> Node a -> a Source #

toList :: Node a -> [a] Source #

null :: Node a -> Bool Source #

length :: Node a -> Int Source #

elem :: Eq a => a -> Node a -> Bool Source #

maximum :: Ord a => Node a -> a Source #

minimum :: Ord a => Node a -> a Source #

sum :: Num a => Node a -> a Source #

product :: Num a => Node a -> a Source #

Foldable Seq |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Seq m -> m Source #

foldMap :: Monoid m => (a -> m) -> Seq a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Seq a -> m Source #

foldr :: (a -> b -> b) -> b -> Seq a -> b Source #

foldr' :: (a -> b -> b) -> b -> Seq a -> b Source #

foldl :: (b -> a -> b) -> b -> Seq a -> b Source #

foldl' :: (b -> a -> b) -> b -> Seq a -> b Source #

foldr1 :: (a -> a -> a) -> Seq a -> a Source #

foldl1 :: (a -> a -> a) -> Seq a -> a Source #

toList :: Seq a -> [a] Source #

null :: Seq a -> Bool Source #

length :: Seq a -> Int Source #

elem :: Eq a => a -> Seq a -> Bool Source #

maximum :: Ord a => Seq a -> a Source #

minimum :: Ord a => Seq a -> a Source #

sum :: Num a => Seq a -> a Source #

product :: Num a => Seq a -> a Source #

Foldable ViewL |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => ViewL m -> m Source #

foldMap :: Monoid m => (a -> m) -> ViewL a -> m Source #

foldMap' :: Monoid m => (a -> m) -> ViewL a -> m Source #

foldr :: (a -> b -> b) -> b -> ViewL a -> b Source #

foldr' :: (a -> b -> b) -> b -> ViewL a -> b Source #

foldl :: (b -> a -> b) -> b -> ViewL a -> b Source #

foldl' :: (b -> a -> b) -> b -> ViewL a -> b Source #

foldr1 :: (a -> a -> a) -> ViewL a -> a Source #

foldl1 :: (a -> a -> a) -> ViewL a -> a Source #

toList :: ViewL a -> [a] Source #

null :: ViewL a -> Bool Source #

length :: ViewL a -> Int Source #

elem :: Eq a => a -> ViewL a -> Bool Source #

maximum :: Ord a => ViewL a -> a Source #

minimum :: Ord a => ViewL a -> a Source #

sum :: Num a => ViewL a -> a Source #

product :: Num a => ViewL a -> a Source #

Foldable ViewR |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => ViewR m -> m Source #

foldMap :: Monoid m => (a -> m) -> ViewR a -> m Source #

foldMap' :: Monoid m => (a -> m) -> ViewR a -> m Source #

foldr :: (a -> b -> b) -> b -> ViewR a -> b Source #

foldr' :: (a -> b -> b) -> b -> ViewR a -> b Source #

foldl :: (b -> a -> b) -> b -> ViewR a -> b Source #

foldl' :: (b -> a -> b) -> b -> ViewR a -> b Source #

foldr1 :: (a -> a -> a) -> ViewR a -> a Source #

foldl1 :: (a -> a -> a) -> ViewR a -> a Source #

toList :: ViewR a -> [a] Source #

null :: ViewR a -> Bool Source #

length :: ViewR a -> Int Source #

elem :: Eq a => a -> ViewR a -> Bool Source #

maximum :: Ord a => ViewR a -> a Source #

minimum :: Ord a => ViewR a -> a Source #

sum :: Num a => ViewR a -> a Source #

product :: Num a => ViewR a -> a Source #

Foldable Set | Folds in order of increasing key.

Instance details

Defined in Data.Set.Internal

Methods

fold :: Monoid m => Set m -> m Source #

foldMap :: Monoid m => (a -> m) -> Set a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Set a -> m Source #

foldr :: (a -> b -> b) -> b -> Set a -> b Source #

foldr' :: (a -> b -> b) -> b -> Set a -> b Source #

foldl :: (b -> a -> b) -> b -> Set a -> b Source #

foldl' :: (b -> a -> b) -> b -> Set a -> b Source #

foldr1 :: (a -> a -> a) -> Set a -> a Source #

foldl1 :: (a -> a -> a) -> Set a -> a Source #

toList :: Set a -> [a] Source #

null :: Set a -> Bool Source #

length :: Set a -> Int Source #

elem :: Eq a => a -> Set a -> Bool Source #

maximum :: Ord a => Set a -> a Source #

minimum :: Ord a => Set a -> a Source #

sum :: Num a => Set a -> a Source #

product :: Num a => Set a -> a Source #

Foldable Tree | Folds in preorder

Instance details

Defined in Data.Tree

Methods

fold :: Monoid m => Tree m -> m Source #

foldMap :: Monoid m => (a -> m) -> Tree a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Tree a -> m Source #

foldr :: (a -> b -> b) -> b -> Tree a -> b Source #

foldr' :: (a -> b -> b) -> b -> Tree a -> b Source #

foldl :: (b -> a -> b) -> b -> Tree a -> b Source #

foldl' :: (b -> a -> b) -> b -> Tree a -> b Source #

foldr1 :: (a -> a -> a) -> Tree a -> a Source #

foldl1 :: (a -> a -> a) -> Tree a -> a Source #

toList :: Tree a -> [a] Source #

null :: Tree a -> Bool Source #

length :: Tree a -> Int Source #

elem :: Eq a => a -> Tree a -> Bool Source #

maximum :: Ord a => Tree a -> a Source #

minimum :: Ord a => Tree a -> a Source #

sum :: Num a => Tree a -> a Source #

product :: Num a => Tree a -> a Source #

Foldable DList |

Instance details

Defined in Data.DList.Internal

Methods

fold :: Monoid m => DList m -> m Source #

foldMap :: Monoid m => (a -> m) -> DList a -> m Source #

foldMap' :: Monoid m => (a -> m) -> DList a -> m Source #

foldr :: (a -> b -> b) -> b -> DList a -> b Source #

foldr' :: (a -> b -> b) -> b -> DList a -> b Source #

foldl :: (b -> a -> b) -> b -> DList a -> b Source #

foldl' :: (b -> a -> b) -> b -> DList a -> b Source #

foldr1 :: (a -> a -> a) -> DList a -> a Source #

foldl1 :: (a -> a -> a) -> DList a -> a Source #

toList :: DList a -> [a] Source #

null :: DList a -> Bool Source #

length :: DList a -> Int Source #

elem :: Eq a => a -> DList a -> Bool Source #

maximum :: Ord a => DList a -> a Source #

minimum :: Ord a => DList a -> a Source #

sum :: Num a => DList a -> a Source #

product :: Num a => DList a -> a Source #

Foldable NonEmpty | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => NonEmpty m -> m Source #

foldMap :: Monoid m => (a -> m) -> NonEmpty a -> m Source #

foldMap' :: Monoid m => (a -> m) -> NonEmpty a -> m Source #

foldr :: (a -> b -> b) -> b -> NonEmpty a -> b Source #

foldr' :: (a -> b -> b) -> b -> NonEmpty a -> b Source #

foldl :: (b -> a -> b) -> b -> NonEmpty a -> b Source #

foldl' :: (b -> a -> b) -> b -> NonEmpty a -> b Source #

foldr1 :: (a -> a -> a) -> NonEmpty a -> a Source #

foldl1 :: (a -> a -> a) -> NonEmpty a -> a Source #

toList :: NonEmpty a -> [a] Source #

null :: NonEmpty a -> Bool Source #

length :: NonEmpty a -> Int Source #

elem :: Eq a => a -> NonEmpty a -> Bool Source #

maximum :: Ord a => NonEmpty a -> a Source #

minimum :: Ord a => NonEmpty a -> a Source #

sum :: Num a => NonEmpty a -> a Source #

product :: Num a => NonEmpty a -> a Source #

Foldable Identity | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

fold :: Monoid m => Identity m -> m Source #

foldMap :: Monoid m => (a -> m) -> Identity a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Identity a -> m Source #

foldr :: (a -> b -> b) -> b -> Identity a -> b Source #

foldr' :: (a -> b -> b) -> b -> Identity a -> b Source #

foldl :: (b -> a -> b) -> b -> Identity a -> b Source #

foldl' :: (b -> a -> b) -> b -> Identity a -> b Source #

foldr1 :: (a -> a -> a) -> Identity a -> a Source #

foldl1 :: (a -> a -> a) -> Identity a -> a Source #

toList :: Identity a -> [a] Source #

null :: Identity a -> Bool Source #

length :: Identity a -> Int Source #

elem :: Eq a => a -> Identity a -> Bool Source #

maximum :: Ord a => Identity a -> a Source #

minimum :: Ord a => Identity a -> a Source #

sum :: Num a => Identity a -> a Source #

product :: Num a => Identity a -> a Source #

Foldable First | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => First m -> m Source #

foldMap :: Monoid m => (a -> m) -> First a -> m Source #

foldMap' :: Monoid m => (a -> m) -> First a -> m Source #

foldr :: (a -> b -> b) -> b -> First a -> b Source #

foldr' :: (a -> b -> b) -> b -> First a -> b Source #

foldl :: (b -> a -> b) -> b -> First a -> b Source #

foldl' :: (b -> a -> b) -> b -> First a -> b Source #

foldr1 :: (a -> a -> a) -> First a -> a Source #

foldl1 :: (a -> a -> a) -> First a -> a Source #

toList :: First a -> [a] Source #

null :: First a -> Bool Source #

length :: First a -> Int Source #

elem :: Eq a => a -> First a -> Bool Source #

maximum :: Ord a => First a -> a Source #

minimum :: Ord a => First a -> a Source #

sum :: Num a => First a -> a Source #

product :: Num a => First a -> a Source #

Foldable Last | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Last m -> m Source #

foldMap :: Monoid m => (a -> m) -> Last a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Last a -> m Source #

foldr :: (a -> b -> b) -> b -> Last a -> b Source #

foldr' :: (a -> b -> b) -> b -> Last a -> b Source #

foldl :: (b -> a -> b) -> b -> Last a -> b Source #

foldl' :: (b -> a -> b) -> b -> Last a -> b Source #

foldr1 :: (a -> a -> a) -> Last a -> a Source #

foldl1 :: (a -> a -> a) -> Last a -> a Source #

toList :: Last a -> [a] Source #

null :: Last a -> Bool Source #

length :: Last a -> Int Source #

elem :: Eq a => a -> Last a -> Bool Source #

maximum :: Ord a => Last a -> a Source #

minimum :: Ord a => Last a -> a Source #

sum :: Num a => Last a -> a Source #

product :: Num a => Last a -> a Source #

Foldable Down | Since: base-4.12.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Down m -> m Source #

foldMap :: Monoid m => (a -> m) -> Down a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Down a -> m Source #

foldr :: (a -> b -> b) -> b -> Down a -> b Source #

foldr' :: (a -> b -> b) -> b -> Down a -> b Source #

foldl :: (b -> a -> b) -> b -> Down a -> b Source #

foldl' :: (b -> a -> b) -> b -> Down a -> b Source #

foldr1 :: (a -> a -> a) -> Down a -> a Source #

foldl1 :: (a -> a -> a) -> Down a -> a Source #

toList :: Down a -> [a] Source #

null :: Down a -> Bool Source #

length :: Down a -> Int Source #

elem :: Eq a => a -> Down a -> Bool Source #

maximum :: Ord a => Down a -> a Source #

minimum :: Ord a => Down a -> a Source #

sum :: Num a => Down a -> a Source #

product :: Num a => Down a -> a Source #

Foldable Dual | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Dual m -> m Source #

foldMap :: Monoid m => (a -> m) -> Dual a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Dual a -> m Source #

foldr :: (a -> b -> b) -> b -> Dual a -> b Source #

foldr' :: (a -> b -> b) -> b -> Dual a -> b Source #

foldl :: (b -> a -> b) -> b -> Dual a -> b Source #

foldl' :: (b -> a -> b) -> b -> Dual a -> b Source #

foldr1 :: (a -> a -> a) -> Dual a -> a Source #

foldl1 :: (a -> a -> a) -> Dual a -> a Source #

toList :: Dual a -> [a] Source #

null :: Dual a -> Bool Source #

length :: Dual a -> Int Source #

elem :: Eq a => a -> Dual a -> Bool Source #

maximum :: Ord a => Dual a -> a Source #

minimum :: Ord a => Dual a -> a Source #

sum :: Num a => Dual a -> a Source #

product :: Num a => Dual a -> a Source #

Foldable Product | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Product m -> m Source #

foldMap :: Monoid m => (a -> m) -> Product a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Product a -> m Source #

foldr :: (a -> b -> b) -> b -> Product a -> b Source #

foldr' :: (a -> b -> b) -> b -> Product a -> b Source #

foldl :: (b -> a -> b) -> b -> Product a -> b Source #

foldl' :: (b -> a -> b) -> b -> Product a -> b Source #

foldr1 :: (a -> a -> a) -> Product a -> a Source #

foldl1 :: (a -> a -> a) -> Product a -> a Source #

toList :: Product a -> [a] Source #

null :: Product a -> Bool Source #

length :: Product a -> Int Source #

elem :: Eq a => a -> Product a -> Bool Source #

maximum :: Ord a => Product a -> a Source #

minimum :: Ord a => Product a -> a Source #

sum :: Num a => Product a -> a Source #

product :: Num a => Product a -> a Source #

Foldable Sum | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Sum m -> m Source #

foldMap :: Monoid m => (a -> m) -> Sum a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Sum a -> m Source #

foldr :: (a -> b -> b) -> b -> Sum a -> b Source #

foldr' :: (a -> b -> b) -> b -> Sum a -> b Source #

foldl :: (b -> a -> b) -> b -> Sum a -> b Source #

foldl' :: (b -> a -> b) -> b -> Sum a -> b Source #

foldr1 :: (a -> a -> a) -> Sum a -> a Source #

foldl1 :: (a -> a -> a) -> Sum a -> a Source #

toList :: Sum a -> [a] Source #

null :: Sum a -> Bool Source #

length :: Sum a -> Int Source #

elem :: Eq a => a -> Sum a -> Bool Source #

maximum :: Ord a => Sum a -> a Source #

minimum :: Ord a => Sum a -> a Source #

sum :: Num a => Sum a -> a Source #

product :: Num a => Sum a -> a Source #

Foldable Par1 | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Par1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> Par1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Par1 a -> m Source #

foldr :: (a -> b -> b) -> b -> Par1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> Par1 a -> b Source #

foldl :: (b -> a -> b) -> b -> Par1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> Par1 a -> b Source #

foldr1 :: (a -> a -> a) -> Par1 a -> a Source #

foldl1 :: (a -> a -> a) -> Par1 a -> a Source #

toList :: Par1 a -> [a] Source #

null :: Par1 a -> Bool Source #

length :: Par1 a -> Int Source #

elem :: Eq a => a -> Par1 a -> Bool Source #

maximum :: Ord a => Par1 a -> a Source #

minimum :: Ord a => Par1 a -> a Source #

sum :: Num a => Par1 a -> a Source #

product :: Num a => Par1 a -> a Source #

Foldable Hashed |

Instance details

Defined in Data.Hashable.Class

Methods

fold :: Monoid m => Hashed m -> m Source #

foldMap :: Monoid m => (a -> m) -> Hashed a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Hashed a -> m Source #

foldr :: (a -> b -> b) -> b -> Hashed a -> b Source #

foldr' :: (a -> b -> b) -> b -> Hashed a -> b Source #

foldl :: (b -> a -> b) -> b -> Hashed a -> b Source #

foldl' :: (b -> a -> b) -> b -> Hashed a -> b Source #

foldr1 :: (a -> a -> a) -> Hashed a -> a Source #

foldl1 :: (a -> a -> a) -> Hashed a -> a Source #

toList :: Hashed a -> [a] Source #

null :: Hashed a -> Bool Source #

length :: Hashed a -> Int Source #

elem :: Eq a => a -> Hashed a -> Bool Source #

maximum :: Ord a => Hashed a -> a Source #

minimum :: Ord a => Hashed a -> a Source #

sum :: Num a => Hashed a -> a Source #

product :: Num a => Hashed a -> a Source #

Foldable Array |

Instance details

Defined in Data.Primitive.Array

Methods

fold :: Monoid m => Array m -> m Source #

foldMap :: Monoid m => (a -> m) -> Array a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Array a -> m Source #

foldr :: (a -> b -> b) -> b -> Array a -> b Source #

foldr' :: (a -> b -> b) -> b -> Array a -> b Source #

foldl :: (b -> a -> b) -> b -> Array a -> b Source #

foldl' :: (b -> a -> b) -> b -> Array a -> b Source #

foldr1 :: (a -> a -> a) -> Array a -> a Source #

foldl1 :: (a -> a -> a) -> Array a -> a Source #

toList :: Array a -> [a] Source #

null :: Array a -> Bool Source #

length :: Array a -> Int Source #

elem :: Eq a => a -> Array a -> Bool Source #

maximum :: Ord a => Array a -> a Source #

minimum :: Ord a => Array a -> a Source #

sum :: Num a => Array a -> a Source #

product :: Num a => Array a -> a Source #

Foldable SmallArray |

Instance details

Defined in Data.Primitive.SmallArray

Methods

fold :: Monoid m => SmallArray m -> m Source #

foldMap :: Monoid m => (a -> m) -> SmallArray a -> m Source #

foldMap' :: Monoid m => (a -> m) -> SmallArray a -> m Source #

foldr :: (a -> b -> b) -> b -> SmallArray a -> b Source #

foldr' :: (a -> b -> b) -> b -> SmallArray a -> b Source #

foldl :: (b -> a -> b) -> b -> SmallArray a -> b Source #

foldl' :: (b -> a -> b) -> b -> SmallArray a -> b Source #

foldr1 :: (a -> a -> a) -> SmallArray a -> a Source #

foldl1 :: (a -> a -> a) -> SmallArray a -> a Source #

toList :: SmallArray a -> [a] Source #

null :: SmallArray a -> Bool Source #

length :: SmallArray a -> Int Source #

elem :: Eq a => a -> SmallArray a -> Bool Source #

maximum :: Ord a => SmallArray a -> a Source #

minimum :: Ord a => SmallArray a -> a Source #

sum :: Num a => SmallArray a -> a Source #

product :: Num a => SmallArray a -> a Source #

Foldable HashSet |

Instance details

Defined in Data.HashSet.Internal

Methods

fold :: Monoid m => HashSet m -> m Source #

foldMap :: Monoid m => (a -> m) -> HashSet a -> m Source #

foldMap' :: Monoid m => (a -> m) -> HashSet a -> m Source #

foldr :: (a -> b -> b) -> b -> HashSet a -> b Source #

foldr' :: (a -> b -> b) -> b -> HashSet a -> b Source #

foldl :: (b -> a -> b) -> b -> HashSet a -> b Source #

foldl' :: (b -> a -> b) -> b -> HashSet a -> b Source #

foldr1 :: (a -> a -> a) -> HashSet a -> a Source #

foldl1 :: (a -> a -> a) -> HashSet a -> a Source #

toList :: HashSet a -> [a] Source #

null :: HashSet a -> Bool Source #

length :: HashSet a -> Int Source #

elem :: Eq a => a -> HashSet a -> Bool Source #

maximum :: Ord a => HashSet a -> a Source #

minimum :: Ord a => HashSet a -> a Source #

sum :: Num a => HashSet a -> a Source #

product :: Num a => HashSet a -> a Source #

Foldable Vector |

Instance details

Defined in Data.Vector

Methods

fold :: Monoid m => Vector m -> m Source #

foldMap :: Monoid m => (a -> m) -> Vector a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Vector a -> m Source #

foldr :: (a -> b -> b) -> b -> Vector a -> b Source #

foldr' :: (a -> b -> b) -> b -> Vector a -> b Source #

foldl :: (b -> a -> b) -> b -> Vector a -> b Source #

foldl' :: (b -> a -> b) -> b -> Vector a -> b Source #

foldr1 :: (a -> a -> a) -> Vector a -> a Source #

foldl1 :: (a -> a -> a) -> Vector a -> a Source #

toList :: Vector a -> [a] Source #

null :: Vector a -> Bool Source #

length :: Vector a -> Int Source #

elem :: Eq a => a -> Vector a -> Bool Source #

maximum :: Ord a => Vector a -> a Source #

minimum :: Ord a => Vector a -> a Source #

sum :: Num a => Vector a -> a Source #

product :: Num a => Vector a -> a Source #

Foldable Vector |

Instance details

Defined in Data.Vector.Strict

Methods

fold :: Monoid m => Vector m -> m Source #

foldMap :: Monoid m => (a -> m) -> Vector a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Vector a -> m Source #

foldr :: (a -> b -> b) -> b -> Vector a -> b Source #

foldr' :: (a -> b -> b) -> b -> Vector a -> b Source #

foldl :: (b -> a -> b) -> b -> Vector a -> b Source #

foldl' :: (b -> a -> b) -> b -> Vector a -> b Source #

foldr1 :: (a -> a -> a) -> Vector a -> a Source #

foldl1 :: (a -> a -> a) -> Vector a -> a Source #

toList :: Vector a -> [a] Source #

null :: Vector a -> Bool Source #

length :: Vector a -> Int Source #

elem :: Eq a => a -> Vector a -> Bool Source #

maximum :: Ord a => Vector a -> a Source #

minimum :: Ord a => Vector a -> a Source #

sum :: Num a => Vector a -> a Source #

product :: Num a => Vector a -> a Source #

Foldable Maybe | Since: base-2.1

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Maybe m -> m Source #

foldMap :: Monoid m => (a -> m) -> Maybe a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Maybe a -> m Source #

foldr :: (a -> b -> b) -> b -> Maybe a -> b Source #

foldr' :: (a -> b -> b) -> b -> Maybe a -> b Source #

foldl :: (b -> a -> b) -> b -> Maybe a -> b Source #

foldl' :: (b -> a -> b) -> b -> Maybe a -> b Source #

foldr1 :: (a -> a -> a) -> Maybe a -> a Source #

foldl1 :: (a -> a -> a) -> Maybe a -> a Source #

toList :: Maybe a -> [a] Source #

null :: Maybe a -> Bool Source #

length :: Maybe a -> Int Source #

elem :: Eq a => a -> Maybe a -> Bool Source #

maximum :: Ord a => Maybe a -> a Source #

minimum :: Ord a => Maybe a -> a Source #

sum :: Num a => Maybe a -> a Source #

product :: Num a => Maybe a -> a Source #

Foldable Solo | Since: base-4.15

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Solo m -> m Source #

foldMap :: Monoid m => (a -> m) -> Solo a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Solo a -> m Source #

foldr :: (a -> b -> b) -> b -> Solo a -> b Source #

foldr' :: (a -> b -> b) -> b -> Solo a -> b Source #

foldl :: (b -> a -> b) -> b -> Solo a -> b Source #

foldl' :: (b -> a -> b) -> b -> Solo a -> b Source #

foldr1 :: (a -> a -> a) -> Solo a -> a Source #

foldl1 :: (a -> a -> a) -> Solo a -> a Source #

toList :: Solo a -> [a] Source #

null :: Solo a -> Bool Source #

length :: Solo a -> Int Source #

elem :: Eq a => a -> Solo a -> Bool Source #

maximum :: Ord a => Solo a -> a Source #

minimum :: Ord a => Solo a -> a Source #

sum :: Num a => Solo a -> a Source #

product :: Num a => Solo a -> a Source #

Foldable [] | Since: base-2.1

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => [m] -> m Source #

foldMap :: Monoid m => (a -> m) -> [a] -> m Source #

foldMap' :: Monoid m => (a -> m) -> [a] -> m Source #

foldr :: (a -> b -> b) -> b -> [a] -> b Source #

foldr' :: (a -> b -> b) -> b -> [a] -> b Source #

foldl :: (b -> a -> b) -> b -> [a] -> b Source #

foldl' :: (b -> a -> b) -> b -> [a] -> b Source #

foldr1 :: (a -> a -> a) -> [a] -> a Source #

foldl1 :: (a -> a -> a) -> [a] -> a Source #

toList :: [a] -> [a] Source #

null :: [a] -> Bool Source #

length :: [a] -> Int Source #

elem :: Eq a => a -> [a] -> Bool Source #

maximum :: Ord a => [a] -> a Source #

minimum :: Ord a => [a] -> a Source #

sum :: Num a => [a] -> a Source #

product :: Num a => [a] -> a Source #

Foldable (Arg a) | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => Arg a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Arg a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Arg a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Arg a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Arg a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Arg a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Arg a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Arg a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Arg a a0 -> a0 Source #

toList :: Arg a a0 -> [a0] Source #

null :: Arg a a0 -> Bool Source #

length :: Arg a a0 -> Int Source #

elem :: Eq a0 => a0 -> Arg a a0 -> Bool Source #

maximum :: Ord a0 => Arg a a0 -> a0 Source #

minimum :: Ord a0 => Arg a a0 -> a0 Source #

sum :: Num a0 => Arg a a0 -> a0 Source #

product :: Num a0 => Arg a a0 -> a0 Source #

Foldable (Map k) | Folds in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

fold :: Monoid m => Map k m -> m Source #

foldMap :: Monoid m => (a -> m) -> Map k a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Map k a -> m Source #

foldr :: (a -> b -> b) -> b -> Map k a -> b Source #

foldr' :: (a -> b -> b) -> b -> Map k a -> b Source #

foldl :: (b -> a -> b) -> b -> Map k a -> b Source #

foldl' :: (b -> a -> b) -> b -> Map k a -> b Source #

foldr1 :: (a -> a -> a) -> Map k a -> a Source #

foldl1 :: (a -> a -> a) -> Map k a -> a Source #

toList :: Map k a -> [a] Source #

null :: Map k a -> Bool Source #

length :: Map k a -> Int Source #

elem :: Eq a => a -> Map k a -> Bool Source #

maximum :: Ord a => Map k a -> a Source #

minimum :: Ord a => Map k a -> a Source #

sum :: Num a => Map k a -> a Source #

product :: Num a => Map k a -> a Source #

Foldable f => Foldable (Cofree f) |

Instance details

Defined in Control.Comonad.Cofree

Methods

fold :: Monoid m => Cofree f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Cofree f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Cofree f a -> m Source #

foldr :: (a -> b -> b) -> b -> Cofree f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Cofree f a -> b Source #

foldl :: (b -> a -> b) -> b -> Cofree f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Cofree f a -> b Source #

foldr1 :: (a -> a -> a) -> Cofree f a -> a Source #

foldl1 :: (a -> a -> a) -> Cofree f a -> a Source #

toList :: Cofree f a -> [a] Source #

null :: Cofree f a -> Bool Source #

length :: Cofree f a -> Int Source #

elem :: Eq a => a -> Cofree f a -> Bool Source #

maximum :: Ord a => Cofree f a -> a Source #

minimum :: Ord a => Cofree f a -> a Source #

sum :: Num a => Cofree f a -> a Source #

product :: Num a => Cofree f a -> a Source #

Foldable f => Foldable (Free f) |

Instance details

Defined in Control.Monad.Free

Methods

fold :: Monoid m => Free f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Free f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Free f a -> m Source #

foldr :: (a -> b -> b) -> b -> Free f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Free f a -> b Source #

foldl :: (b -> a -> b) -> b -> Free f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Free f a -> b Source #

foldr1 :: (a -> a -> a) -> Free f a -> a Source #

foldl1 :: (a -> a -> a) -> Free f a -> a Source #

toList :: Free f a -> [a] Source #

null :: Free f a -> Bool Source #

length :: Free f a -> Int Source #

elem :: Eq a => a -> Free f a -> Bool Source #

maximum :: Ord a => Free f a -> a Source #

minimum :: Ord a => Free f a -> a Source #

sum :: Num a => Free f a -> a Source #

product :: Num a => Free f a -> a Source #

Foldable (Array i) | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Array i m -> m Source #

foldMap :: Monoid m => (a -> m) -> Array i a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Array i a -> m Source #

foldr :: (a -> b -> b) -> b -> Array i a -> b Source #

foldr' :: (a -> b -> b) -> b -> Array i a -> b Source #

foldl :: (b -> a -> b) -> b -> Array i a -> b Source #

foldl' :: (b -> a -> b) -> b -> Array i a -> b Source #

foldr1 :: (a -> a -> a) -> Array i a -> a Source #

foldl1 :: (a -> a -> a) -> Array i a -> a Source #

toList :: Array i a -> [a] Source #

null :: Array i a -> Bool Source #

length :: Array i a -> Int Source #

elem :: Eq a => a -> Array i a -> Bool Source #

maximum :: Ord a => Array i a -> a Source #

minimum :: Ord a => Array i a -> a Source #

sum :: Num a => Array i a -> a Source #

product :: Num a => Array i a -> a Source #

Foldable (Either a) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Either a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Either a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Either a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Either a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Either a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Either a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Either a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 Source #

toList :: Either a a0 -> [a0] Source #

null :: Either a a0 -> Bool Source #

length :: Either a a0 -> Int Source #

elem :: Eq a0 => a0 -> Either a a0 -> Bool Source #

maximum :: Ord a0 => Either a a0 -> a0 Source #

minimum :: Ord a0 => Either a a0 -> a0 Source #

sum :: Num a0 => Either a a0 -> a0 Source #

product :: Num a0 => Either a a0 -> a0 Source #

Foldable (Proxy :: Type -> Type) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Proxy m -> m Source #

foldMap :: Monoid m => (a -> m) -> Proxy a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Proxy a -> m Source #

foldr :: (a -> b -> b) -> b -> Proxy a -> b Source #

foldr' :: (a -> b -> b) -> b -> Proxy a -> b Source #

foldl :: (b -> a -> b) -> b -> Proxy a -> b Source #

foldl' :: (b -> a -> b) -> b -> Proxy a -> b Source #

foldr1 :: (a -> a -> a) -> Proxy a -> a Source #

foldl1 :: (a -> a -> a) -> Proxy a -> a Source #

toList :: Proxy a -> [a] Source #

null :: Proxy a -> Bool Source #

length :: Proxy a -> Int Source #

elem :: Eq a => a -> Proxy a -> Bool Source #

maximum :: Ord a => Proxy a -> a Source #

minimum :: Ord a => Proxy a -> a Source #

sum :: Num a => Proxy a -> a Source #

product :: Num a => Proxy a -> a Source #

Foldable (U1 :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => U1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> U1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> U1 a -> m Source #

foldr :: (a -> b -> b) -> b -> U1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> U1 a -> b Source #

foldl :: (b -> a -> b) -> b -> U1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> U1 a -> b Source #

foldr1 :: (a -> a -> a) -> U1 a -> a Source #

foldl1 :: (a -> a -> a) -> U1 a -> a Source #

toList :: U1 a -> [a] Source #

null :: U1 a -> Bool Source #

length :: U1 a -> Int Source #

elem :: Eq a => a -> U1 a -> Bool Source #

maximum :: Ord a => U1 a -> a Source #

minimum :: Ord a => U1 a -> a Source #

sum :: Num a => U1 a -> a Source #

product :: Num a => U1 a -> a Source #

Foldable (UAddr :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UAddr m -> m Source #

foldMap :: Monoid m => (a -> m) -> UAddr a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UAddr a -> m Source #

foldr :: (a -> b -> b) -> b -> UAddr a -> b Source #

foldr' :: (a -> b -> b) -> b -> UAddr a -> b Source #

foldl :: (b -> a -> b) -> b -> UAddr a -> b Source #

foldl' :: (b -> a -> b) -> b -> UAddr a -> b Source #

foldr1 :: (a -> a -> a) -> UAddr a -> a Source #

foldl1 :: (a -> a -> a) -> UAddr a -> a Source #

toList :: UAddr a -> [a] Source #

null :: UAddr a -> Bool Source #

length :: UAddr a -> Int Source #

elem :: Eq a => a -> UAddr a -> Bool Source #

maximum :: Ord a => UAddr a -> a Source #

minimum :: Ord a => UAddr a -> a Source #

sum :: Num a => UAddr a -> a Source #

product :: Num a => UAddr a -> a Source #

Foldable (UChar :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UChar m -> m Source #

foldMap :: Monoid m => (a -> m) -> UChar a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UChar a -> m Source #

foldr :: (a -> b -> b) -> b -> UChar a -> b Source #

foldr' :: (a -> b -> b) -> b -> UChar a -> b Source #

foldl :: (b -> a -> b) -> b -> UChar a -> b Source #

foldl' :: (b -> a -> b) -> b -> UChar a -> b Source #

foldr1 :: (a -> a -> a) -> UChar a -> a Source #

foldl1 :: (a -> a -> a) -> UChar a -> a Source #

toList :: UChar a -> [a] Source #

null :: UChar a -> Bool Source #

length :: UChar a -> Int Source #

elem :: Eq a => a -> UChar a -> Bool Source #

maximum :: Ord a => UChar a -> a Source #

minimum :: Ord a => UChar a -> a Source #

sum :: Num a => UChar a -> a Source #

product :: Num a => UChar a -> a Source #

Foldable (UDouble :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UDouble m -> m Source #

foldMap :: Monoid m => (a -> m) -> UDouble a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UDouble a -> m Source #

foldr :: (a -> b -> b) -> b -> UDouble a -> b Source #

foldr' :: (a -> b -> b) -> b -> UDouble a -> b Source #

foldl :: (b -> a -> b) -> b -> UDouble a -> b Source #

foldl' :: (b -> a -> b) -> b -> UDouble a -> b Source #

foldr1 :: (a -> a -> a) -> UDouble a -> a Source #

foldl1 :: (a -> a -> a) -> UDouble a -> a Source #

toList :: UDouble a -> [a] Source #

null :: UDouble a -> Bool Source #

length :: UDouble a -> Int Source #

elem :: Eq a => a -> UDouble a -> Bool Source #

maximum :: Ord a => UDouble a -> a Source #

minimum :: Ord a => UDouble a -> a Source #

sum :: Num a => UDouble a -> a Source #

product :: Num a => UDouble a -> a Source #

Foldable (UFloat :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UFloat m -> m Source #

foldMap :: Monoid m => (a -> m) -> UFloat a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UFloat a -> m Source #

foldr :: (a -> b -> b) -> b -> UFloat a -> b Source #

foldr' :: (a -> b -> b) -> b -> UFloat a -> b Source #

foldl :: (b -> a -> b) -> b -> UFloat a -> b Source #

foldl' :: (b -> a -> b) -> b -> UFloat a -> b Source #

foldr1 :: (a -> a -> a) -> UFloat a -> a Source #

foldl1 :: (a -> a -> a) -> UFloat a -> a Source #

toList :: UFloat a -> [a] Source #

null :: UFloat a -> Bool Source #

length :: UFloat a -> Int Source #

elem :: Eq a => a -> UFloat a -> Bool Source #

maximum :: Ord a => UFloat a -> a Source #

minimum :: Ord a => UFloat a -> a Source #

sum :: Num a => UFloat a -> a Source #

product :: Num a => UFloat a -> a Source #

Foldable (UInt :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UInt m -> m Source #

foldMap :: Monoid m => (a -> m) -> UInt a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UInt a -> m Source #

foldr :: (a -> b -> b) -> b -> UInt a -> b Source #

foldr' :: (a -> b -> b) -> b -> UInt a -> b Source #

foldl :: (b -> a -> b) -> b -> UInt a -> b Source #

foldl' :: (b -> a -> b) -> b -> UInt a -> b Source #

foldr1 :: (a -> a -> a) -> UInt a -> a Source #

foldl1 :: (a -> a -> a) -> UInt a -> a Source #

toList :: UInt a -> [a] Source #

null :: UInt a -> Bool Source #

length :: UInt a -> Int Source #

elem :: Eq a => a -> UInt a -> Bool Source #

maximum :: Ord a => UInt a -> a Source #

minimum :: Ord a => UInt a -> a Source #

sum :: Num a => UInt a -> a Source #

product :: Num a => UInt a -> a Source #

Foldable (UWord :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UWord m -> m Source #

foldMap :: Monoid m => (a -> m) -> UWord a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UWord a -> m Source #

foldr :: (a -> b -> b) -> b -> UWord a -> b Source #

foldr' :: (a -> b -> b) -> b -> UWord a -> b Source #

foldl :: (b -> a -> b) -> b -> UWord a -> b Source #

foldl' :: (b -> a -> b) -> b -> UWord a -> b Source #

foldr1 :: (a -> a -> a) -> UWord a -> a Source #

foldl1 :: (a -> a -> a) -> UWord a -> a Source #

toList :: UWord a -> [a] Source #

null :: UWord a -> Bool Source #

length :: UWord a -> Int Source #

elem :: Eq a => a -> UWord a -> Bool Source #

maximum :: Ord a => UWord a -> a Source #

minimum :: Ord a => UWord a -> a Source #

sum :: Num a => UWord a -> a Source #

product :: Num a => UWord a -> a Source #

Foldable (V1 :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => V1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> V1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> V1 a -> m Source #

foldr :: (a -> b -> b) -> b -> V1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> V1 a -> b Source #

foldl :: (b -> a -> b) -> b -> V1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> V1 a -> b Source #

foldr1 :: (a -> a -> a) -> V1 a -> a Source #

foldl1 :: (a -> a -> a) -> V1 a -> a Source #

toList :: V1 a -> [a] Source #

null :: V1 a -> Bool Source #

length :: V1 a -> Int Source #

elem :: Eq a => a -> V1 a -> Bool Source #

maximum :: Ord a => V1 a -> a Source #

minimum :: Ord a => V1 a -> a Source #

sum :: Num a => V1 a -> a Source #

product :: Num a => V1 a -> a Source #

MonoFoldable mono => Foldable (WrappedMono mono) |

Instance details

Defined in Data.MonoTraversable

Methods

fold :: Monoid m => WrappedMono mono m -> m Source #

foldMap :: Monoid m => (a -> m) -> WrappedMono mono a -> m Source #

foldMap' :: Monoid m => (a -> m) -> WrappedMono mono a -> m Source #

foldr :: (a -> b -> b) -> b -> WrappedMono mono a -> b Source #

foldr' :: (a -> b -> b) -> b -> WrappedMono mono a -> b Source #

foldl :: (b -> a -> b) -> b -> WrappedMono mono a -> b Source #

foldl' :: (b -> a -> b) -> b -> WrappedMono mono a -> b Source #

foldr1 :: (a -> a -> a) -> WrappedMono mono a -> a Source #

foldl1 :: (a -> a -> a) -> WrappedMono mono a -> a Source #

toList :: WrappedMono mono a -> [a] Source #

null :: WrappedMono mono a -> Bool Source #

length :: WrappedMono mono a -> Int Source #

elem :: Eq a => a -> WrappedMono mono a -> Bool Source #

maximum :: Ord a => WrappedMono mono a -> a Source #

minimum :: Ord a => WrappedMono mono a -> a Source #

sum :: Num a => WrappedMono mono a -> a Source #

product :: Num a => WrappedMono mono a -> a Source #

Foldable f => Foldable (WrappedPoly f) |

Instance details

Defined in Data.MonoTraversable

Methods

fold :: Monoid m => WrappedPoly f m -> m Source #

foldMap :: Monoid m => (a -> m) -> WrappedPoly f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> WrappedPoly f a -> m Source #

foldr :: (a -> b -> b) -> b -> WrappedPoly f a -> b Source #

foldr' :: (a -> b -> b) -> b -> WrappedPoly f a -> b Source #

foldl :: (b -> a -> b) -> b -> WrappedPoly f a -> b Source #

foldl' :: (b -> a -> b) -> b -> WrappedPoly f a -> b Source #

foldr1 :: (a -> a -> a) -> WrappedPoly f a -> a Source #

foldl1 :: (a -> a -> a) -> WrappedPoly f a -> a Source #

toList :: WrappedPoly f a -> [a] Source #

null :: WrappedPoly f a -> Bool Source #

length :: WrappedPoly f a -> Int Source #

elem :: Eq a => a -> WrappedPoly f a -> Bool Source #

maximum :: Ord a => WrappedPoly f a -> a Source #

minimum :: Ord a => WrappedPoly f a -> a Source #

sum :: Num a => WrappedPoly f a -> a Source #

product :: Num a => WrappedPoly f a -> a Source #

Foldable f => Foldable (Lift f) |

Instance details

Defined in Control.Applicative.Lift

Methods

fold :: Monoid m => Lift f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Lift f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Lift f a -> m Source #

foldr :: (a -> b -> b) -> b -> Lift f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Lift f a -> b Source #

foldl :: (b -> a -> b) -> b -> Lift f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Lift f a -> b Source #

foldr1 :: (a -> a -> a) -> Lift f a -> a Source #

foldl1 :: (a -> a -> a) -> Lift f a -> a Source #

toList :: Lift f a -> [a] Source #

null :: Lift f a -> Bool Source #

length :: Lift f a -> Int Source #

elem :: Eq a => a -> Lift f a -> Bool Source #

maximum :: Ord a => Lift f a -> a Source #

minimum :: Ord a => Lift f a -> a Source #

sum :: Num a => Lift f a -> a Source #

product :: Num a => Lift f a -> a Source #

Foldable f => Foldable (MaybeT f) |

Instance details

Defined in Control.Monad.Trans.Maybe

Methods

fold :: Monoid m => MaybeT f m -> m Source #

foldMap :: Monoid m => (a -> m) -> MaybeT f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> MaybeT f a -> m Source #

foldr :: (a -> b -> b) -> b -> MaybeT f a -> b Source #

foldr' :: (a -> b -> b) -> b -> MaybeT f a -> b Source #

foldl :: (b -> a -> b) -> b -> MaybeT f a -> b Source #

foldl' :: (b -> a -> b) -> b -> MaybeT f a -> b Source #

foldr1 :: (a -> a -> a) -> MaybeT f a -> a Source #

foldl1 :: (a -> a -> a) -> MaybeT f a -> a Source #

toList :: MaybeT f a -> [a] Source #

null :: MaybeT f a -> Bool Source #

length :: MaybeT f a -> Int Source #

elem :: Eq a => a -> MaybeT f a -> Bool Source #

maximum :: Ord a => MaybeT f a -> a Source #

minimum :: Ord a => MaybeT f a -> a Source #

sum :: Num a => MaybeT f a -> a Source #

product :: Num a => MaybeT f a -> a Source #

Foldable (HashMap k) |

Instance details

Defined in Data.HashMap.Internal

Methods

fold :: Monoid m => HashMap k m -> m Source #

foldMap :: Monoid m => (a -> m) -> HashMap k a -> m Source #

foldMap' :: Monoid m => (a -> m) -> HashMap k a -> m Source #

foldr :: (a -> b -> b) -> b -> HashMap k a -> b Source #

foldr' :: (a -> b -> b) -> b -> HashMap k a -> b Source #

foldl :: (b -> a -> b) -> b -> HashMap k a -> b Source #

foldl' :: (b -> a -> b) -> b -> HashMap k a -> b Source #

foldr1 :: (a -> a -> a) -> HashMap k a -> a Source #

foldl1 :: (a -> a -> a) -> HashMap k a -> a Source #

toList :: HashMap k a -> [a] Source #

null :: HashMap k a -> Bool Source #

length :: HashMap k a -> Int Source #

elem :: Eq a => a -> HashMap k a -> Bool Source #

maximum :: Ord a => HashMap k a -> a Source #

minimum :: Ord a => HashMap k a -> a Source #

sum :: Num a => HashMap k a -> a Source #

product :: Num a => HashMap k a -> a Source #

Foldable ((,) a) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => (a, m) -> m Source #

foldMap :: Monoid m => (a0 -> m) -> (a, a0) -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> (a, a0) -> m Source #

foldr :: (a0 -> b -> b) -> b -> (a, a0) -> b Source #

foldr' :: (a0 -> b -> b) -> b -> (a, a0) -> b Source #

foldl :: (b -> a0 -> b) -> b -> (a, a0) -> b Source #

foldl' :: (b -> a0 -> b) -> b -> (a, a0) -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> (a, a0) -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> (a, a0) -> a0 Source #

toList :: (a, a0) -> [a0] Source #

null :: (a, a0) -> Bool Source #

length :: (a, a0) -> Int Source #

elem :: Eq a0 => a0 -> (a, a0) -> Bool Source #

maximum :: Ord a0 => (a, a0) -> a0 Source #

minimum :: Ord a0 => (a, a0) -> a0 Source #

sum :: Num a0 => (a, a0) -> a0 Source #

product :: Num a0 => (a, a0) -> a0 Source #

Foldable (bi a) => Foldable (Biap bi a) |

Instance details

Defined in Data.Bifunctor.Biap

Methods

fold :: Monoid m => Biap bi a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Biap bi a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Biap bi a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Biap bi a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Biap bi a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Biap bi a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Biap bi a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Biap bi a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Biap bi a a0 -> a0 Source #

toList :: Biap bi a a0 -> [a0] Source #

null :: Biap bi a a0 -> Bool Source #

length :: Biap bi a a0 -> Int Source #

elem :: Eq a0 => a0 -> Biap bi a a0 -> Bool Source #

maximum :: Ord a0 => Biap bi a a0 -> a0 Source #

minimum :: Ord a0 => Biap bi a a0 -> a0 Source #

sum :: Num a0 => Biap bi a a0 -> a0 Source #

product :: Num a0 => Biap bi a a0 -> a0 Source #

Bifoldable p => Foldable (Fix p) |

Instance details

Defined in Data.Bifunctor.Fix

Methods

fold :: Monoid m => Fix p m -> m Source #

foldMap :: Monoid m => (a -> m) -> Fix p a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Fix p a -> m Source #

foldr :: (a -> b -> b) -> b -> Fix p a -> b Source #

foldr' :: (a -> b -> b) -> b -> Fix p a -> b Source #

foldl :: (b -> a -> b) -> b -> Fix p a -> b Source #

foldl' :: (b -> a -> b) -> b -> Fix p a -> b Source #

foldr1 :: (a -> a -> a) -> Fix p a -> a Source #

foldl1 :: (a -> a -> a) -> Fix p a -> a Source #

toList :: Fix p a -> [a] Source #

null :: Fix p a -> Bool Source #

length :: Fix p a -> Int Source #

elem :: Eq a => a -> Fix p a -> Bool Source #

maximum :: Ord a => Fix p a -> a Source #

minimum :: Ord a => Fix p a -> a Source #

sum :: Num a => Fix p a -> a Source #

product :: Num a => Fix p a -> a Source #

Bifoldable p => Foldable (Join p) |

Instance details

Defined in Data.Bifunctor.Join

Methods

fold :: Monoid m => Join p m -> m Source #

foldMap :: Monoid m => (a -> m) -> Join p a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Join p a -> m Source #

foldr :: (a -> b -> b) -> b -> Join p a -> b Source #

foldr' :: (a -> b -> b) -> b -> Join p a -> b Source #

foldl :: (b -> a -> b) -> b -> Join p a -> b Source #

foldl' :: (b -> a -> b) -> b -> Join p a -> b Source #

foldr1 :: (a -> a -> a) -> Join p a -> a Source #

foldl1 :: (a -> a -> a) -> Join p a -> a Source #

toList :: Join p a -> [a] Source #

null :: Join p a -> Bool Source #

length :: Join p a -> Int Source #

elem :: Eq a => a -> Join p a -> Bool Source #

maximum :: Ord a => Join p a -> a Source #

minimum :: Ord a => Join p a -> a Source #

sum :: Num a => Join p a -> a Source #

product :: Num a => Join p a -> a Source #

Foldable f => Foldable (FreeF f a) |

Instance details

Defined in Control.Monad.Trans.Free

Methods

fold :: Monoid m => FreeF f a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> FreeF f a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> FreeF f a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> FreeF f a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> FreeF f a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> FreeF f a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> FreeF f a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> FreeF f a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> FreeF f a a0 -> a0 Source #

toList :: FreeF f a a0 -> [a0] Source #

null :: FreeF f a a0 -> Bool Source #

length :: FreeF f a a0 -> Int Source #

elem :: Eq a0 => a0 -> FreeF f a a0 -> Bool Source #

maximum :: Ord a0 => FreeF f a a0 -> a0 Source #

minimum :: Ord a0 => FreeF f a a0 -> a0 Source #

sum :: Num a0 => FreeF f a a0 -> a0 Source #

product :: Num a0 => FreeF f a a0 -> a0 Source #

(Foldable m, Foldable f) => Foldable (FreeT f m) |

Instance details

Defined in Control.Monad.Trans.Free

Methods

fold :: Monoid m0 => FreeT f m m0 -> m0 Source #

foldMap :: Monoid m0 => (a -> m0) -> FreeT f m a -> m0 Source #

foldMap' :: Monoid m0 => (a -> m0) -> FreeT f m a -> m0 Source #

foldr :: (a -> b -> b) -> b -> FreeT f m a -> b Source #

foldr' :: (a -> b -> b) -> b -> FreeT f m a -> b Source #

foldl :: (b -> a -> b) -> b -> FreeT f m a -> b Source #

foldl' :: (b -> a -> b) -> b -> FreeT f m a -> b Source #

foldr1 :: (a -> a -> a) -> FreeT f m a -> a Source #

foldl1 :: (a -> a -> a) -> FreeT f m a -> a Source #

toList :: FreeT f m a -> [a] Source #

null :: FreeT f m a -> Bool Source #

length :: FreeT f m a -> Int Source #

elem :: Eq a => a -> FreeT f m a -> Bool Source #

maximum :: Ord a => FreeT f m a -> a Source #

minimum :: Ord a => FreeT f m a -> a Source #

sum :: Num a => FreeT f m a -> a Source #

product :: Num a => FreeT f m a -> a Source #

Foldable f => Foldable (Ap f) | Since: base-4.12.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Ap f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Ap f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Ap f a -> m Source #

foldr :: (a -> b -> b) -> b -> Ap f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Ap f a -> b Source #

foldl :: (b -> a -> b) -> b -> Ap f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Ap f a -> b Source #

foldr1 :: (a -> a -> a) -> Ap f a -> a Source #

foldl1 :: (a -> a -> a) -> Ap f a -> a Source #

toList :: Ap f a -> [a] Source #

null :: Ap f a -> Bool Source #

length :: Ap f a -> Int Source #

elem :: Eq a => a -> Ap f a -> Bool Source #

maximum :: Ord a => Ap f a -> a Source #

minimum :: Ord a => Ap f a -> a Source #

sum :: Num a => Ap f a -> a Source #

product :: Num a => Ap f a -> a Source #

Foldable f => Foldable (Alt f) | Since: base-4.12.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Alt f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Alt f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Alt f a -> m Source #

foldr :: (a -> b -> b) -> b -> Alt f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Alt f a -> b Source #

foldl :: (b -> a -> b) -> b -> Alt f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Alt f a -> b Source #

foldr1 :: (a -> a -> a) -> Alt f a -> a Source #

foldl1 :: (a -> a -> a) -> Alt f a -> a Source #

toList :: Alt f a -> [a] Source #

null :: Alt f a -> Bool Source #

length :: Alt f a -> Int Source #

elem :: Eq a => a -> Alt f a -> Bool Source #

maximum :: Ord a => Alt f a -> a Source #

minimum :: Ord a => Alt f a -> a Source #

sum :: Num a => Alt f a -> a Source #

product :: Num a => Alt f a -> a Source #

Foldable f => Foldable (Rec1 f) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Rec1 f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Rec1 f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Rec1 f a -> m Source #

foldr :: (a -> b -> b) -> b -> Rec1 f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Rec1 f a -> b Source #

foldl :: (b -> a -> b) -> b -> Rec1 f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Rec1 f a -> b Source #

foldr1 :: (a -> a -> a) -> Rec1 f a -> a Source #

foldl1 :: (a -> a -> a) -> Rec1 f a -> a Source #

toList :: Rec1 f a -> [a] Source #

null :: Rec1 f a -> Bool Source #

length :: Rec1 f a -> Int Source #

elem :: Eq a => a -> Rec1 f a -> Bool Source #

maximum :: Ord a => Rec1 f a -> a Source #

minimum :: Ord a => Rec1 f a -> a Source #

sum :: Num a => Rec1 f a -> a Source #

product :: Num a => Rec1 f a -> a Source #

Foldable (Tagged s) |

Instance details

Defined in Data.Tagged

Methods

fold :: Monoid m => Tagged s m -> m Source #

foldMap :: Monoid m => (a -> m) -> Tagged s a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Tagged s a -> m Source #

foldr :: (a -> b -> b) -> b -> Tagged s a -> b Source #

foldr' :: (a -> b -> b) -> b -> Tagged s a -> b Source #

foldl :: (b -> a -> b) -> b -> Tagged s a -> b Source #

foldl' :: (b -> a -> b) -> b -> Tagged s a -> b Source #

foldr1 :: (a -> a -> a) -> Tagged s a -> a Source #

foldl1 :: (a -> a -> a) -> Tagged s a -> a Source #

toList :: Tagged s a -> [a] Source #

null :: Tagged s a -> Bool Source #

length :: Tagged s a -> Int Source #

elem :: Eq a => a -> Tagged s a -> Bool Source #

maximum :: Ord a => Tagged s a -> a Source #

minimum :: Ord a => Tagged s a -> a Source #

sum :: Num a => Tagged s a -> a Source #

product :: Num a => Tagged s a -> a Source #

Foldable f => Foldable (Backwards f) | Derived instance.

Instance details

Defined in Control.Applicative.Backwards

Methods

fold :: Monoid m => Backwards f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Backwards f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Backwards f a -> m Source #

foldr :: (a -> b -> b) -> b -> Backwards f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Backwards f a -> b Source #

foldl :: (b -> a -> b) -> b -> Backwards f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Backwards f a -> b Source #

foldr1 :: (a -> a -> a) -> Backwards f a -> a Source #

foldl1 :: (a -> a -> a) -> Backwards f a -> a Source #

toList :: Backwards f a -> [a] Source #

null :: Backwards f a -> Bool Source #

length :: Backwards f a -> Int Source #

elem :: Eq a => a -> Backwards f a -> Bool Source #

maximum :: Ord a => Backwards f a -> a Source #

minimum :: Ord a => Backwards f a -> a Source #

sum :: Num a => Backwards f a -> a Source #

product :: Num a => Backwards f a -> a Source #

Foldable f => Foldable (ExceptT e f) |

Instance details

Defined in Control.Monad.Trans.Except

Methods

fold :: Monoid m => ExceptT e f m -> m Source #

foldMap :: Monoid m => (a -> m) -> ExceptT e f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> ExceptT e f a -> m Source #

foldr :: (a -> b -> b) -> b -> ExceptT e f a -> b Source #

foldr' :: (a -> b -> b) -> b -> ExceptT e f a -> b Source #

foldl :: (b -> a -> b) -> b -> ExceptT e f a -> b Source #

foldl' :: (b -> a -> b) -> b -> ExceptT e f a -> b Source #

foldr1 :: (a -> a -> a) -> ExceptT e f a -> a Source #

foldl1 :: (a -> a -> a) -> ExceptT e f a -> a Source #

toList :: ExceptT e f a -> [a] Source #

null :: ExceptT e f a -> Bool Source #

length :: ExceptT e f a -> Int Source #

elem :: Eq a => a -> ExceptT e f a -> Bool Source #

maximum :: Ord a => ExceptT e f a -> a Source #

minimum :: Ord a => ExceptT e f a -> a Source #

sum :: Num a => ExceptT e f a -> a Source #

product :: Num a => ExceptT e f a -> a Source #

Foldable f => Foldable (IdentityT f) |

Instance details

Defined in Control.Monad.Trans.Identity

Methods

fold :: Monoid m => IdentityT f m -> m Source #

foldMap :: Monoid m => (a -> m) -> IdentityT f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> IdentityT f a -> m Source #

foldr :: (a -> b -> b) -> b -> IdentityT f a -> b Source #

foldr' :: (a -> b -> b) -> b -> IdentityT f a -> b Source #

foldl :: (b -> a -> b) -> b -> IdentityT f a -> b Source #

foldl' :: (b -> a -> b) -> b -> IdentityT f a -> b Source #

foldr1 :: (a -> a -> a) -> IdentityT f a -> a Source #

foldl1 :: (a -> a -> a) -> IdentityT f a -> a Source #

toList :: IdentityT f a -> [a] Source #

null :: IdentityT f a -> Bool Source #

length :: IdentityT f a -> Int Source #

elem :: Eq a => a -> IdentityT f a -> Bool Source #

maximum :: Ord a => IdentityT f a -> a Source #

minimum :: Ord a => IdentityT f a -> a Source #

sum :: Num a => IdentityT f a -> a Source #

product :: Num a => IdentityT f a -> a Source #

Foldable f => Foldable (WriterT w f) |

Instance details

Defined in Control.Monad.Trans.Writer.Lazy

Methods

fold :: Monoid m => WriterT w f m -> m Source #

foldMap :: Monoid m => (a -> m) -> WriterT w f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> WriterT w f a -> m Source #

foldr :: (a -> b -> b) -> b -> WriterT w f a -> b Source #

foldr' :: (a -> b -> b) -> b -> WriterT w f a -> b Source #

foldl :: (b -> a -> b) -> b -> WriterT w f a -> b Source #

foldl' :: (b -> a -> b) -> b -> WriterT w f a -> b Source #

foldr1 :: (a -> a -> a) -> WriterT w f a -> a Source #

foldl1 :: (a -> a -> a) -> WriterT w f a -> a Source #

toList :: WriterT w f a -> [a] Source #

null :: WriterT w f a -> Bool Source #

length :: WriterT w f a -> Int Source #

elem :: Eq a => a -> WriterT w f a -> Bool Source #

maximum :: Ord a => WriterT w f a -> a Source #

minimum :: Ord a => WriterT w f a -> a Source #

sum :: Num a => WriterT w f a -> a Source #

product :: Num a => WriterT w f a -> a Source #

Foldable f => Foldable (WriterT w f) |

Instance details

Defined in Control.Monad.Trans.Writer.Strict

Methods

fold :: Monoid m => WriterT w f m -> m Source #

foldMap :: Monoid m => (a -> m) -> WriterT w f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> WriterT w f a -> m Source #

foldr :: (a -> b -> b) -> b -> WriterT w f a -> b Source #

foldr' :: (a -> b -> b) -> b -> WriterT w f a -> b Source #

foldl :: (b -> a -> b) -> b -> WriterT w f a -> b Source #

foldl' :: (b -> a -> b) -> b -> WriterT w f a -> b Source #

foldr1 :: (a -> a -> a) -> WriterT w f a -> a Source #

foldl1 :: (a -> a -> a) -> WriterT w f a -> a Source #

toList :: WriterT w f a -> [a] Source #

null :: WriterT w f a -> Bool Source #

length :: WriterT w f a -> Int Source #

elem :: Eq a => a -> WriterT w f a -> Bool Source #

maximum :: Ord a => WriterT w f a -> a Source #

minimum :: Ord a => WriterT w f a -> a Source #

sum :: Num a => WriterT w f a -> a Source #

product :: Num a => WriterT w f a -> a Source #

Foldable (Constant a :: Type -> Type) |

Instance details

Defined in Data.Functor.Constant

Methods

fold :: Monoid m => Constant a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Constant a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Constant a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Constant a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Constant a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Constant a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Constant a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Constant a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Constant a a0 -> a0 Source #

toList :: Constant a a0 -> [a0] Source #

null :: Constant a a0 -> Bool Source #

length :: Constant a a0 -> Int Source #

elem :: Eq a0 => a0 -> Constant a a0 -> Bool Source #

maximum :: Ord a0 => Constant a a0 -> a0 Source #

minimum :: Ord a0 => Constant a a0 -> a0 Source #

sum :: Num a0 => Constant a a0 -> a0 Source #

product :: Num a0 => Constant a a0 -> a0 Source #

Foldable f => Foldable (Reverse f) | Fold from right to left.

Instance details

Defined in Data.Functor.Reverse

Methods

fold :: Monoid m => Reverse f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Reverse f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Reverse f a -> m Source #

foldr :: (a -> b -> b) -> b -> Reverse f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Reverse f a -> b Source #

foldl :: (b -> a -> b) -> b -> Reverse f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Reverse f a -> b Source #

foldr1 :: (a -> a -> a) -> Reverse f a -> a Source #

foldl1 :: (a -> a -> a) -> Reverse f a -> a Source #

toList :: Reverse f a -> [a] Source #

null :: Reverse f a -> Bool Source #

length :: Reverse f a -> Int Source #

elem :: Eq a => a -> Reverse f a -> Bool Source #

maximum :: Ord a => Reverse f a -> a Source #

minimum :: Ord a => Reverse f a -> a Source #

sum :: Num a => Reverse f a -> a Source #

product :: Num a => Reverse f a -> a Source #

(Foldable f, Foldable g) => Foldable (Product f g) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Product

Methods

fold :: Monoid m => Product f g m -> m Source #

foldMap :: Monoid m => (a -> m) -> Product f g a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Product f g a -> m Source #

foldr :: (a -> b -> b) -> b -> Product f g a -> b Source #

foldr' :: (a -> b -> b) -> b -> Product f g a -> b Source #

foldl :: (b -> a -> b) -> b -> Product f g a -> b Source #

foldl' :: (b -> a -> b) -> b -> Product f g a -> b Source #

foldr1 :: (a -> a -> a) -> Product f g a -> a Source #

foldl1 :: (a -> a -> a) -> Product f g a -> a Source #

toList :: Product f g a -> [a] Source #

null :: Product f g a -> Bool Source #

length :: Product f g a -> Int Source #

elem :: Eq a => a -> Product f g a -> Bool Source #

maximum :: Ord a => Product f g a -> a Source #

minimum :: Ord a => Product f g a -> a Source #

sum :: Num a => Product f g a -> a Source #

product :: Num a => Product f g a -> a Source #

(Foldable f, Foldable g) => Foldable (Sum f g) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Sum

Methods

fold :: Monoid m => Sum f g m -> m Source #

foldMap :: Monoid m => (a -> m) -> Sum f g a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Sum f g a -> m Source #

foldr :: (a -> b -> b) -> b -> Sum f g a -> b Source #

foldr' :: (a -> b -> b) -> b -> Sum f g a -> b Source #

foldl :: (b -> a -> b) -> b -> Sum f g a -> b Source #

foldl' :: (b -> a -> b) -> b -> Sum f g a -> b Source #

foldr1 :: (a -> a -> a) -> Sum f g a -> a Source #

foldl1 :: (a -> a -> a) -> Sum f g a -> a Source #

toList :: Sum f g a -> [a] Source #

null :: Sum f g a -> Bool Source #

length :: Sum f g a -> Int Source #

elem :: Eq a => a -> Sum f g a -> Bool Source #

maximum :: Ord a => Sum f g a -> a Source #

minimum :: Ord a => Sum f g a -> a Source #

sum :: Num a => Sum f g a -> a Source #

product :: Num a => Sum f g a -> a Source #

(Foldable f, Foldable g) => Foldable (f :*: g) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => (f :*: g) m -> m Source #

foldMap :: Monoid m => (a -> m) -> (f :*: g) a -> m Source #

foldMap' :: Monoid m => (a -> m) -> (f :*: g) a -> m Source #

foldr :: (a -> b -> b) -> b -> (f :*: g) a -> b Source #

foldr' :: (a -> b -> b) -> b -> (f :*: g) a -> b Source #

foldl :: (b -> a -> b) -> b -> (f :*: g) a -> b Source #

foldl' :: (b -> a -> b) -> b -> (f :*: g) a -> b Source #

foldr1 :: (a -> a -> a) -> (f :*: g) a -> a Source #

foldl1 :: (a -> a -> a) -> (f :*: g) a -> a Source #

toList :: (f :*: g) a -> [a] Source #

null :: (f :*: g) a -> Bool Source #

length :: (f :*: g) a -> Int Source #

elem :: Eq a => a -> (f :*: g) a -> Bool Source #

maximum :: Ord a => (f :*: g) a -> a Source #

minimum :: Ord a => (f :*: g) a -> a Source #

sum :: Num a => (f :*: g) a -> a Source #

product :: Num a => (f :*: g) a -> a Source #

(Foldable f, Foldable g) => Foldable (f :+: g) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => (f :+: g) m -> m Source #

foldMap :: Monoid m => (a -> m) -> (f :+: g) a -> m Source #

foldMap' :: Monoid m => (a -> m) -> (f :+: g) a -> m Source #

foldr :: (a -> b -> b) -> b -> (f :+: g) a -> b Source #

foldr' :: (a -> b -> b) -> b -> (f :+: g) a -> b Source #

foldl :: (b -> a -> b) -> b -> (f :+: g) a -> b Source #

foldl' :: (b -> a -> b) -> b -> (f :+: g) a -> b Source #

foldr1 :: (a -> a -> a) -> (f :+: g) a -> a Source #

foldl1 :: (a -> a -> a) -> (f :+: g) a -> a Source #

toList :: (f :+: g) a -> [a] Source #

null :: (f :+: g) a -> Bool Source #

length :: (f :+: g) a -> Int Source #

elem :: Eq a => a -> (f :+: g) a -> Bool Source #

maximum :: Ord a => (f :+: g) a -> a Source #

minimum :: Ord a => (f :+: g) a -> a Source #

sum :: Num a => (f :+: g) a -> a Source #

product :: Num a => (f :+: g) a -> a Source #

Foldable (K1 i c :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => K1 i c m -> m Source #

foldMap :: Monoid m => (a -> m) -> K1 i c a -> m Source #

foldMap' :: Monoid m => (a -> m) -> K1 i c a -> m Source #

foldr :: (a -> b -> b) -> b -> K1 i c a -> b Source #

foldr' :: (a -> b -> b) -> b -> K1 i c a -> b Source #

foldl :: (b -> a -> b) -> b -> K1 i c a -> b Source #

foldl' :: (b -> a -> b) -> b -> K1 i c a -> b Source #

foldr1 :: (a -> a -> a) -> K1 i c a -> a Source #

foldl1 :: (a -> a -> a) -> K1 i c a -> a Source #

toList :: K1 i c a -> [a] Source #

null :: K1 i c a -> Bool Source #

length :: K1 i c a -> Int Source #

elem :: Eq a => a -> K1 i c a -> Bool Source #

maximum :: Ord a => K1 i c a -> a Source #

minimum :: Ord a => K1 i c a -> a Source #

sum :: Num a => K1 i c a -> a Source #

product :: Num a => K1 i c a -> a Source #

(Foldable f, Foldable g) => Foldable (Compose f g) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Compose

Methods

fold :: Monoid m => Compose f g m -> m Source #

foldMap :: Monoid m => (a -> m) -> Compose f g a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Compose f g a -> m Source #

foldr :: (a -> b -> b) -> b -> Compose f g a -> b Source #

foldr' :: (a -> b -> b) -> b -> Compose f g a -> b Source #

foldl :: (b -> a -> b) -> b -> Compose f g a -> b Source #

foldl' :: (b -> a -> b) -> b -> Compose f g a -> b Source #

foldr1 :: (a -> a -> a) -> Compose f g a -> a Source #

foldl1 :: (a -> a -> a) -> Compose f g a -> a Source #

toList :: Compose f g a -> [a] Source #

null :: Compose f g a -> Bool Source #

length :: Compose f g a -> Int Source #

elem :: Eq a => a -> Compose f g a -> Bool Source #

maximum :: Ord a => Compose f g a -> a Source #

minimum :: Ord a => Compose f g a -> a Source #

sum :: Num a => Compose f g a -> a Source #

product :: Num a => Compose f g a -> a Source #

Foldable (Clown f a :: Type -> Type) |

Instance details

Defined in Data.Bifunctor.Clown

Methods

fold :: Monoid m => Clown f a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Clown f a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Clown f a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Clown f a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Clown f a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Clown f a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Clown f a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Clown f a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Clown f a a0 -> a0 Source #

toList :: Clown f a a0 -> [a0] Source #

null :: Clown f a a0 -> Bool Source #

length :: Clown f a a0 -> Int Source #

elem :: Eq a0 => a0 -> Clown f a a0 -> Bool Source #

maximum :: Ord a0 => Clown f a a0 -> a0 Source #

minimum :: Ord a0 => Clown f a a0 -> a0 Source #

sum :: Num a0 => Clown f a a0 -> a0 Source #

product :: Num a0 => Clown f a a0 -> a0 Source #

Bifoldable p => Foldable (Flip p a) |

Instance details

Defined in Data.Bifunctor.Flip

Methods

fold :: Monoid m => Flip p a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Flip p a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Flip p a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Flip p a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Flip p a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Flip p a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Flip p a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Flip p a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Flip p a a0 -> a0 Source #

toList :: Flip p a a0 -> [a0] Source #

null :: Flip p a a0 -> Bool Source #

length :: Flip p a a0 -> Int Source #

elem :: Eq a0 => a0 -> Flip p a a0 -> Bool Source #

maximum :: Ord a0 => Flip p a a0 -> a0 Source #

minimum :: Ord a0 => Flip p a a0 -> a0 Source #

sum :: Num a0 => Flip p a a0 -> a0 Source #

product :: Num a0 => Flip p a a0 -> a0 Source #

Foldable g => Foldable (Joker g a) |

Instance details

Defined in Data.Bifunctor.Joker

Methods

fold :: Monoid m => Joker g a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Joker g a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Joker g a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Joker g a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Joker g a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Joker g a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Joker g a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Joker g a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Joker g a a0 -> a0 Source #

toList :: Joker g a a0 -> [a0] Source #

null :: Joker g a a0 -> Bool Source #

length :: Joker g a a0 -> Int Source #

elem :: Eq a0 => a0 -> Joker g a a0 -> Bool Source #

maximum :: Ord a0 => Joker g a a0 -> a0 Source #

minimum :: Ord a0 => Joker g a a0 -> a0 Source #

sum :: Num a0 => Joker g a a0 -> a0 Source #

product :: Num a0 => Joker g a a0 -> a0 Source #

Bifoldable p => Foldable (WrappedBifunctor p a) |

Instance details

Defined in Data.Bifunctor.Wrapped

Methods

fold :: Monoid m => WrappedBifunctor p a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> WrappedBifunctor p a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> WrappedBifunctor p a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> WrappedBifunctor p a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> WrappedBifunctor p a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> WrappedBifunctor p a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> WrappedBifunctor p a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> WrappedBifunctor p a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> WrappedBifunctor p a a0 -> a0 Source #

toList :: WrappedBifunctor p a a0 -> [a0] Source #

null :: WrappedBifunctor p a a0 -> Bool Source #

length :: WrappedBifunctor p a a0 -> Int Source #

elem :: Eq a0 => a0 -> WrappedBifunctor p a a0 -> Bool Source #

maximum :: Ord a0 => WrappedBifunctor p a a0 -> a0 Source #

minimum :: Ord a0 => WrappedBifunctor p a a0 -> a0 Source #

sum :: Num a0 => WrappedBifunctor p a a0 -> a0 Source #

product :: Num a0 => WrappedBifunctor p a a0 -> a0 Source #

(Foldable f, Foldable g) => Foldable (f :.: g) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => (f :.: g) m -> m Source #

foldMap :: Monoid m => (a -> m) -> (f :.: g) a -> m Source #

foldMap' :: Monoid m => (a -> m) -> (f :.: g) a -> m Source #

foldr :: (a -> b -> b) -> b -> (f :.: g) a -> b Source #

foldr' :: (a -> b -> b) -> b -> (f :.: g) a -> b Source #

foldl :: (b -> a -> b) -> b -> (f :.: g) a -> b Source #

foldl' :: (b -> a -> b) -> b -> (f :.: g) a -> b Source #

foldr1 :: (a -> a -> a) -> (f :.: g) a -> a Source #

foldl1 :: (a -> a -> a) -> (f :.: g) a -> a Source #

toList :: (f :.: g) a -> [a] Source #

null :: (f :.: g) a -> Bool Source #

length :: (f :.: g) a -> Int Source #

elem :: Eq a => a -> (f :.: g) a -> Bool Source #

maximum :: Ord a => (f :.: g) a -> a Source #

minimum :: Ord a => (f :.: g) a -> a Source #

sum :: Num a => (f :.: g) a -> a Source #

product :: Num a => (f :.: g) a -> a Source #

Foldable f => Foldable (M1 i c f) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => M1 i c f m -> m Source #

foldMap :: Monoid m => (a -> m) -> M1 i c f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> M1 i c f a -> m Source #

foldr :: (a -> b -> b) -> b -> M1 i c f a -> b Source #

foldr' :: (a -> b -> b) -> b -> M1 i c f a -> b Source #

foldl :: (b -> a -> b) -> b -> M1 i c f a -> b Source #

foldl' :: (b -> a -> b) -> b -> M1 i c f a -> b Source #

foldr1 :: (a -> a -> a) -> M1 i c f a -> a Source #

foldl1 :: (a -> a -> a) -> M1 i c f a -> a Source #

toList :: M1 i c f a -> [a] Source #

null :: M1 i c f a -> Bool Source #

length :: M1 i c f a -> Int Source #

elem :: Eq a => a -> M1 i c f a -> Bool Source #

maximum :: Ord a => M1 i c f a -> a Source #

minimum :: Ord a => M1 i c f a -> a Source #

sum :: Num a => M1 i c f a -> a Source #

product :: Num a => M1 i c f a -> a Source #

(Foldable (f a), Foldable (g a)) => Foldable (Product f g a) |

Instance details

Defined in Data.Bifunctor.Product

Methods

fold :: Monoid m => Product f g a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Product f g a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Product f g a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Product f g a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Product f g a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Product f g a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Product f g a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Product f g a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Product f g a a0 -> a0 Source #

toList :: Product f g a a0 -> [a0] Source #

null :: Product f g a a0 -> Bool Source #

length :: Product f g a a0 -> Int Source #

elem :: Eq a0 => a0 -> Product f g a a0 -> Bool Source #

maximum :: Ord a0 => Product f g a a0 -> a0 Source #

minimum :: Ord a0 => Product f g a a0 -> a0 Source #

sum :: Num a0 => Product f g a a0 -> a0 Source #

product :: Num a0 => Product f g a a0 -> a0 Source #

(Foldable (f a), Foldable (g a)) => Foldable (Sum f g a) |

Instance details

Defined in Data.Bifunctor.Sum

Methods

fold :: Monoid m => Sum f g a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Sum f g a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Sum f g a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Sum f g a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Sum f g a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Sum f g a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Sum f g a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Sum f g a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Sum f g a a0 -> a0 Source #

toList :: Sum f g a a0 -> [a0] Source #

null :: Sum f g a a0 -> Bool Source #

length :: Sum f g a a0 -> Int Source #

elem :: Eq a0 => a0 -> Sum f g a a0 -> Bool Source #

maximum :: Ord a0 => Sum f g a a0 -> a0 Source #

minimum :: Ord a0 => Sum f g a a0 -> a0 Source #

sum :: Num a0 => Sum f g a a0 -> a0 Source #

product :: Num a0 => Sum f g a a0 -> a0 Source #

(Foldable f, Bifoldable p) => Foldable (Tannen f p a) |

Instance details

Defined in Data.Bifunctor.Tannen

Methods

fold :: Monoid m => Tannen f p a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Tannen f p a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Tannen f p a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Tannen f p a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Tannen f p a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Tannen f p a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Tannen f p a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Tannen f p a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Tannen f p a a0 -> a0 Source #

toList :: Tannen f p a a0 -> [a0] Source #

null :: Tannen f p a a0 -> Bool Source #

length :: Tannen f p a a0 -> Int Source #

elem :: Eq a0 => a0 -> Tannen f p a a0 -> Bool Source #

maximum :: Ord a0 => Tannen f p a a0 -> a0 Source #

minimum :: Ord a0 => Tannen f p a a0 -> a0 Source #

sum :: Num a0 => Tannen f p a a0 -> a0 Source #

product :: Num a0 => Tannen f p a a0 -> a0 Source #

(Bifoldable p, Foldable g) => Foldable (Biff p f g a) |

Instance details

Defined in Data.Bifunctor.Biff

Methods

fold :: Monoid m => Biff p f g a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Biff p f g a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Biff p f g a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Biff p f g a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Biff p f g a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Biff p f g a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Biff p f g a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Biff p f g a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Biff p f g a a0 -> a0 Source #

toList :: Biff p f g a a0 -> [a0] Source #

null :: Biff p f g a a0 -> Bool Source #

length :: Biff p f g a a0 -> Int Source #

elem :: Eq a0 => a0 -> Biff p f g a a0 -> Bool Source #

maximum :: Ord a0 => Biff p f g a a0 -> a0 Source #

minimum :: Ord a0 => Biff p f g a a0 -> a0 Source #

sum :: Num a0 => Biff p f g a a0 -> a0 Source #

product :: Num a0 => Biff p f g a a0 -> a0 Source #

(***) :: Arrow a => a b c -> a b' c' -> a (b, b') (c, c') infixr 3 Source #

Split the input between the two argument arrows and combine their output. Note that this is in general not a functor.

The default definition may be overridden with a more efficient version if desired.

(&&&) :: Arrow a => a b c -> a b c' -> a b (c, c') infixr 3 Source #

Fanout: send the input to both argument arrows and combine their output.

The default definition may be overridden with a more efficient version if desired.

const :: a -> b -> a Source #

`const x y` always evaluates to `x`, ignoring its second argument.

    const x = \_ -> x

This function might seem useless at first glance, but it can be very useful in a higher order context.

#### Examples

Expand

    >>> const 42 "hello"
    42

    >>> map (const 42) [0..3]
    [42,42,42,42]

getArgs :: MonadIO m => m [Text] Source #

seq :: a -> b -> b infixr 0 Source #

The value of ``seq` a b` is bottom if `a` is bottom, and otherwise equal to `b`. In other words, it evaluates the first argument `a` to weak head normal form (WHNF). `seq` is usually introduced to improve performance by avoiding unneeded laziness.

A note on evaluation order: the expression ``seq` a b` does not guarantee that `a` will be evaluated before `b`. The only guarantee given by `seq` is that the both `a` and `b` will be evaluated before `seq` returns a value. In particular, this means that `b` may be evaluated before `a`. If you need to guarantee a specific order of evaluation, you must use the function `pseq` from the "parallel" package.

otherwise :: Bool Source #

`otherwise` is defined as the value `True`. It helps to make guards more readable. eg.

     f x | x < 0     = ...
         | otherwise = ...

($) :: (a -> b) -> a -> b infixr 0 Source #

``($)`` is the function application operator.

Applying ``($)`` to a function `f` and an argument `x` gives the same result as applying `f` to `x` directly. The definition is akin to this:

    ($) :: (a -> b) -> a -> b
    ($) f x = f x

This is ``id`` specialized from `a -> a` to `(a -> b) -> (a -> b)` which by the associativity of `(->)` is the same as `(a -> b) -> a -> b`.

On the face of it, this may appear pointless! But it's actually one of the most useful and important operators in Haskell.

The order of operations is very different between `($)` and normal function application. Normal function application has precedence 10 - higher than any operator - and associates to the left. So these two definitions are equivalent:

    expr = min 5 1 + 5
    expr = ((min 5) 1) + 5

`($)` has precedence 0 (the lowest) and associates to the right, so these are equivalent:

    expr = min 5 $ 1 + 5
    expr = (min 5) (1 + 5)

#### Examples

Expand

A common use cases of `($)` is to avoid parentheses in complex expressions.

For example, instead of using nested parentheses in the following Haskell function:

    -- | Sum numbers in a string: strSum "100  5 -7" == 98
    strSum :: String -> Int
    strSum s = sum (mapMaybe readMaybe (words s))

we can deploy the function application operator:

    -- | Sum numbers in a string: strSum "100  5 -7" == 98
    strSum :: String -> Int
    strSum s = sum $ mapMaybe readMaybe $ words s

`($)` is also used as a section (a partially applied operator), in order to indicate that we wish to apply some yet-unspecified function to a given value. For example, to apply the argument `5` to a list of functions:

    applyFive :: [Int]
    applyFive = map ($ 5) [(+1), (2^)]
    >>> [6, 32]

#### Technical Remark (Representation Polymorphism)

Expand

`($)` is fully representation-polymorphic. This allows it to also be used with arguments of unlifted and even unboxed kinds, such as unboxed integers:

    fastMod :: Int -> Int -> Int
    fastMod (I# x) (I# m) = I# $ remInt# x m

class Num a where Source #

Basic numeric class.

The Haskell Report defines no laws for `Num`. However, `(`+`)` and `(`*`)` are customarily expected to define a ring and have the following properties:

Associativity of `(`+`)`
  `(x + y) + z` = `x + (y + z)`
Commutativity of `(`+`)`
  `x + y` = `y + x`
``fromInteger` 0` is the additive identity
  `x + fromInteger 0` = `x`
`negate` gives the additive inverse
  `x + negate x` = `fromInteger 0`
Associativity of `(`*`)`
  `(x * y) * z` = `x * (y * z)`
``fromInteger` 1` is the multiplicative identity
  `x * fromInteger 1` = `x` and `fromInteger 1 * x` = `x`
Distributivity of `(`*`)` with respect to `(`+`)`
  `a * (b + c)` = `(a * b) + (a * c)` and `(b + c) * a` = `(b * a) + (c * a)`
Coherence with `toInteger`
  if the type also implements `Integral`, then `fromInteger` is a left inverse for `toInteger`, i.e. `fromInteger (toInteger i) == i`

Note that it isn't customarily expected that a type instance of both `Num` and `Ord` implement an ordered ring. Indeed, in `base` only `Integer` and `Rational` do.

Minimal complete definition

(+), (*), abs, signum, fromInteger, (negate | (-))

Methods

(+) :: a -> a -> a infixl 6 Source #

(-) :: a -> a -> a infixl 6 Source #

(*) :: a -> a -> a infixl 7 Source #

negate :: a -> a Source #

Unary negation.

abs :: a -> a Source #

Absolute value.

signum :: a -> a Source #

Sign of a number. The functions `abs` and `signum` should satisfy the law:

    abs x * signum x == x

For real numbers, the `signum` is either `-1` (negative), `0` (zero) or `1` (positive).

fromInteger :: Integer -> a Source #

Conversion from an `Integer`. An integer literal represents the application of the function `fromInteger` to the appropriate value of type `Integer`, so such literals have type `(`Num` a) => a`.

#### Instances

Instances details

Num CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CBool -> CBool -> CBool Source # (-) :: CBool -> CBool -> CBool Source # (*) :: CBool -> CBool -> CBool Source # negate :: CBool -> CBool Source # abs :: CBool -> CBool Source # signum :: CBool -> CBool Source # fromInteger :: Integer -> CBool Source #
Num CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CChar -> CChar -> CChar Source # (-) :: CChar -> CChar -> CChar Source # (*) :: CChar -> CChar -> CChar Source # negate :: CChar -> CChar Source # abs :: CChar -> CChar Source # signum :: CChar -> CChar Source # fromInteger :: Integer -> CChar Source #
Num CClock |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CClock -> CClock -> CClock Source # (-) :: CClock -> CClock -> CClock Source # (*) :: CClock -> CClock -> CClock Source # negate :: CClock -> CClock Source # abs :: CClock -> CClock Source # signum :: CClock -> CClock Source # fromInteger :: Integer -> CClock Source #
Num CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CDouble -> CDouble -> CDouble Source # (-) :: CDouble -> CDouble -> CDouble Source # (*) :: CDouble -> CDouble -> CDouble Source # negate :: CDouble -> CDouble Source # abs :: CDouble -> CDouble Source # signum :: CDouble -> CDouble Source # fromInteger :: Integer -> CDouble Source #
Num CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CFloat -> CFloat -> CFloat Source # (-) :: CFloat -> CFloat -> CFloat Source # (*) :: CFloat -> CFloat -> CFloat Source # negate :: CFloat -> CFloat Source # abs :: CFloat -> CFloat Source # signum :: CFloat -> CFloat Source # fromInteger :: Integer -> CFloat Source #
Num CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CInt -> CInt -> CInt Source # (-) :: CInt -> CInt -> CInt Source # (*) :: CInt -> CInt -> CInt Source # negate :: CInt -> CInt Source # abs :: CInt -> CInt Source # signum :: CInt -> CInt Source # fromInteger :: Integer -> CInt Source #
Num CIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CIntMax -> CIntMax -> CIntMax Source # (-) :: CIntMax -> CIntMax -> CIntMax Source # (*) :: CIntMax -> CIntMax -> CIntMax Source # negate :: CIntMax -> CIntMax Source # abs :: CIntMax -> CIntMax Source # signum :: CIntMax -> CIntMax Source # fromInteger :: Integer -> CIntMax Source #
Num CIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CIntPtr -> CIntPtr -> CIntPtr Source # (-) :: CIntPtr -> CIntPtr -> CIntPtr Source # (*) :: CIntPtr -> CIntPtr -> CIntPtr Source # negate :: CIntPtr -> CIntPtr Source # abs :: CIntPtr -> CIntPtr Source # signum :: CIntPtr -> CIntPtr Source # fromInteger :: Integer -> CIntPtr Source #
Num CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CLLong -> CLLong -> CLLong Source # (-) :: CLLong -> CLLong -> CLLong Source # (*) :: CLLong -> CLLong -> CLLong Source # negate :: CLLong -> CLLong Source # abs :: CLLong -> CLLong Source # signum :: CLLong -> CLLong Source # fromInteger :: Integer -> CLLong Source #
Num CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CLong -> CLong -> CLong Source # (-) :: CLong -> CLong -> CLong Source # (*) :: CLong -> CLong -> CLong Source # negate :: CLong -> CLong Source # abs :: CLong -> CLong Source # signum :: CLong -> CLong Source # fromInteger :: Integer -> CLong Source #
Num CPtrdiff |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CPtrdiff -> CPtrdiff -> CPtrdiff Source # (-) :: CPtrdiff -> CPtrdiff -> CPtrdiff Source # (*) :: CPtrdiff -> CPtrdiff -> CPtrdiff Source # negate :: CPtrdiff -> CPtrdiff Source # abs :: CPtrdiff -> CPtrdiff Source # signum :: CPtrdiff -> CPtrdiff Source # fromInteger :: Integer -> CPtrdiff Source #
Num CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CSChar -> CSChar -> CSChar Source # (-) :: CSChar -> CSChar -> CSChar Source # (*) :: CSChar -> CSChar -> CSChar Source # negate :: CSChar -> CSChar Source # abs :: CSChar -> CSChar Source # signum :: CSChar -> CSChar Source # fromInteger :: Integer -> CSChar Source #
Num CSUSeconds |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

(+) :: CSUSeconds -> CSUSeconds -> CSUSeconds Source #

(-) :: CSUSeconds -> CSUSeconds -> CSUSeconds Source #

(*) :: CSUSeconds -> CSUSeconds -> CSUSeconds Source #

negate :: CSUSeconds -> CSUSeconds Source #

abs :: CSUSeconds -> CSUSeconds Source #

signum :: CSUSeconds -> CSUSeconds Source #

fromInteger :: Integer -> CSUSeconds Source #

Num CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CShort -> CShort -> CShort Source # (-) :: CShort -> CShort -> CShort Source # (*) :: CShort -> CShort -> CShort Source # negate :: CShort -> CShort Source # abs :: CShort -> CShort Source # signum :: CShort -> CShort Source # fromInteger :: Integer -> CShort Source #
Num CSigAtomic |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

(+) :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

(-) :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

(*) :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

negate :: CSigAtomic -> CSigAtomic Source #

abs :: CSigAtomic -> CSigAtomic Source #

signum :: CSigAtomic -> CSigAtomic Source #

fromInteger :: Integer -> CSigAtomic Source #

Num CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CSize -> CSize -> CSize Source # (-) :: CSize -> CSize -> CSize Source # (*) :: CSize -> CSize -> CSize Source # negate :: CSize -> CSize Source # abs :: CSize -> CSize Source # signum :: CSize -> CSize Source # fromInteger :: Integer -> CSize Source #
Num CTime |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CTime -> CTime -> CTime Source # (-) :: CTime -> CTime -> CTime Source # (*) :: CTime -> CTime -> CTime Source # negate :: CTime -> CTime Source # abs :: CTime -> CTime Source # signum :: CTime -> CTime Source # fromInteger :: Integer -> CTime Source #
Num CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CUChar -> CUChar -> CUChar Source # (-) :: CUChar -> CUChar -> CUChar Source # (*) :: CUChar -> CUChar -> CUChar Source # negate :: CUChar -> CUChar Source # abs :: CUChar -> CUChar Source # signum :: CUChar -> CUChar Source # fromInteger :: Integer -> CUChar Source #
Num CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CUInt -> CUInt -> CUInt Source # (-) :: CUInt -> CUInt -> CUInt Source # (*) :: CUInt -> CUInt -> CUInt Source # negate :: CUInt -> CUInt Source # abs :: CUInt -> CUInt Source # signum :: CUInt -> CUInt Source # fromInteger :: Integer -> CUInt Source #
Num CUIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CUIntMax -> CUIntMax -> CUIntMax Source # (-) :: CUIntMax -> CUIntMax -> CUIntMax Source # (*) :: CUIntMax -> CUIntMax -> CUIntMax Source # negate :: CUIntMax -> CUIntMax Source # abs :: CUIntMax -> CUIntMax Source # signum :: CUIntMax -> CUIntMax Source # fromInteger :: Integer -> CUIntMax Source #
Num CUIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CUIntPtr -> CUIntPtr -> CUIntPtr Source # (-) :: CUIntPtr -> CUIntPtr -> CUIntPtr Source # (*) :: CUIntPtr -> CUIntPtr -> CUIntPtr Source # negate :: CUIntPtr -> CUIntPtr Source # abs :: CUIntPtr -> CUIntPtr Source # signum :: CUIntPtr -> CUIntPtr Source # fromInteger :: Integer -> CUIntPtr Source #
Num CULLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CULLong -> CULLong -> CULLong Source # (-) :: CULLong -> CULLong -> CULLong Source # (*) :: CULLong -> CULLong -> CULLong Source # negate :: CULLong -> CULLong Source # abs :: CULLong -> CULLong Source # signum :: CULLong -> CULLong Source # fromInteger :: Integer -> CULLong Source #
Num CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CULong -> CULong -> CULong Source # (-) :: CULong -> CULong -> CULong Source # (*) :: CULong -> CULong -> CULong Source # negate :: CULong -> CULong Source # abs :: CULong -> CULong Source # signum :: CULong -> CULong Source # fromInteger :: Integer -> CULong Source #
Num CUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CUSeconds -> CUSeconds -> CUSeconds Source # (-) :: CUSeconds -> CUSeconds -> CUSeconds Source # (*) :: CUSeconds -> CUSeconds -> CUSeconds Source # negate :: CUSeconds -> CUSeconds Source # abs :: CUSeconds -> CUSeconds Source # signum :: CUSeconds -> CUSeconds Source # fromInteger :: Integer -> CUSeconds Source #
Num CUShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CUShort -> CUShort -> CUShort Source # (-) :: CUShort -> CUShort -> CUShort Source # (*) :: CUShort -> CUShort -> CUShort Source # negate :: CUShort -> CUShort Source # abs :: CUShort -> CUShort Source # signum :: CUShort -> CUShort Source # fromInteger :: Integer -> CUShort Source #
Num CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (+) :: CWchar -> CWchar -> CWchar Source # (-) :: CWchar -> CWchar -> CWchar Source # (*) :: CWchar -> CWchar -> CWchar Source # negate :: CWchar -> CWchar Source # abs :: CWchar -> CWchar Source # signum :: CWchar -> CWchar Source # fromInteger :: Integer -> CWchar Source #
Num Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (+) :: Int16 -> Int16 -> Int16 Source # (-) :: Int16 -> Int16 -> Int16 Source # (*) :: Int16 -> Int16 -> Int16 Source # negate :: Int16 -> Int16 Source # abs :: Int16 -> Int16 Source # signum :: Int16 -> Int16 Source # fromInteger :: Integer -> Int16 Source #
Num Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (+) :: Int32 -> Int32 -> Int32 Source # (-) :: Int32 -> Int32 -> Int32 Source # (*) :: Int32 -> Int32 -> Int32 Source # negate :: Int32 -> Int32 Source # abs :: Int32 -> Int32 Source # signum :: Int32 -> Int32 Source # fromInteger :: Integer -> Int32 Source #
Num Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (+) :: Int64 -> Int64 -> Int64 Source # (-) :: Int64 -> Int64 -> Int64 Source # (*) :: Int64 -> Int64 -> Int64 Source # negate :: Int64 -> Int64 Source # abs :: Int64 -> Int64 Source # signum :: Int64 -> Int64 Source # fromInteger :: Integer -> Int64 Source #
Num Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (+) :: Int8 -> Int8 -> Int8 Source # (-) :: Int8 -> Int8 -> Int8 Source # (*) :: Int8 -> Int8 -> Int8 Source # negate :: Int8 -> Int8 Source # abs :: Int8 -> Int8 Source # signum :: Int8 -> Int8 Source # fromInteger :: Integer -> Int8 Source #
Num Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (+) :: Word16 -> Word16 -> Word16 Source # (-) :: Word16 -> Word16 -> Word16 Source # (*) :: Word16 -> Word16 -> Word16 Source # negate :: Word16 -> Word16 Source # abs :: Word16 -> Word16 Source # signum :: Word16 -> Word16 Source # fromInteger :: Integer -> Word16 Source #
Num Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (+) :: Word32 -> Word32 -> Word32 Source # (-) :: Word32 -> Word32 -> Word32 Source # (*) :: Word32 -> Word32 -> Word32 Source # negate :: Word32 -> Word32 Source # abs :: Word32 -> Word32 Source # signum :: Word32 -> Word32 Source # fromInteger :: Integer -> Word32 Source #
Num Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (+) :: Word64 -> Word64 -> Word64 Source # (-) :: Word64 -> Word64 -> Word64 Source # (*) :: Word64 -> Word64 -> Word64 Source # negate :: Word64 -> Word64 Source # abs :: Word64 -> Word64 Source # signum :: Word64 -> Word64 Source # fromInteger :: Integer -> Word64 Source #
Num Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (+) :: Word8 -> Word8 -> Word8 Source # (-) :: Word8 -> Word8 -> Word8 Source # (*) :: Word8 -> Word8 -> Word8 Source # negate :: Word8 -> Word8 Source # abs :: Word8 -> Word8 Source # signum :: Word8 -> Word8 Source # fromInteger :: Integer -> Word8 Source #
Num I8 |
Instance details Defined in Data.Text.Foreign Methods (+) :: I8 -> I8 -> I8 Source # (-) :: I8 -> I8 -> I8 Source # (*) :: I8 -> I8 -> I8 Source # negate :: I8 -> I8 Source # abs :: I8 -> I8 Source # signum :: I8 -> I8 Source # fromInteger :: Integer -> I8 Source #
Num Size |
Instance details Defined in Data.Text.Internal.Fusion.Size Methods (+) :: Size -> Size -> Size Source # (-) :: Size -> Size -> Size Source # (*) :: Size -> Size -> Size Source # negate :: Size -> Size Source # abs :: Size -> Size Source # signum :: Size -> Size Source # fromInteger :: Integer -> Size Source #
Num DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods (+) :: DiffTime -> DiffTime -> DiffTime Source # (-) :: DiffTime -> DiffTime -> DiffTime Source # (*) :: DiffTime -> DiffTime -> DiffTime Source # negate :: DiffTime -> DiffTime Source # abs :: DiffTime -> DiffTime Source # signum :: DiffTime -> DiffTime Source # fromInteger :: Integer -> DiffTime Source #
Num Size |
Instance details Defined in Data.Vector.Fusion.Bundle.Size Methods (+) :: Size -> Size -> Size Source # (-) :: Size -> Size -> Size Source # (*) :: Size -> Size -> Size Source # negate :: Size -> Size Source # abs :: Size -> Size Source # signum :: Size -> Size Source # fromInteger :: Integer -> Size Source #
Num Integer | Since: base-2.1
Instance details Defined in GHC.Internal.Num Methods (+) :: Integer -> Integer -> Integer Source # (-) :: Integer -> Integer -> Integer Source # (*) :: Integer -> Integer -> Integer Source # negate :: Integer -> Integer Source # abs :: Integer -> Integer Source # signum :: Integer -> Integer Source # fromInteger :: Integer -> Integer Source #
Num Natural | Note that `Natural`'s `Num` instance isn't a ring: no element but 0 has an additive inverse. It is a semiring though. Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Num Methods (+) :: Natural -> Natural -> Natural Source # (-) :: Natural -> Natural -> Natural Source # (*) :: Natural -> Natural -> Natural Source # negate :: Natural -> Natural Source # abs :: Natural -> Natural Source # signum :: Natural -> Natural Source # fromInteger :: Integer -> Natural Source #

Num Double

This instance implements IEEE 754 standard with all its usual pitfalls about NaN, infinities and negative zero. Neither addition nor multiplication are associative or distributive:

    >>> (0.1 + 0.1) + 0.4 == 0.1 + (0.1 + 0.4)
    False
    >>> (0.1 + 0.2) * 0.3 == 0.1 * 0.3 + 0.2 * 0.3
    False
    >>> (0.1 * 0.1) * 0.3 == 0.1 * (0.1 * 0.3)
    False

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods (+) :: Double -> Double -> Double Source # (-) :: Double -> Double -> Double Source # (*) :: Double -> Double -> Double Source # negate :: Double -> Double Source # abs :: Double -> Double Source # signum :: Double -> Double Source # fromInteger :: Integer -> Double Source #

Num Float

This instance implements IEEE 754 standard with all its usual pitfalls about NaN, infinities and negative zero. Neither addition nor multiplication are associative or distributive:

    >>> (0.1 + 0.1 :: Float) + 0.5 == 0.1 + (0.1 + 0.5)
    False
    >>> (0.1 + 0.2 :: Float) * 0.9 == 0.1 * 0.9 + 0.2 * 0.9
    False
    >>> (0.1 * 0.1 :: Float) * 0.9 == 0.1 * (0.1 * 0.9)
    False

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods (+) :: Float -> Float -> Float Source # (-) :: Float -> Float -> Float Source # (*) :: Float -> Float -> Float Source # negate :: Float -> Float Source # abs :: Float -> Float Source # signum :: Float -> Float Source # fromInteger :: Integer -> Float Source #
Num Int | Since: base-2.1
Instance details Defined in GHC.Internal.Num Methods (+) :: Int -> Int -> Int Source # (-) :: Int -> Int -> Int Source # (*) :: Int -> Int -> Int Source # negate :: Int -> Int Source # abs :: Int -> Int Source # signum :: Int -> Int Source # fromInteger :: Integer -> Int Source #
Num Word | Since: base-2.1
Instance details Defined in GHC.Internal.Num Methods (+) :: Word -> Word -> Word Source # (-) :: Word -> Word -> Word Source # (*) :: Word -> Word -> Word Source # negate :: Word -> Word Source # abs :: Word -> Word Source # signum :: Word -> Word Source # fromInteger :: Integer -> Word Source #
RealFloat a => Num (Complex a) | Since: base-2.1
Instance details Defined in Data.Complex Methods (+) :: Complex a -> Complex a -> Complex a Source # (-) :: Complex a -> Complex a -> Complex a Source # (*) :: Complex a -> Complex a -> Complex a Source # negate :: Complex a -> Complex a Source # abs :: Complex a -> Complex a Source # signum :: Complex a -> Complex a Source # fromInteger :: Integer -> Complex a Source #
Num a => Num (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (+) :: Max a -> Max a -> Max a Source # (-) :: Max a -> Max a -> Max a Source # (*) :: Max a -> Max a -> Max a Source # negate :: Max a -> Max a Source # abs :: Max a -> Max a Source # signum :: Max a -> Max a Source # fromInteger :: Integer -> Max a Source #
Num a => Num (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (+) :: Min a -> Min a -> Min a Source # (-) :: Min a -> Min a -> Min a Source # (*) :: Min a -> Min a -> Min a Source # negate :: Min a -> Min a Source # abs :: Min a -> Min a Source # signum :: Min a -> Min a Source # fromInteger :: Integer -> Min a Source #
Num a => Num (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

(+) :: Identity a -> Identity a -> Identity a Source #

(-) :: Identity a -> Identity a -> Identity a Source #

(*) :: Identity a -> Identity a -> Identity a Source #

negate :: Identity a -> Identity a Source #

abs :: Identity a -> Identity a Source #

signum :: Identity a -> Identity a Source #

fromInteger :: Integer -> Identity a Source #

Num a => Num (Down a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (+) :: Down a -> Down a -> Down a Source # (-) :: Down a -> Down a -> Down a Source # (*) :: Down a -> Down a -> Down a Source # negate :: Down a -> Down a Source # abs :: Down a -> Down a Source # signum :: Down a -> Down a Source # fromInteger :: Integer -> Down a Source #
Integral a => Num (Ratio a) | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods (+) :: Ratio a -> Ratio a -> Ratio a Source # (-) :: Ratio a -> Ratio a -> Ratio a Source # (*) :: Ratio a -> Ratio a -> Ratio a Source # negate :: Ratio a -> Ratio a Source # abs :: Ratio a -> Ratio a Source # signum :: Ratio a -> Ratio a Source # fromInteger :: Integer -> Ratio a Source #

HasResolution a => Num (Fixed a)

Multiplication is not associative or distributive:

    >>> (0.2 * 0.6 :: Deci) * 0.9 == 0.2 * (0.6 * 0.9)
    False

    >>> (0.1 + 0.1 :: Deci) * 0.5 == 0.1 * 0.5 + 0.1 * 0.5
    False

Since: base-2.1

Instance details Defined in Data.Fixed Methods (+) :: Fixed a -> Fixed a -> Fixed a Source # (-) :: Fixed a -> Fixed a -> Fixed a Source # (*) :: Fixed a -> Fixed a -> Fixed a Source # negate :: Fixed a -> Fixed a Source # abs :: Fixed a -> Fixed a Source # signum :: Fixed a -> Fixed a Source # fromInteger :: Integer -> Fixed a Source #
Num a => Num (Op a b) |
Instance details Defined in Data.Functor.Contravariant Methods (+) :: Op a b -> Op a b -> Op a b Source # (-) :: Op a b -> Op a b -> Op a b Source # (*) :: Op a b -> Op a b -> Op a b Source # negate :: Op a b -> Op a b Source # abs :: Op a b -> Op a b Source # signum :: Op a b -> Op a b Source # fromInteger :: Integer -> Op a b Source #
(Biapplicative bi, Num a, Num b) => Num (Biap bi a b) |

Instance details

Defined in Data.Bifunctor.Biap

Methods

(+) :: Biap bi a b -> Biap bi a b -> Biap bi a b Source #

(-) :: Biap bi a b -> Biap bi a b -> Biap bi a b Source #

(*) :: Biap bi a b -> Biap bi a b -> Biap bi a b Source #

negate :: Biap bi a b -> Biap bi a b Source #

abs :: Biap bi a b -> Biap bi a b Source #

signum :: Biap bi a b -> Biap bi a b Source #

fromInteger :: Integer -> Biap bi a b Source #

Num a => Num (Tagged s a) |
Instance details Defined in Data.Tagged Methods (+) :: Tagged s a -> Tagged s a -> Tagged s a Source # (-) :: Tagged s a -> Tagged s a -> Tagged s a Source # (*) :: Tagged s a -> Tagged s a -> Tagged s a Source # negate :: Tagged s a -> Tagged s a Source # abs :: Tagged s a -> Tagged s a Source # signum :: Tagged s a -> Tagged s a Source # fromInteger :: Integer -> Tagged s a Source #
Num (f (g a)) => Num (Compose f g a) | Since: base-4.19.0.0

Instance details

Defined in Data.Functor.Compose

Methods

(+) :: Compose f g a -> Compose f g a -> Compose f g a Source #

(-) :: Compose f g a -> Compose f g a -> Compose f g a Source #

(*) :: Compose f g a -> Compose f g a -> Compose f g a Source #

negate :: Compose f g a -> Compose f g a Source #

abs :: Compose f g a -> Compose f g a Source #

signum :: Compose f g a -> Compose f g a Source #

fromInteger :: Integer -> Compose f g a Source #

class Num a => Fractional a where Source #

Fractional numbers, supporting real division.

The Haskell Report defines no laws for `Fractional`. However, `(`+`)` and `(`*`)` are customarily expected to define a division ring and have the following properties:

`recip` gives the multiplicative inverse
  `x * recip x` = `recip x * x` = `fromInteger 1`
Totality of `toRational`
  `toRational` is total
Coherence with `toRational`
  if the type also implements `Real`, then `fromRational` is a left inverse for `toRational`, i.e. `fromRational (toRational i) = i`

Note that it isn't customarily expected that a type instance of `Fractional` implement a field. However, all instances in `base` do.

Minimal complete definition

fromRational, (recip | (/))

Methods

(/) :: a -> a -> a infixl 7 Source #

Fractional division.

recip :: a -> a Source #

Reciprocal fraction.

fromRational :: Rational -> a Source #

Conversion from a `Rational` (that is ``Ratio` `Integer``). A floating literal stands for an application of `fromRational` to a value of type `Rational`, so such literals have type `(`Fractional` a) => a`.

#### Instances

Instances details

Fractional CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (/) :: CDouble -> CDouble -> CDouble Source # recip :: CDouble -> CDouble Source # fromRational :: Rational -> CDouble Source #
Fractional CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (/) :: CFloat -> CFloat -> CFloat Source # recip :: CFloat -> CFloat Source # fromRational :: Rational -> CFloat Source #
Fractional DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods (/) :: DiffTime -> DiffTime -> DiffTime Source # recip :: DiffTime -> DiffTime Source # fromRational :: Rational -> DiffTime Source #

Fractional Double

This instance implements IEEE 754 standard with all its usual pitfalls about NaN, infinities and negative zero.

    >>> 0 == (-0 :: Double)
    True
    >>> recip 0 == recip (-0 :: Double)
    False
    >>> map (/ 0) [-1, 0, 1]
    [-Infinity,NaN,Infinity]
    >>> map (* 0) $ map (/ 0) [-1, 0, 1]
    [NaN,NaN,NaN]

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods (/) :: Double -> Double -> Double Source # recip :: Double -> Double Source # fromRational :: Rational -> Double Source #

Fractional Float

This instance implements IEEE 754 standard with all its usual pitfalls about NaN, infinities and negative zero.

    >>> 0 == (-0 :: Float)
    True
    >>> recip 0 == recip (-0 :: Float)
    False
    >>> map (/ 0) [-1, 0, 1 :: Float]
    [-Infinity,NaN,Infinity]
    >>> map (* 0) $ map (/ 0) [-1, 0, 1 :: Float]
    [NaN,NaN,NaN]

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods (/) :: Float -> Float -> Float Source # recip :: Float -> Float Source # fromRational :: Rational -> Float Source #
RealFloat a => Fractional (Complex a) | Since: base-2.1
Instance details Defined in Data.Complex Methods (/) :: Complex a -> Complex a -> Complex a Source # recip :: Complex a -> Complex a Source # fromRational :: Rational -> Complex a Source #
Fractional a => Fractional (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods (/) :: Identity a -> Identity a -> Identity a Source # recip :: Identity a -> Identity a Source # fromRational :: Rational -> Identity a Source #
Fractional a => Fractional (Down a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (/) :: Down a -> Down a -> Down a Source # recip :: Down a -> Down a Source # fromRational :: Rational -> Down a Source #
Integral a => Fractional (Ratio a) | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods (/) :: Ratio a -> Ratio a -> Ratio a Source # recip :: Ratio a -> Ratio a Source # fromRational :: Rational -> Ratio a Source #
HasResolution a => Fractional (Fixed a) | Since: base-2.1
Instance details Defined in Data.Fixed Methods (/) :: Fixed a -> Fixed a -> Fixed a Source # recip :: Fixed a -> Fixed a Source # fromRational :: Rational -> Fixed a Source #
Fractional a => Fractional (Op a b) |
Instance details Defined in Data.Functor.Contravariant Methods (/) :: Op a b -> Op a b -> Op a b Source # recip :: Op a b -> Op a b Source # fromRational :: Rational -> Op a b Source #
Fractional a => Fractional (Tagged s a) |
Instance details Defined in Data.Tagged Methods (/) :: Tagged s a -> Tagged s a -> Tagged s a Source # recip :: Tagged s a -> Tagged s a Source # fromRational :: Rational -> Tagged s a Source #
Fractional (f (g a)) => Fractional (Compose f g a) | Since: base-4.20.0.0
Instance details Defined in Data.Functor.Compose Methods (/) :: Compose f g a -> Compose f g a -> Compose f g a Source # recip :: Compose f g a -> Compose f g a Source # fromRational :: Rational -> Compose f g a Source #

class Enum a where Source #

Class `Enum` defines operations on sequentially ordered types.

The `enumFrom`... methods are used in Haskell's translation of arithmetic sequences.

Instances of `Enum` may be derived for any enumeration type (types whose constructors have no fields). The nullary constructors are assumed to be numbered left-to-right by `fromEnum` from `0` through `n-1`. See Chapter 10 of the Haskell Report for more details.

For any type that is an instance of class `Bounded` as well as `Enum`, the following should hold:

- The calls ``succ` `maxBound`` and ``pred` `minBound`` should result in a runtime error.
- `fromEnum` and `toEnum` should give a runtime error if the result value is not representable in the result type. For example, ``toEnum` 7 :: `Bool`` is an error.
- `enumFrom` and `enumFromThen` should be defined with an implicit bound, thus:

       enumFrom     x   = enumFromTo     x maxBound
       enumFromThen x y = enumFromThenTo x y bound
         where
           bound | fromEnum y >= fromEnum x = maxBound
                 | otherwise                = minBound

Minimal complete definition

toEnum, fromEnum

Methods

succ :: a -> a Source #

Successor of a value. For numeric types, `succ` adds 1.

pred :: a -> a Source #

Predecessor of a value. For numeric types, `pred` subtracts 1.

toEnum :: Int -> a Source #

Convert from an `Int`.

fromEnum :: a -> Int Source #

Convert to an `Int`. It is implementation-dependent what `fromEnum` returns when applied to a value that is too large to fit in an `Int`.

enumFrom :: a -> [a] Source #

Used in Haskell's translation of `[n..]` with `[n..] = enumFrom n`, a possible implementation being `enumFrom n = n : enumFrom (succ n)`.

#### Examples

Expand

-     enumFrom 4 :: [Integer] = [4,5,6,7,...]

-     enumFrom 6 :: [Int] = [6,7,8,9,...,maxBound :: Int]

enumFromThen :: a -> a -> [a] Source #

Used in Haskell's translation of `[n,n'..]` with `[n,n'..] = enumFromThen n n'`, a possible implementation being `enumFromThen n n' = n : n' : worker (f x) (f x n')`, `worker s v = v : worker s (s v)`, `x = fromEnum n' - fromEnum n` and

      f n y
        | n > 0 = f (n - 1) (succ y)
        | n < 0 = f (n + 1) (pred y)
        | otherwise = y

#### Examples

Expand

-     enumFromThen 4 6 :: [Integer] = [4,6,8,10...]

-     enumFromThen 6 2 :: [Int] = [6,2,-2,-6,...,minBound :: Int]

enumFromTo :: a -> a -> [a] Source #

Used in Haskell's translation of `[n..m]` with `[n..m] = enumFromTo n m`, a possible implementation being

      enumFromTo n m
         | n <= m = n : enumFromTo (succ n) m
         | otherwise = []

#### Examples

Expand

-     enumFromTo 6 10 :: [Int] = [6,7,8,9,10]

-     enumFromTo 42 1 :: [Integer] = []

enumFromThenTo :: a -> a -> a -> [a] Source #

Used in Haskell's translation of `[n,n'..m]` with `[n,n'..m] = enumFromThenTo n n' m`, a possible implementation being `enumFromThenTo n n' m = worker (f x) (c x) n m`, `x = fromEnum n' - fromEnum n`, `c x = bool (>=) ((x 0)`

      f n y
         | n > 0 = f (n - 1) (succ y)
         | n < 0 = f (n + 1) (pred y)
         | otherwise = y

and

      worker s c v m
         | c v m = v : worker s c (s v) m
         | otherwise = []

#### Examples

Expand

-     enumFromThenTo 4 2 -6 :: [Integer] = [4,2,0,-2,-4,-6]

-     enumFromThenTo 6 8 2 :: [Int] = []

#### Instances

Instances details

Enum CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods succ :: CBool -> CBool Source # pred :: CBool -> CBool Source # toEnum :: Int -> CBool Source # fromEnum :: CBool -> Int Source # enumFrom :: CBool -> [CBool] Source # enumFromThen :: CBool -> CBool -> [CBool] Source # enumFromTo :: CBool -> CBool -> [CBool] Source # enumFromThenTo :: CBool -> CBool -> CBool -> [CBool] Source #
Enum CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods succ :: CChar -> CChar Source # pred :: CChar -> CChar Source # toEnum :: Int -> CChar Source # fromEnum :: CChar -> Int Source # enumFrom :: CChar -> [CChar] Source # enumFromThen :: CChar -> CChar -> [CChar] Source # enumFromTo :: CChar -> CChar -> [CChar] Source # enumFromThenTo :: CChar -> CChar -> CChar -> [CChar] Source #
Enum CClock |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CClock -> CClock Source #

pred :: CClock -> CClock Source #

toEnum :: Int -> CClock Source #

fromEnum :: CClock -> Int Source #

enumFrom :: CClock -> [CClock] Source #

enumFromThen :: CClock -> CClock -> [CClock] Source #

enumFromTo :: CClock -> CClock -> [CClock] Source #

enumFromThenTo :: CClock -> CClock -> CClock -> [CClock] Source #

Enum CDouble |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CDouble -> CDouble Source #

pred :: CDouble -> CDouble Source #

toEnum :: Int -> CDouble Source #

fromEnum :: CDouble -> Int Source #

enumFrom :: CDouble -> [CDouble] Source #

enumFromThen :: CDouble -> CDouble -> [CDouble] Source #

enumFromTo :: CDouble -> CDouble -> [CDouble] Source #

enumFromThenTo :: CDouble -> CDouble -> CDouble -> [CDouble] Source #

Enum CFloat |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CFloat -> CFloat Source #

pred :: CFloat -> CFloat Source #

toEnum :: Int -> CFloat Source #

fromEnum :: CFloat -> Int Source #

enumFrom :: CFloat -> [CFloat] Source #

enumFromThen :: CFloat -> CFloat -> [CFloat] Source #

enumFromTo :: CFloat -> CFloat -> [CFloat] Source #

enumFromThenTo :: CFloat -> CFloat -> CFloat -> [CFloat] Source #

Enum CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods succ :: CInt -> CInt Source # pred :: CInt -> CInt Source # toEnum :: Int -> CInt Source # fromEnum :: CInt -> Int Source # enumFrom :: CInt -> [CInt] Source # enumFromThen :: CInt -> CInt -> [CInt] Source # enumFromTo :: CInt -> CInt -> [CInt] Source # enumFromThenTo :: CInt -> CInt -> CInt -> [CInt] Source #
Enum CIntMax |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CIntMax -> CIntMax Source #

pred :: CIntMax -> CIntMax Source #

toEnum :: Int -> CIntMax Source #

fromEnum :: CIntMax -> Int Source #

enumFrom :: CIntMax -> [CIntMax] Source #

enumFromThen :: CIntMax -> CIntMax -> [CIntMax] Source #

enumFromTo :: CIntMax -> CIntMax -> [CIntMax] Source #

enumFromThenTo :: CIntMax -> CIntMax -> CIntMax -> [CIntMax] Source #

Enum CIntPtr |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CIntPtr -> CIntPtr Source #

pred :: CIntPtr -> CIntPtr Source #

toEnum :: Int -> CIntPtr Source #

fromEnum :: CIntPtr -> Int Source #

enumFrom :: CIntPtr -> [CIntPtr] Source #

enumFromThen :: CIntPtr -> CIntPtr -> [CIntPtr] Source #

enumFromTo :: CIntPtr -> CIntPtr -> [CIntPtr] Source #

enumFromThenTo :: CIntPtr -> CIntPtr -> CIntPtr -> [CIntPtr] Source #

Enum CLLong |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CLLong -> CLLong Source #

pred :: CLLong -> CLLong Source #

toEnum :: Int -> CLLong Source #

fromEnum :: CLLong -> Int Source #

enumFrom :: CLLong -> [CLLong] Source #

enumFromThen :: CLLong -> CLLong -> [CLLong] Source #

enumFromTo :: CLLong -> CLLong -> [CLLong] Source #

enumFromThenTo :: CLLong -> CLLong -> CLLong -> [CLLong] Source #

Enum CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods succ :: CLong -> CLong Source # pred :: CLong -> CLong Source # toEnum :: Int -> CLong Source # fromEnum :: CLong -> Int Source # enumFrom :: CLong -> [CLong] Source # enumFromThen :: CLong -> CLong -> [CLong] Source # enumFromTo :: CLong -> CLong -> [CLong] Source # enumFromThenTo :: CLong -> CLong -> CLong -> [CLong] Source #
Enum CPtrdiff |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CPtrdiff -> CPtrdiff Source #

pred :: CPtrdiff -> CPtrdiff Source #

toEnum :: Int -> CPtrdiff Source #

fromEnum :: CPtrdiff -> Int Source #

enumFrom :: CPtrdiff -> [CPtrdiff] Source #

enumFromThen :: CPtrdiff -> CPtrdiff -> [CPtrdiff] Source #

enumFromTo :: CPtrdiff -> CPtrdiff -> [CPtrdiff] Source #

enumFromThenTo :: CPtrdiff -> CPtrdiff -> CPtrdiff -> [CPtrdiff] Source #

Enum CSChar |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CSChar -> CSChar Source #

pred :: CSChar -> CSChar Source #

toEnum :: Int -> CSChar Source #

fromEnum :: CSChar -> Int Source #

enumFrom :: CSChar -> [CSChar] Source #

enumFromThen :: CSChar -> CSChar -> [CSChar] Source #

enumFromTo :: CSChar -> CSChar -> [CSChar] Source #

enumFromThenTo :: CSChar -> CSChar -> CSChar -> [CSChar] Source #

Enum CSUSeconds |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CSUSeconds -> CSUSeconds Source #

pred :: CSUSeconds -> CSUSeconds Source #

toEnum :: Int -> CSUSeconds Source #

fromEnum :: CSUSeconds -> Int Source #

enumFrom :: CSUSeconds -> [CSUSeconds] Source #

enumFromThen :: CSUSeconds -> CSUSeconds -> [CSUSeconds] Source #

enumFromTo :: CSUSeconds -> CSUSeconds -> [CSUSeconds] Source #

enumFromThenTo :: CSUSeconds -> CSUSeconds -> CSUSeconds -> [CSUSeconds] Source #

Enum CShort |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CShort -> CShort Source #

pred :: CShort -> CShort Source #

toEnum :: Int -> CShort Source #

fromEnum :: CShort -> Int Source #

enumFrom :: CShort -> [CShort] Source #

enumFromThen :: CShort -> CShort -> [CShort] Source #

enumFromTo :: CShort -> CShort -> [CShort] Source #

enumFromThenTo :: CShort -> CShort -> CShort -> [CShort] Source #

Enum CSigAtomic |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CSigAtomic -> CSigAtomic Source #

pred :: CSigAtomic -> CSigAtomic Source #

toEnum :: Int -> CSigAtomic Source #

fromEnum :: CSigAtomic -> Int Source #

enumFrom :: CSigAtomic -> [CSigAtomic] Source #

enumFromThen :: CSigAtomic -> CSigAtomic -> [CSigAtomic] Source #

enumFromTo :: CSigAtomic -> CSigAtomic -> [CSigAtomic] Source #

enumFromThenTo :: CSigAtomic -> CSigAtomic -> CSigAtomic -> [CSigAtomic] Source #

Enum CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods succ :: CSize -> CSize Source # pred :: CSize -> CSize Source # toEnum :: Int -> CSize Source # fromEnum :: CSize -> Int Source # enumFrom :: CSize -> [CSize] Source # enumFromThen :: CSize -> CSize -> [CSize] Source # enumFromTo :: CSize -> CSize -> [CSize] Source # enumFromThenTo :: CSize -> CSize -> CSize -> [CSize] Source #
Enum CTime |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods succ :: CTime -> CTime Source # pred :: CTime -> CTime Source # toEnum :: Int -> CTime Source # fromEnum :: CTime -> Int Source # enumFrom :: CTime -> [CTime] Source # enumFromThen :: CTime -> CTime -> [CTime] Source # enumFromTo :: CTime -> CTime -> [CTime] Source # enumFromThenTo :: CTime -> CTime -> CTime -> [CTime] Source #
Enum CUChar |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CUChar -> CUChar Source #

pred :: CUChar -> CUChar Source #

toEnum :: Int -> CUChar Source #

fromEnum :: CUChar -> Int Source #

enumFrom :: CUChar -> [CUChar] Source #

enumFromThen :: CUChar -> CUChar -> [CUChar] Source #

enumFromTo :: CUChar -> CUChar -> [CUChar] Source #

enumFromThenTo :: CUChar -> CUChar -> CUChar -> [CUChar] Source #

Enum CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods succ :: CUInt -> CUInt Source # pred :: CUInt -> CUInt Source # toEnum :: Int -> CUInt Source # fromEnum :: CUInt -> Int Source # enumFrom :: CUInt -> [CUInt] Source # enumFromThen :: CUInt -> CUInt -> [CUInt] Source # enumFromTo :: CUInt -> CUInt -> [CUInt] Source # enumFromThenTo :: CUInt -> CUInt -> CUInt -> [CUInt] Source #
Enum CUIntMax |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CUIntMax -> CUIntMax Source #

pred :: CUIntMax -> CUIntMax Source #

toEnum :: Int -> CUIntMax Source #

fromEnum :: CUIntMax -> Int Source #

enumFrom :: CUIntMax -> [CUIntMax] Source #

enumFromThen :: CUIntMax -> CUIntMax -> [CUIntMax] Source #

enumFromTo :: CUIntMax -> CUIntMax -> [CUIntMax] Source #

enumFromThenTo :: CUIntMax -> CUIntMax -> CUIntMax -> [CUIntMax] Source #

Enum CUIntPtr |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CUIntPtr -> CUIntPtr Source #

pred :: CUIntPtr -> CUIntPtr Source #

toEnum :: Int -> CUIntPtr Source #

fromEnum :: CUIntPtr -> Int Source #

enumFrom :: CUIntPtr -> [CUIntPtr] Source #

enumFromThen :: CUIntPtr -> CUIntPtr -> [CUIntPtr] Source #

enumFromTo :: CUIntPtr -> CUIntPtr -> [CUIntPtr] Source #

enumFromThenTo :: CUIntPtr -> CUIntPtr -> CUIntPtr -> [CUIntPtr] Source #

Enum CULLong |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CULLong -> CULLong Source #

pred :: CULLong -> CULLong Source #

toEnum :: Int -> CULLong Source #

fromEnum :: CULLong -> Int Source #

enumFrom :: CULLong -> [CULLong] Source #

enumFromThen :: CULLong -> CULLong -> [CULLong] Source #

enumFromTo :: CULLong -> CULLong -> [CULLong] Source #

enumFromThenTo :: CULLong -> CULLong -> CULLong -> [CULLong] Source #

Enum CULong |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CULong -> CULong Source #

pred :: CULong -> CULong Source #

toEnum :: Int -> CULong Source #

fromEnum :: CULong -> Int Source #

enumFrom :: CULong -> [CULong] Source #

enumFromThen :: CULong -> CULong -> [CULong] Source #

enumFromTo :: CULong -> CULong -> [CULong] Source #

enumFromThenTo :: CULong -> CULong -> CULong -> [CULong] Source #

Enum CUSeconds |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CUSeconds -> CUSeconds Source #

pred :: CUSeconds -> CUSeconds Source #

toEnum :: Int -> CUSeconds Source #

fromEnum :: CUSeconds -> Int Source #

enumFrom :: CUSeconds -> [CUSeconds] Source #

enumFromThen :: CUSeconds -> CUSeconds -> [CUSeconds] Source #

enumFromTo :: CUSeconds -> CUSeconds -> [CUSeconds] Source #

enumFromThenTo :: CUSeconds -> CUSeconds -> CUSeconds -> [CUSeconds] Source #

Enum CUShort |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CUShort -> CUShort Source #

pred :: CUShort -> CUShort Source #

toEnum :: Int -> CUShort Source #

fromEnum :: CUShort -> Int Source #

enumFrom :: CUShort -> [CUShort] Source #

enumFromThen :: CUShort -> CUShort -> [CUShort] Source #

enumFromTo :: CUShort -> CUShort -> [CUShort] Source #

enumFromThenTo :: CUShort -> CUShort -> CUShort -> [CUShort] Source #

Enum CWchar |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

succ :: CWchar -> CWchar Source #

pred :: CWchar -> CWchar Source #

toEnum :: Int -> CWchar Source #

fromEnum :: CWchar -> Int Source #

enumFrom :: CWchar -> [CWchar] Source #

enumFromThen :: CWchar -> CWchar -> [CWchar] Source #

enumFromTo :: CWchar -> CWchar -> [CWchar] Source #

enumFromThenTo :: CWchar -> CWchar -> CWchar -> [CWchar] Source #

Enum Associativity | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

succ :: Associativity -> Associativity Source #

pred :: Associativity -> Associativity Source #

toEnum :: Int -> Associativity Source #

fromEnum :: Associativity -> Int Source #

enumFrom :: Associativity -> [Associativity] Source #

enumFromThen :: Associativity -> Associativity -> [Associativity] Source #

enumFromTo :: Associativity -> Associativity -> [Associativity] Source #

enumFromThenTo :: Associativity -> Associativity -> Associativity -> [Associativity] Source #

Enum DecidedStrictness | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

succ :: DecidedStrictness -> DecidedStrictness Source #

pred :: DecidedStrictness -> DecidedStrictness Source #

toEnum :: Int -> DecidedStrictness Source #

fromEnum :: DecidedStrictness -> Int Source #

enumFrom :: DecidedStrictness -> [DecidedStrictness] Source #

enumFromThen :: DecidedStrictness -> DecidedStrictness -> [DecidedStrictness] Source #

enumFromTo :: DecidedStrictness -> DecidedStrictness -> [DecidedStrictness] Source #

enumFromThenTo :: DecidedStrictness -> DecidedStrictness -> DecidedStrictness -> [DecidedStrictness] Source #

Enum SourceStrictness | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

succ :: SourceStrictness -> SourceStrictness Source #

pred :: SourceStrictness -> SourceStrictness Source #

toEnum :: Int -> SourceStrictness Source #

fromEnum :: SourceStrictness -> Int Source #

enumFrom :: SourceStrictness -> [SourceStrictness] Source #

enumFromThen :: SourceStrictness -> SourceStrictness -> [SourceStrictness] Source #

enumFromTo :: SourceStrictness -> SourceStrictness -> [SourceStrictness] Source #

enumFromThenTo :: SourceStrictness -> SourceStrictness -> SourceStrictness -> [SourceStrictness] Source #

Enum SourceUnpackedness | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

succ :: SourceUnpackedness -> SourceUnpackedness Source #

pred :: SourceUnpackedness -> SourceUnpackedness Source #

toEnum :: Int -> SourceUnpackedness Source #

fromEnum :: SourceUnpackedness -> Int Source #

enumFrom :: SourceUnpackedness -> [SourceUnpackedness] Source #

enumFromThen :: SourceUnpackedness -> SourceUnpackedness -> [SourceUnpackedness] Source #

enumFromTo :: SourceUnpackedness -> SourceUnpackedness -> [SourceUnpackedness] Source #

enumFromThenTo :: SourceUnpackedness -> SourceUnpackedness -> SourceUnpackedness -> [SourceUnpackedness] Source #

Enum SeekMode | Since: base-4.2.0.0

Instance details

Defined in GHC.Internal.IO.Device

Methods

succ :: SeekMode -> SeekMode Source #

pred :: SeekMode -> SeekMode Source #

toEnum :: Int -> SeekMode Source #

fromEnum :: SeekMode -> Int Source #

enumFrom :: SeekMode -> [SeekMode] Source #

enumFromThen :: SeekMode -> SeekMode -> [SeekMode] Source #

enumFromTo :: SeekMode -> SeekMode -> [SeekMode] Source #

enumFromThenTo :: SeekMode -> SeekMode -> SeekMode -> [SeekMode] Source #

Enum IOMode | Since: base-4.2.0.0

Instance details

Defined in GHC.Internal.IO.IOMode

Methods

succ :: IOMode -> IOMode Source #

pred :: IOMode -> IOMode Source #

toEnum :: Int -> IOMode Source #

fromEnum :: IOMode -> Int Source #

enumFrom :: IOMode -> [IOMode] Source #

enumFromThen :: IOMode -> IOMode -> [IOMode] Source #

enumFromTo :: IOMode -> IOMode -> [IOMode] Source #

enumFromThenTo :: IOMode -> IOMode -> IOMode -> [IOMode] Source #

Enum Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods succ :: Int16 -> Int16 Source # pred :: Int16 -> Int16 Source # toEnum :: Int -> Int16 Source # fromEnum :: Int16 -> Int Source # enumFrom :: Int16 -> [Int16] Source # enumFromThen :: Int16 -> Int16 -> [Int16] Source # enumFromTo :: Int16 -> Int16 -> [Int16] Source # enumFromThenTo :: Int16 -> Int16 -> Int16 -> [Int16] Source #
Enum Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods succ :: Int32 -> Int32 Source # pred :: Int32 -> Int32 Source # toEnum :: Int -> Int32 Source # fromEnum :: Int32 -> Int Source # enumFrom :: Int32 -> [Int32] Source # enumFromThen :: Int32 -> Int32 -> [Int32] Source # enumFromTo :: Int32 -> Int32 -> [Int32] Source # enumFromThenTo :: Int32 -> Int32 -> Int32 -> [Int32] Source #
Enum Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods succ :: Int64 -> Int64 Source # pred :: Int64 -> Int64 Source # toEnum :: Int -> Int64 Source # fromEnum :: Int64 -> Int Source # enumFrom :: Int64 -> [Int64] Source # enumFromThen :: Int64 -> Int64 -> [Int64] Source # enumFromTo :: Int64 -> Int64 -> [Int64] Source # enumFromThenTo :: Int64 -> Int64 -> Int64 -> [Int64] Source #
Enum Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods succ :: Int8 -> Int8 Source # pred :: Int8 -> Int8 Source # toEnum :: Int -> Int8 Source # fromEnum :: Int8 -> Int Source # enumFrom :: Int8 -> [Int8] Source # enumFromThen :: Int8 -> Int8 -> [Int8] Source # enumFromTo :: Int8 -> Int8 -> [Int8] Source # enumFromThenTo :: Int8 -> Int8 -> Int8 -> [Int8] Source #
Enum GeneralCategory | Since: base-2.1

Instance details

Defined in GHC.Internal.Unicode

Methods

succ :: GeneralCategory -> GeneralCategory Source #

pred :: GeneralCategory -> GeneralCategory Source #

toEnum :: Int -> GeneralCategory Source #

fromEnum :: GeneralCategory -> Int Source #

enumFrom :: GeneralCategory -> [GeneralCategory] Source #

enumFromThen :: GeneralCategory -> GeneralCategory -> [GeneralCategory] Source #

enumFromTo :: GeneralCategory -> GeneralCategory -> [GeneralCategory] Source #

enumFromThenTo :: GeneralCategory -> GeneralCategory -> GeneralCategory -> [GeneralCategory] Source #

Enum Word16 | Since: base-2.1

Instance details

Defined in GHC.Internal.Word

Methods

succ :: Word16 -> Word16 Source #

pred :: Word16 -> Word16 Source #

toEnum :: Int -> Word16 Source #

fromEnum :: Word16 -> Int Source #

enumFrom :: Word16 -> [Word16] Source #

enumFromThen :: Word16 -> Word16 -> [Word16] Source #

enumFromTo :: Word16 -> Word16 -> [Word16] Source #

enumFromThenTo :: Word16 -> Word16 -> Word16 -> [Word16] Source #

Enum Word32 | Since: base-2.1

Instance details

Defined in GHC.Internal.Word

Methods

succ :: Word32 -> Word32 Source #

pred :: Word32 -> Word32 Source #

toEnum :: Int -> Word32 Source #

fromEnum :: Word32 -> Int Source #

enumFrom :: Word32 -> [Word32] Source #

enumFromThen :: Word32 -> Word32 -> [Word32] Source #

enumFromTo :: Word32 -> Word32 -> [Word32] Source #

enumFromThenTo :: Word32 -> Word32 -> Word32 -> [Word32] Source #

Enum Word64 | Since: base-2.1

Instance details

Defined in GHC.Internal.Word

Methods

succ :: Word64 -> Word64 Source #

pred :: Word64 -> Word64 Source #

toEnum :: Int -> Word64 Source #

fromEnum :: Word64 -> Int Source #

enumFrom :: Word64 -> [Word64] Source #

enumFromThen :: Word64 -> Word64 -> [Word64] Source #

enumFromTo :: Word64 -> Word64 -> [Word64] Source #

enumFromThenTo :: Word64 -> Word64 -> Word64 -> [Word64] Source #

Enum Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods succ :: Word8 -> Word8 Source # pred :: Word8 -> Word8 Source # toEnum :: Int -> Word8 Source # fromEnum :: Word8 -> Int Source # enumFrom :: Word8 -> [Word8] Source # enumFromThen :: Word8 -> Word8 -> [Word8] Source # enumFromTo :: Word8 -> Word8 -> [Word8] Source # enumFromThenTo :: Word8 -> Word8 -> Word8 -> [Word8] Source #
Enum Ordering | Since: base-2.1

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: Ordering -> Ordering Source #

pred :: Ordering -> Ordering Source #

toEnum :: Int -> Ordering Source #

fromEnum :: Ordering -> Int Source #

enumFrom :: Ordering -> [Ordering] Source #

enumFromThen :: Ordering -> Ordering -> [Ordering] Source #

enumFromTo :: Ordering -> Ordering -> [Ordering] Source #

enumFromThenTo :: Ordering -> Ordering -> Ordering -> [Ordering] Source #

Enum I8 |
Instance details Defined in Data.Text.Foreign Methods succ :: I8 -> I8 Source # pred :: I8 -> I8 Source # toEnum :: Int -> I8 Source # fromEnum :: I8 -> Int Source # enumFrom :: I8 -> [I8] Source # enumFromThen :: I8 -> I8 -> [I8] Source # enumFromTo :: I8 -> I8 -> [I8] Source # enumFromThenTo :: I8 -> I8 -> I8 -> [I8] Source #
Enum FPFormat |

Instance details

Defined in Data.Text.Lazy.Builder.RealFloat

Methods

succ :: FPFormat -> FPFormat Source #

pred :: FPFormat -> FPFormat Source #

toEnum :: Int -> FPFormat Source #

fromEnum :: FPFormat -> Int Source #

enumFrom :: FPFormat -> [FPFormat] Source #

enumFromThen :: FPFormat -> FPFormat -> [FPFormat] Source #

enumFromTo :: FPFormat -> FPFormat -> [FPFormat] Source #

enumFromThenTo :: FPFormat -> FPFormat -> FPFormat -> [FPFormat] Source #

Enum Day |
Instance details Defined in Data.Time.Calendar.Days Methods succ :: Day -> Day Source # pred :: Day -> Day Source # toEnum :: Int -> Day Source # fromEnum :: Day -> Int Source # enumFrom :: Day -> [Day] Source # enumFromThen :: Day -> Day -> [Day] Source # enumFromTo :: Day -> Day -> [Day] Source # enumFromThenTo :: Day -> Day -> Day -> [Day] Source #
Enum Month |
Instance details Defined in Data.Time.Calendar.Month Methods succ :: Month -> Month Source # pred :: Month -> Month Source # toEnum :: Int -> Month Source # fromEnum :: Month -> Int Source # enumFrom :: Month -> [Month] Source # enumFromThen :: Month -> Month -> [Month] Source # enumFromTo :: Month -> Month -> [Month] Source # enumFromThenTo :: Month -> Month -> Month -> [Month] Source #
Enum Quarter |

Instance details

Defined in Data.Time.Calendar.Quarter

Methods

succ :: Quarter -> Quarter Source #

pred :: Quarter -> Quarter Source #

toEnum :: Int -> Quarter Source #

fromEnum :: Quarter -> Int Source #

enumFrom :: Quarter -> [Quarter] Source #

enumFromThen :: Quarter -> Quarter -> [Quarter] Source #

enumFromTo :: Quarter -> Quarter -> [Quarter] Source #

enumFromThenTo :: Quarter -> Quarter -> Quarter -> [Quarter] Source #

Enum QuarterOfYear | maps Q1..Q4 to 1..4

Instance details

Defined in Data.Time.Calendar.Quarter

Methods

succ :: QuarterOfYear -> QuarterOfYear Source #

pred :: QuarterOfYear -> QuarterOfYear Source #

toEnum :: Int -> QuarterOfYear Source #

fromEnum :: QuarterOfYear -> Int Source #

enumFrom :: QuarterOfYear -> [QuarterOfYear] Source #

enumFromThen :: QuarterOfYear -> QuarterOfYear -> [QuarterOfYear] Source #

enumFromTo :: QuarterOfYear -> QuarterOfYear -> [QuarterOfYear] Source #

enumFromThenTo :: QuarterOfYear -> QuarterOfYear -> QuarterOfYear -> [QuarterOfYear] Source #

Enum DiffTime |

Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Methods

succ :: DiffTime -> DiffTime Source #

pred :: DiffTime -> DiffTime Source #

toEnum :: Int -> DiffTime Source #

fromEnum :: DiffTime -> Int Source #

enumFrom :: DiffTime -> [DiffTime] Source #

enumFromThen :: DiffTime -> DiffTime -> [DiffTime] Source #

enumFromTo :: DiffTime -> DiffTime -> [DiffTime] Source #

enumFromThenTo :: DiffTime -> DiffTime -> DiffTime -> [DiffTime] Source #

Enum Integer | Since: base-2.1

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: Integer -> Integer Source #

pred :: Integer -> Integer Source #

toEnum :: Int -> Integer Source #

fromEnum :: Integer -> Int Source #

enumFrom :: Integer -> [Integer] Source #

enumFromThen :: Integer -> Integer -> [Integer] Source #

enumFromTo :: Integer -> Integer -> [Integer] Source #

enumFromThenTo :: Integer -> Integer -> Integer -> [Integer] Source #

Enum Natural | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: Natural -> Natural Source #

pred :: Natural -> Natural Source #

toEnum :: Int -> Natural Source #

fromEnum :: Natural -> Int Source #

enumFrom :: Natural -> [Natural] Source #

enumFromThen :: Natural -> Natural -> [Natural] Source #

enumFromTo :: Natural -> Natural -> [Natural] Source #

enumFromThenTo :: Natural -> Natural -> Natural -> [Natural] Source #

Enum () | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: () -> () Source # pred :: () -> () Source # toEnum :: Int -> () Source # fromEnum :: () -> Int Source # enumFrom :: () -> [()] Source # enumFromThen :: () -> () -> [()] Source # enumFromTo :: () -> () -> [()] Source # enumFromThenTo :: () -> () -> () -> [()] Source #
Enum Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: Bool -> Bool Source # pred :: Bool -> Bool Source # toEnum :: Int -> Bool Source # fromEnum :: Bool -> Int Source # enumFrom :: Bool -> [Bool] Source # enumFromThen :: Bool -> Bool -> [Bool] Source # enumFromTo :: Bool -> Bool -> [Bool] Source # enumFromThenTo :: Bool -> Bool -> Bool -> [Bool] Source #
Enum Char | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: Char -> Char Source # pred :: Char -> Char Source # toEnum :: Int -> Char Source # fromEnum :: Char -> Int Source # enumFrom :: Char -> [Char] Source # enumFromThen :: Char -> Char -> [Char] Source # enumFromTo :: Char -> Char -> [Char] Source # enumFromThenTo :: Char -> Char -> Char -> [Char] Source #

Enum Double

`fromEnum` just truncates its argument, beware of all sorts of overflows.

List generators have extremely peculiar behavior, mandated by Haskell Report 2010:

    >>> [0..1.5]
    [0.0,1.0,2.0]

Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

succ :: Double -> Double Source #

pred :: Double -> Double Source #

toEnum :: Int -> Double Source #

fromEnum :: Double -> Int Source #

enumFrom :: Double -> [Double] Source #

enumFromThen :: Double -> Double -> [Double] Source #

enumFromTo :: Double -> Double -> [Double] Source #

enumFromThenTo :: Double -> Double -> Double -> [Double] Source #

Enum Float

`fromEnum` just truncates its argument, beware of all sorts of overflows.

List generators have extremely peculiar behavior, mandated by Haskell Report 2010:

    >>> [0..1.5 :: Float]
    [0.0,1.0,2.0]

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods succ :: Float -> Float Source # pred :: Float -> Float Source # toEnum :: Int -> Float Source # fromEnum :: Float -> Int Source # enumFrom :: Float -> [Float] Source # enumFromThen :: Float -> Float -> [Float] Source # enumFromTo :: Float -> Float -> [Float] Source # enumFromThenTo :: Float -> Float -> Float -> [Float] Source #
Enum Int | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: Int -> Int Source # pred :: Int -> Int Source # toEnum :: Int -> Int Source # fromEnum :: Int -> Int Source # enumFrom :: Int -> [Int] Source # enumFromThen :: Int -> Int -> [Int] Source # enumFromTo :: Int -> Int -> [Int] Source # enumFromThenTo :: Int -> Int -> Int -> [Int] Source #
Enum Levity | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: Levity -> Levity Source #

pred :: Levity -> Levity Source #

toEnum :: Int -> Levity Source #

fromEnum :: Levity -> Int Source #

enumFrom :: Levity -> [Levity] Source #

enumFromThen :: Levity -> Levity -> [Levity] Source #

enumFromTo :: Levity -> Levity -> [Levity] Source #

enumFromThenTo :: Levity -> Levity -> Levity -> [Levity] Source #

Enum VecCount | Since: base-4.10.0.0

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: VecCount -> VecCount Source #

pred :: VecCount -> VecCount Source #

toEnum :: Int -> VecCount Source #

fromEnum :: VecCount -> Int Source #

enumFrom :: VecCount -> [VecCount] Source #

enumFromThen :: VecCount -> VecCount -> [VecCount] Source #

enumFromTo :: VecCount -> VecCount -> [VecCount] Source #

enumFromThenTo :: VecCount -> VecCount -> VecCount -> [VecCount] Source #

Enum VecElem | Since: base-4.10.0.0

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: VecElem -> VecElem Source #

pred :: VecElem -> VecElem Source #

toEnum :: Int -> VecElem Source #

fromEnum :: VecElem -> Int Source #

enumFrom :: VecElem -> [VecElem] Source #

enumFromThen :: VecElem -> VecElem -> [VecElem] Source #

enumFromTo :: VecElem -> VecElem -> [VecElem] Source #

enumFromThenTo :: VecElem -> VecElem -> VecElem -> [VecElem] Source #

Enum Word | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods succ :: Word -> Word Source # pred :: Word -> Word Source # toEnum :: Int -> Word Source # fromEnum :: Word -> Int Source # enumFrom :: Word -> [Word] Source # enumFromThen :: Word -> Word -> [Word] Source # enumFromTo :: Word -> Word -> [Word] Source # enumFromThenTo :: Word -> Word -> Word -> [Word] Source #
Enum a => Enum (First a) | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

succ :: First a -> First a Source #

pred :: First a -> First a Source #

toEnum :: Int -> First a Source #

fromEnum :: First a -> Int Source #

enumFrom :: First a -> [First a] Source #

enumFromThen :: First a -> First a -> [First a] Source #

enumFromTo :: First a -> First a -> [First a] Source #

enumFromThenTo :: First a -> First a -> First a -> [First a] Source #

Enum a => Enum (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods succ :: Last a -> Last a Source # pred :: Last a -> Last a Source # toEnum :: Int -> Last a Source # fromEnum :: Last a -> Int Source # enumFrom :: Last a -> [Last a] Source # enumFromThen :: Last a -> Last a -> [Last a] Source # enumFromTo :: Last a -> Last a -> [Last a] Source # enumFromThenTo :: Last a -> Last a -> Last a -> [Last a] Source #
Enum a => Enum (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods succ :: Max a -> Max a Source # pred :: Max a -> Max a Source # toEnum :: Int -> Max a Source # fromEnum :: Max a -> Int Source # enumFrom :: Max a -> [Max a] Source # enumFromThen :: Max a -> Max a -> [Max a] Source # enumFromTo :: Max a -> Max a -> [Max a] Source # enumFromThenTo :: Max a -> Max a -> Max a -> [Max a] Source #
Enum a => Enum (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods succ :: Min a -> Min a Source # pred :: Min a -> Min a Source # toEnum :: Int -> Min a Source # fromEnum :: Min a -> Int Source # enumFrom :: Min a -> [Min a] Source # enumFromThen :: Min a -> Min a -> [Min a] Source # enumFromTo :: Min a -> Min a -> [Min a] Source # enumFromThenTo :: Min a -> Min a -> Min a -> [Min a] Source #
Enum a => Enum (WrappedMonoid a) | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

succ :: WrappedMonoid a -> WrappedMonoid a Source #

pred :: WrappedMonoid a -> WrappedMonoid a Source #

toEnum :: Int -> WrappedMonoid a Source #

fromEnum :: WrappedMonoid a -> Int Source #

enumFrom :: WrappedMonoid a -> [WrappedMonoid a] Source #

enumFromThen :: WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] Source #

enumFromTo :: WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] Source #

enumFromThenTo :: WrappedMonoid a -> WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] Source #

Enum a => Enum (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

succ :: Identity a -> Identity a Source #

pred :: Identity a -> Identity a Source #

toEnum :: Int -> Identity a Source #

fromEnum :: Identity a -> Int Source #

enumFrom :: Identity a -> [Identity a] Source #

enumFromThen :: Identity a -> Identity a -> [Identity a] Source #

enumFromTo :: Identity a -> Identity a -> [Identity a] Source #

enumFromThenTo :: Identity a -> Identity a -> Identity a -> [Identity a] Source #

(Enum a, Bounded a, Eq a) => Enum (Down a) | Swaps ``succ`` and ``pred`` of the underlying type. Since: base-4.18.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

succ :: Down a -> Down a Source #

pred :: Down a -> Down a Source #

toEnum :: Int -> Down a Source #

fromEnum :: Down a -> Int Source #

enumFrom :: Down a -> [Down a] Source #

enumFromThen :: Down a -> Down a -> [Down a] Source #

enumFromTo :: Down a -> Down a -> [Down a] Source #

enumFromThenTo :: Down a -> Down a -> Down a -> [Down a] Source #

Integral a => Enum (Ratio a) | Since: base-2.0.1

Instance details

Defined in GHC.Internal.Real

Methods

succ :: Ratio a -> Ratio a Source #

pred :: Ratio a -> Ratio a Source #

toEnum :: Int -> Ratio a Source #

fromEnum :: Ratio a -> Int Source #

enumFrom :: Ratio a -> [Ratio a] Source #

enumFromThen :: Ratio a -> Ratio a -> [Ratio a] Source #

enumFromTo :: Ratio a -> Ratio a -> [Ratio a] Source #

enumFromThenTo :: Ratio a -> Ratio a -> Ratio a -> [Ratio a] Source #

Enum a => Enum (Solo a) |

Instance details

Defined in GHC.Internal.Enum

Methods

succ :: Solo a -> Solo a Source #

pred :: Solo a -> Solo a Source #

toEnum :: Int -> Solo a Source #

fromEnum :: Solo a -> Int Source #

enumFrom :: Solo a -> [Solo a] Source #

enumFromThen :: Solo a -> Solo a -> [Solo a] Source #

enumFromTo :: Solo a -> Solo a -> [Solo a] Source #

enumFromThenTo :: Solo a -> Solo a -> Solo a -> [Solo a] Source #

Enum (Fixed a)

Recall that, for numeric types, `succ` and `pred` typically add and subtract `1`, respectively. This is not true in the case of `Fixed`, whose successor and predecessor functions intuitively return the "next" and "previous" values in the enumeration. The results of these functions thus depend on the resolution of the `Fixed` value. For example, when enumerating values of resolution `10^-3` of `type Milli = Fixed E3`,

    >>> succ (0.000 :: Milli)
    0.001

and likewise

    >>> pred (0.000 :: Milli)
    -0.001

In other words, `succ` and `pred` increment and decrement a fixed-precision value by the least amount such that the value's resolution is unchanged. For example, `10^-12` is the smallest (positive) amount that can be added to a value of `type Pico = Fixed E12` without changing its resolution, and so

    >>> succ (0.000000000000 :: Pico)
    0.000000000001

and similarly

    >>> pred (0.000000000000 :: Pico)
    -0.000000000001

This is worth bearing in mind when defining `Fixed` arithmetic sequences. In particular, you may be forgiven for thinking the sequence

      [1..10] :: [Pico]

evaluates to `[1, 2, 3, 4, 5, 6, 7, 8, 9, 10] :: [Pico]`.

However, this is not true. On the contrary, similarly to the above implementations of `succ` and `pred`, `enumFromTo :: Pico -> Pico -> [Pico]` has a "step size" of `10^-12`. Hence, the list `[1..10] :: [Pico]` has the form

      [1.000000000000, 1.00000000001, 1.00000000002, ..., 10.000000000000]

and contains `9 * 10^12 + 1` values.

Since: base-2.1

Instance details

Defined in Data.Fixed

Methods

succ :: Fixed a -> Fixed a Source #

pred :: Fixed a -> Fixed a Source #

toEnum :: Int -> Fixed a Source #

fromEnum :: Fixed a -> Int Source #

enumFrom :: Fixed a -> [Fixed a] Source #

enumFromThen :: Fixed a -> Fixed a -> [Fixed a] Source #

enumFromTo :: Fixed a -> Fixed a -> [Fixed a] Source #

enumFromThenTo :: Fixed a -> Fixed a -> Fixed a -> [Fixed a] Source #

Enum (bi a b) => Enum (Biap bi a b) |

Instance details

Defined in Data.Bifunctor.Biap

Methods

succ :: Biap bi a b -> Biap bi a b Source #

pred :: Biap bi a b -> Biap bi a b Source #

toEnum :: Int -> Biap bi a b Source #

fromEnum :: Biap bi a b -> Int Source #

enumFrom :: Biap bi a b -> [Biap bi a b] Source #

enumFromThen :: Biap bi a b -> Biap bi a b -> [Biap bi a b] Source #

enumFromTo :: Biap bi a b -> Biap bi a b -> [Biap bi a b] Source #

enumFromThenTo :: Biap bi a b -> Biap bi a b -> Biap bi a b -> [Biap bi a b] Source #

Enum a => Enum (Tagged s a) |

Instance details

Defined in Data.Tagged

Methods

succ :: Tagged s a -> Tagged s a Source #

pred :: Tagged s a -> Tagged s a Source #

toEnum :: Int -> Tagged s a Source #

fromEnum :: Tagged s a -> Int Source #

enumFrom :: Tagged s a -> [Tagged s a] Source #

enumFromThen :: Tagged s a -> Tagged s a -> [Tagged s a] Source #

enumFromTo :: Tagged s a -> Tagged s a -> [Tagged s a] Source #

enumFromThenTo :: Tagged s a -> Tagged s a -> Tagged s a -> [Tagged s a] Source #

Enum (f (g a)) => Enum (Compose f g a) | Since: base-4.19.0.0

Instance details

Defined in Data.Functor.Compose

Methods

succ :: Compose f g a -> Compose f g a Source #

pred :: Compose f g a -> Compose f g a Source #

toEnum :: Int -> Compose f g a Source #

fromEnum :: Compose f g a -> Int Source #

enumFrom :: Compose f g a -> [Compose f g a] Source #

enumFromThen :: Compose f g a -> Compose f g a -> [Compose f g a] Source #

enumFromTo :: Compose f g a -> Compose f g a -> [Compose f g a] Source #

enumFromThenTo :: Compose f g a -> Compose f g a -> Compose f g a -> [Compose f g a] Source #

class Eq a where Source #

The `Eq` class defines equality (`==`) and inequality (`/=`). All the basic datatypes exported by the Prelude are instances of `Eq`, and `Eq` may be derived for any datatype whose constituents are also instances of `Eq`.

The Haskell Report defines no laws for `Eq`. However, instances are encouraged to follow these properties:

Reflexivity
  `x == x` = `True`
Symmetry
  `x == y` = `y == x`
Transitivity
  if `x == y && y == z` = `True`, then `x == z` = `True`
Extensionality
  if `x == y` = `True` and `f` is a function whose return type is an instance of `Eq`, then `f x == f y` = `True`
Negation
  `x /= y` = `not (x == y)`

Minimal complete definition

(==) | (/=)

Methods

(==) :: a -> a -> Bool infix 4 Source #

(/=) :: a -> a -> Bool infix 4 Source #

#### Instances

Instances details

Eq AsyncCancelled |
Instance details Defined in Control.Concurrent.Async.Internal Methods (==) :: AsyncCancelled -> AsyncCancelled -> Bool Source # (/=) :: AsyncCancelled -> AsyncCancelled -> Bool Source #
Eq ByteArray | Since: base-4.17.0.0
Instance details Defined in Data.Array.Byte Methods (==) :: ByteArray -> ByteArray -> Bool Source # (/=) :: ByteArray -> ByteArray -> Bool Source #
Eq Timeout |
Instance details Defined in System.Timeout Methods (==) :: Timeout -> Timeout -> Bool Source # (/=) :: Timeout -> Timeout -> Bool Source #
Eq BiFun |
Instance details Defined in Data.Bifunctor.TH Methods (==) :: BiFun -> BiFun -> Bool Source # (/=) :: BiFun -> BiFun -> Bool Source #
Eq Options |
Instance details Defined in Data.Bifunctor.TH Methods (==) :: Options -> Options -> Bool Source # (/=) :: Options -> Options -> Bool Source #
Eq ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods (==) :: ByteString -> ByteString -> Bool Source # (/=) :: ByteString -> ByteString -> Bool Source #
Eq ByteString |
Instance details Defined in Data.ByteString.Lazy.Internal Methods (==) :: ByteString -> ByteString -> Bool Source # (/=) :: ByteString -> ByteString -> Bool Source #
Eq ShortByteString |
Instance details Defined in Data.ByteString.Short.Internal Methods (==) :: ShortByteString -> ShortByteString -> Bool Source # (/=) :: ShortByteString -> ShortByteString -> Bool Source #
Eq IntSet |
Instance details Defined in Data.IntSet.Internal Methods (==) :: IntSet -> IntSet -> Bool Source # (/=) :: IntSet -> IntSet -> Bool Source #
Eq BigNat |
Instance details Defined in GHC.Num.BigNat Methods (==) :: BigNat -> BigNat -> Bool Source # (/=) :: BigNat -> BigNat -> Bool Source #
Eq Void | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Base Methods (==) :: Void -> Void -> Bool Source # (/=) :: Void -> Void -> Bool Source #
Eq BlockReason | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods (==) :: BlockReason -> BlockReason -> Bool Source # (/=) :: BlockReason -> BlockReason -> Bool Source #
Eq ThreadId | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods (==) :: ThreadId -> ThreadId -> Bool Source # (/=) :: ThreadId -> ThreadId -> Bool Source #
Eq ThreadStatus | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods (==) :: ThreadStatus -> ThreadStatus -> Bool Source # (/=) :: ThreadStatus -> ThreadStatus -> Bool Source #
Eq SomeTypeRep |
Instance details Defined in GHC.Internal.Data.Typeable.Internal Methods (==) :: SomeTypeRep -> SomeTypeRep -> Bool Source # (/=) :: SomeTypeRep -> SomeTypeRep -> Bool Source #
Eq Version | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Version Methods (==) :: Version -> Version -> Bool Source # (/=) :: Version -> Version -> Bool Source #
Eq ArithException | Since: base-3.0
Instance details Defined in GHC.Internal.Exception.Type Methods (==) :: ArithException -> ArithException -> Bool Source # (/=) :: ArithException -> ArithException -> Bool Source #
Eq CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CBool -> CBool -> Bool Source # (/=) :: CBool -> CBool -> Bool Source #
Eq CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CChar -> CChar -> Bool Source # (/=) :: CChar -> CChar -> Bool Source #
Eq CClock |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CClock -> CClock -> Bool Source # (/=) :: CClock -> CClock -> Bool Source #
Eq CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CDouble -> CDouble -> Bool Source # (/=) :: CDouble -> CDouble -> Bool Source #
Eq CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CFloat -> CFloat -> Bool Source # (/=) :: CFloat -> CFloat -> Bool Source #
Eq CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CInt -> CInt -> Bool Source # (/=) :: CInt -> CInt -> Bool Source #
Eq CIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CIntMax -> CIntMax -> Bool Source # (/=) :: CIntMax -> CIntMax -> Bool Source #
Eq CIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CIntPtr -> CIntPtr -> Bool Source # (/=) :: CIntPtr -> CIntPtr -> Bool Source #
Eq CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CLLong -> CLLong -> Bool Source # (/=) :: CLLong -> CLLong -> Bool Source #
Eq CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CLong -> CLong -> Bool Source # (/=) :: CLong -> CLong -> Bool Source #
Eq CPtrdiff |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CPtrdiff -> CPtrdiff -> Bool Source # (/=) :: CPtrdiff -> CPtrdiff -> Bool Source #
Eq CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CSChar -> CSChar -> Bool Source # (/=) :: CSChar -> CSChar -> Bool Source #
Eq CSUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CSUSeconds -> CSUSeconds -> Bool Source # (/=) :: CSUSeconds -> CSUSeconds -> Bool Source #
Eq CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CShort -> CShort -> Bool Source # (/=) :: CShort -> CShort -> Bool Source #
Eq CSigAtomic |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CSigAtomic -> CSigAtomic -> Bool Source # (/=) :: CSigAtomic -> CSigAtomic -> Bool Source #
Eq CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CSize -> CSize -> Bool Source # (/=) :: CSize -> CSize -> Bool Source #
Eq CTime |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CTime -> CTime -> Bool Source # (/=) :: CTime -> CTime -> Bool Source #
Eq CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CUChar -> CUChar -> Bool Source # (/=) :: CUChar -> CUChar -> Bool Source #
Eq CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CUInt -> CUInt -> Bool Source # (/=) :: CUInt -> CUInt -> Bool Source #
Eq CUIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CUIntMax -> CUIntMax -> Bool Source # (/=) :: CUIntMax -> CUIntMax -> Bool Source #
Eq CUIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CUIntPtr -> CUIntPtr -> Bool Source # (/=) :: CUIntPtr -> CUIntPtr -> Bool Source #
Eq CULLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CULLong -> CULLong -> Bool Source # (/=) :: CULLong -> CULLong -> Bool Source #
Eq CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CULong -> CULong -> Bool Source # (/=) :: CULong -> CULong -> Bool Source #
Eq CUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CUSeconds -> CUSeconds -> Bool Source # (/=) :: CUSeconds -> CUSeconds -> Bool Source #
Eq CUShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CUShort -> CUShort -> Bool Source # (/=) :: CUShort -> CUShort -> Bool Source #
Eq CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods (==) :: CWchar -> CWchar -> Bool Source # (/=) :: CWchar -> CWchar -> Bool Source #
Eq Associativity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: Associativity -> Associativity -> Bool Source # (/=) :: Associativity -> Associativity -> Bool Source #
Eq DecidedStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: DecidedStrictness -> DecidedStrictness -> Bool Source # (/=) :: DecidedStrictness -> DecidedStrictness -> Bool Source #
Eq Fixity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: Fixity -> Fixity -> Bool Source # (/=) :: Fixity -> Fixity -> Bool Source #
Eq SourceStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: SourceStrictness -> SourceStrictness -> Bool Source # (/=) :: SourceStrictness -> SourceStrictness -> Bool Source #
Eq SourceUnpackedness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: SourceUnpackedness -> SourceUnpackedness -> Bool Source # (/=) :: SourceUnpackedness -> SourceUnpackedness -> Bool Source #
Eq MaskingState | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO Methods (==) :: MaskingState -> MaskingState -> Bool Source # (/=) :: MaskingState -> MaskingState -> Bool Source #
Eq IODeviceType | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Device Methods (==) :: IODeviceType -> IODeviceType -> Bool Source # (/=) :: IODeviceType -> IODeviceType -> Bool Source #
Eq SeekMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Device Methods (==) :: SeekMode -> SeekMode -> Bool Source # (/=) :: SeekMode -> SeekMode -> Bool Source #
Eq ArrayException | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods (==) :: ArrayException -> ArrayException -> Bool Source # (/=) :: ArrayException -> ArrayException -> Bool Source #
Eq AsyncException | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods (==) :: AsyncException -> AsyncException -> Bool Source # (/=) :: AsyncException -> AsyncException -> Bool Source #
Eq ExitCode |
Instance details Defined in GHC.Internal.IO.Exception Methods (==) :: ExitCode -> ExitCode -> Bool Source # (/=) :: ExitCode -> ExitCode -> Bool Source #
Eq IOErrorType | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods (==) :: IOErrorType -> IOErrorType -> Bool Source # (/=) :: IOErrorType -> IOErrorType -> Bool Source #
Eq IOException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods (==) :: IOException -> IOException -> Bool Source # (/=) :: IOException -> IOException -> Bool Source #
Eq BufferMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods (==) :: BufferMode -> BufferMode -> Bool Source # (/=) :: BufferMode -> BufferMode -> Bool Source #
Eq Handle | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods (==) :: Handle -> Handle -> Bool Source # (/=) :: Handle -> Handle -> Bool Source #
Eq Newline | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods (==) :: Newline -> Newline -> Bool Source # (/=) :: Newline -> Newline -> Bool Source #
Eq NewlineMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods (==) :: NewlineMode -> NewlineMode -> Bool Source # (/=) :: NewlineMode -> NewlineMode -> Bool Source #
Eq IOMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.IOMode Methods (==) :: IOMode -> IOMode -> Bool Source # (/=) :: IOMode -> IOMode -> Bool Source #
Eq Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (==) :: Int16 -> Int16 -> Bool Source # (/=) :: Int16 -> Int16 -> Bool Source #
Eq Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (==) :: Int32 -> Int32 -> Bool Source # (/=) :: Int32 -> Int32 -> Bool Source #
Eq Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (==) :: Int64 -> Int64 -> Bool Source # (/=) :: Int64 -> Int64 -> Bool Source #
Eq Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (==) :: Int8 -> Int8 -> Bool Source # (/=) :: Int8 -> Int8 -> Bool Source #
Eq SrcLoc | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Stack.Types Methods (==) :: SrcLoc -> SrcLoc -> Bool Source # (/=) :: SrcLoc -> SrcLoc -> Bool Source #
Eq GeneralCategory | Since: base-2.1
Instance details Defined in GHC.Internal.Unicode Methods (==) :: GeneralCategory -> GeneralCategory -> Bool Source # (/=) :: GeneralCategory -> GeneralCategory -> Bool Source #
Eq Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (==) :: Word16 -> Word16 -> Bool Source # (/=) :: Word16 -> Word16 -> Bool Source #
Eq Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (==) :: Word32 -> Word32 -> Bool Source # (/=) :: Word32 -> Word32 -> Bool Source #
Eq Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (==) :: Word64 -> Word64 -> Bool Source # (/=) :: Word64 -> Word64 -> Bool Source #
Eq Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods (==) :: Word8 -> Word8 -> Bool Source # (/=) :: Word8 -> Word8 -> Bool Source #
Eq Module |
Instance details Defined in GHC.Classes Methods (==) :: Module -> Module -> Bool Source # (/=) :: Module -> Module -> Bool Source #
Eq Ordering |
Instance details Defined in GHC.Classes Methods (==) :: Ordering -> Ordering -> Bool Source # (/=) :: Ordering -> Ordering -> Bool Source #
Eq TrName |
Instance details Defined in GHC.Classes Methods (==) :: TrName -> TrName -> Bool Source # (/=) :: TrName -> TrName -> Bool Source #
Eq TyCon |
Instance details Defined in GHC.Classes Methods (==) :: TyCon -> TyCon -> Bool Source # (/=) :: TyCon -> TyCon -> Bool Source #
Eq TSem |
Instance details Defined in Control.Concurrent.STM.TSem Methods (==) :: TSem -> TSem -> Bool Source # (/=) :: TSem -> TSem -> Bool Source #
Eq UnicodeException |
Instance details Defined in Data.Text.Encoding.Error Methods (==) :: UnicodeException -> UnicodeException -> Bool Source # (/=) :: UnicodeException -> UnicodeException -> Bool Source #
Eq I8 |
Instance details Defined in Data.Text.Foreign Methods (==) :: I8 -> I8 -> Bool Source # (/=) :: I8 -> I8 -> Bool Source #
Eq Text |
Instance details Defined in Data.Text Methods (==) :: Text -> Text -> Bool Source # (/=) :: Text -> Text -> Bool Source #
Eq Builder |
Instance details Defined in Data.Text.Internal.Builder Methods (==) :: Builder -> Builder -> Bool Source # (/=) :: Builder -> Builder -> Bool Source #
Eq PartialUtf8CodePoint |
Instance details Defined in Data.Text.Internal.Encoding Methods (==) :: PartialUtf8CodePoint -> PartialUtf8CodePoint -> Bool Source # (/=) :: PartialUtf8CodePoint -> PartialUtf8CodePoint -> Bool Source #
Eq Utf8State |
Instance details Defined in Data.Text.Internal.Encoding Methods (==) :: Utf8State -> Utf8State -> Bool Source # (/=) :: Utf8State -> Utf8State -> Bool Source #
Eq DecoderState |
Instance details Defined in Data.Text.Internal.Encoding.Utf8 Methods (==) :: DecoderState -> DecoderState -> Bool Source # (/=) :: DecoderState -> DecoderState -> Bool Source #
Eq Size |
Instance details Defined in Data.Text.Internal.Fusion.Size Methods (==) :: Size -> Size -> Bool Source # (/=) :: Size -> Size -> Bool Source #
Eq Text |
Instance details Defined in Data.Text.Lazy Methods (==) :: Text -> Text -> Bool Source # (/=) :: Text -> Text -> Bool Source #
Eq Day |
Instance details Defined in Data.Time.Calendar.Days Methods (==) :: Day -> Day -> Bool Source # (/=) :: Day -> Day -> Bool Source #
Eq Month |
Instance details Defined in Data.Time.Calendar.Month Methods (==) :: Month -> Month -> Bool Source # (/=) :: Month -> Month -> Bool Source #
Eq Quarter |
Instance details Defined in Data.Time.Calendar.Quarter Methods (==) :: Quarter -> Quarter -> Bool Source # (/=) :: Quarter -> Quarter -> Bool Source #
Eq QuarterOfYear |
Instance details Defined in Data.Time.Calendar.Quarter Methods (==) :: QuarterOfYear -> QuarterOfYear -> Bool Source # (/=) :: QuarterOfYear -> QuarterOfYear -> Bool Source #
Eq FirstWeekType |
Instance details Defined in Data.Time.Calendar.WeekDate Methods (==) :: FirstWeekType -> FirstWeekType -> Bool Source # (/=) :: FirstWeekType -> FirstWeekType -> Bool Source #
Eq DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods (==) :: DiffTime -> DiffTime -> Bool Source # (/=) :: DiffTime -> DiffTime -> Bool Source #
Eq UTCTime |
Instance details Defined in Data.Time.Clock.Internal.UTCTime Methods (==) :: UTCTime -> UTCTime -> Bool Source # (/=) :: UTCTime -> UTCTime -> Bool Source #
Eq TimeLocale |
Instance details Defined in Data.Time.Format.Locale Methods (==) :: TimeLocale -> TimeLocale -> Bool Source # (/=) :: TimeLocale -> TimeLocale -> Bool Source #
Eq LocalTime |
Instance details Defined in Data.Time.LocalTime.Internal.LocalTime Methods (==) :: LocalTime -> LocalTime -> Bool Source # (/=) :: LocalTime -> LocalTime -> Bool Source #
Eq StringException | Since: unliftio-0.2.19
Instance details Defined in UnliftIO.Exception Methods (==) :: StringException -> StringException -> Bool Source # (/=) :: StringException -> StringException -> Bool Source #
Eq ConcException |
Instance details Defined in UnliftIO.Internals.Async Methods (==) :: ConcException -> ConcException -> Bool Source # (/=) :: ConcException -> ConcException -> Bool Source #
Eq SubHashPath |
Instance details Defined in Data.HashMap.Internal.Debug Methods (==) :: SubHashPath -> SubHashPath -> Bool Source # (/=) :: SubHashPath -> SubHashPath -> Bool Source #
Eq Size |
Instance details Defined in Data.Vector.Fusion.Bundle.Size Methods (==) :: Size -> Size -> Bool Source # (/=) :: Size -> Size -> Bool Source #
Eq Checks |
Instance details Defined in Data.Vector.Internal.Check Methods (==) :: Checks -> Checks -> Bool Source # (/=) :: Checks -> Checks -> Bool Source #
Eq Integer |
Instance details Defined in GHC.Num.Integer Methods (==) :: Integer -> Integer -> Bool Source # (/=) :: Integer -> Integer -> Bool Source #
Eq Natural |
Instance details Defined in GHC.Num.Natural Methods (==) :: Natural -> Natural -> Bool Source # (/=) :: Natural -> Natural -> Bool Source #
Eq () |
Instance details Defined in GHC.Classes Methods (==) :: () -> () -> Bool Source # (/=) :: () -> () -> Bool Source #
Eq Bool |
Instance details Defined in GHC.Classes Methods (==) :: Bool -> Bool -> Bool Source # (/=) :: Bool -> Bool -> Bool Source #
Eq Char |
Instance details Defined in GHC.Classes Methods (==) :: Char -> Char -> Bool Source # (/=) :: Char -> Char -> Bool Source #

Eq Double

Note that due to the presence of `NaN`, `Double`'s `Eq` instance does not satisfy reflexivity.

    >>> 0/0 == (0/0 :: Double)
    False

Also note that `Double`'s `Eq` instance does not satisfy substitutivity:

    >>> 0 == (-0 :: Double)
    True
    >>> recip 0 == recip (-0 :: Double)
    False

Instance details Defined in GHC.Classes Methods (==) :: Double -> Double -> Bool Source # (/=) :: Double -> Double -> Bool Source #

Eq Float

Note that due to the presence of `NaN`, `Float`'s `Eq` instance does not satisfy reflexivity.

    >>> 0/0 == (0/0 :: Float)
    False

Also note that `Float`'s `Eq` instance does not satisfy extensionality:

    >>> 0 == (-0 :: Float)
    True
    >>> recip 0 == recip (-0 :: Float)
    False

Instance details Defined in GHC.Classes Methods (==) :: Float -> Float -> Bool Source # (/=) :: Float -> Float -> Bool Source #
Eq Int |
Instance details Defined in GHC.Classes Methods (==) :: Int -> Int -> Bool Source # (/=) :: Int -> Int -> Bool Source #
Eq Word |
Instance details Defined in GHC.Classes Methods (==) :: Word -> Word -> Bool Source # (/=) :: Word -> Word -> Bool Source #
Eq (Async a) |
Instance details Defined in Control.Concurrent.Async.Internal Methods (==) :: Async a -> Async a -> Bool Source # (/=) :: Async a -> Async a -> Bool Source #
Eq (Chan a) | Since: base-4.4.0.0
Instance details Defined in Control.Concurrent.Chan Methods (==) :: Chan a -> Chan a -> Bool Source # (/=) :: Chan a -> Chan a -> Bool Source #
Eq (MutableByteArray s) | Since: base-4.17.0.0
Instance details Defined in Data.Array.Byte Methods (==) :: MutableByteArray s -> MutableByteArray s -> Bool Source # (/=) :: MutableByteArray s -> MutableByteArray s -> Bool Source #
Eq a => Eq (Complex a) | Since: base-2.1
Instance details Defined in Data.Complex Methods (==) :: Complex a -> Complex a -> Bool Source # (/=) :: Complex a -> Complex a -> Bool Source #
Eq a => Eq (First a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (==) :: First a -> First a -> Bool Source # (/=) :: First a -> First a -> Bool Source #
Eq a => Eq (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (==) :: Last a -> Last a -> Bool Source # (/=) :: Last a -> Last a -> Bool Source #
Eq a => Eq (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (==) :: Max a -> Max a -> Bool Source # (/=) :: Max a -> Max a -> Bool Source #
Eq a => Eq (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (==) :: Min a -> Min a -> Bool Source # (/=) :: Min a -> Min a -> Bool Source #
Eq m => Eq (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (==) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source # (/=) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #
Eq vertex => Eq (SCC vertex) | Since: containers-0.5.9
Instance details Defined in Data.Graph Methods (==) :: SCC vertex -> SCC vertex -> Bool Source # (/=) :: SCC vertex -> SCC vertex -> Bool Source #
Eq a => Eq (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods (==) :: IntMap a -> IntMap a -> Bool Source # (/=) :: IntMap a -> IntMap a -> Bool Source #
Eq a => Eq (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods (==) :: Seq a -> Seq a -> Bool Source # (/=) :: Seq a -> Seq a -> Bool Source #
Eq a => Eq (ViewL a) |
Instance details Defined in Data.Sequence.Internal Methods (==) :: ViewL a -> ViewL a -> Bool Source # (/=) :: ViewL a -> ViewL a -> Bool Source #
Eq a => Eq (ViewR a) |
Instance details Defined in Data.Sequence.Internal Methods (==) :: ViewR a -> ViewR a -> Bool Source # (/=) :: ViewR a -> ViewR a -> Bool Source #
Eq a => Eq (Intersection a) |
Instance details Defined in Data.Set.Internal Methods (==) :: Intersection a -> Intersection a -> Bool Source # (/=) :: Intersection a -> Intersection a -> Bool Source #
Eq a => Eq (Set a) |
Instance details Defined in Data.Set.Internal Methods (==) :: Set a -> Set a -> Bool Source # (/=) :: Set a -> Set a -> Bool Source #
Eq a => Eq (Tree a) |
Instance details Defined in Data.Tree Methods (==) :: Tree a -> Tree a -> Bool Source # (/=) :: Tree a -> Tree a -> Bool Source #
Eq a => Eq (DList a) |
Instance details Defined in Data.DList.Internal Methods (==) :: DList a -> DList a -> Bool Source # (/=) :: DList a -> DList a -> Bool Source #
Eq a => Eq (NonEmpty a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (==) :: NonEmpty a -> NonEmpty a -> Bool Source # (/=) :: NonEmpty a -> NonEmpty a -> Bool Source #
Eq (TVar a) | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods (==) :: TVar a -> TVar a -> Bool Source # (/=) :: TVar a -> TVar a -> Bool Source #
Eq a => Eq (Identity a) | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods (==) :: Identity a -> Identity a -> Bool Source # (/=) :: Identity a -> Identity a -> Bool Source #
Eq a => Eq (Down a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (==) :: Down a -> Down a -> Bool Source # (/=) :: Down a -> Down a -> Bool Source #
Eq (ForeignPtr a) | Since: base-2.1
Instance details Defined in GHC.Internal.ForeignPtr Methods (==) :: ForeignPtr a -> ForeignPtr a -> Bool Source # (/=) :: ForeignPtr a -> ForeignPtr a -> Bool Source #
Eq p => Eq (Par1 p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: Par1 p -> Par1 p -> Bool Source # (/=) :: Par1 p -> Par1 p -> Bool Source #
Eq (IORef a) | Pointer equality. Since: base-4.0.0.0
Instance details Defined in GHC.Internal.IORef Methods (==) :: IORef a -> IORef a -> Bool Source # (/=) :: IORef a -> IORef a -> Bool Source #
Eq (MVar a) | Compares the underlying pointers. Since: base-4.1.0.0
Instance details Defined in GHC.Internal.MVar Methods (==) :: MVar a -> MVar a -> Bool Source # (/=) :: MVar a -> MVar a -> Bool Source #
Eq a => Eq (Ratio a) | Since: base-2.1
Instance details Defined in GHC.Internal.Real Methods (==) :: Ratio a -> Ratio a -> Bool Source # (/=) :: Ratio a -> Ratio a -> Bool Source #
Eq a => Eq (Hashed a) | Uses precomputed hash to detect inequality faster
Instance details Defined in Data.Hashable.Class Methods (==) :: Hashed a -> Hashed a -> Bool Source # (/=) :: Hashed a -> Hashed a -> Bool Source #
Eq mono => Eq (NonNull mono) |
Instance details Defined in Data.NonNull Methods (==) :: NonNull mono -> NonNull mono -> Bool Source # (/=) :: NonNull mono -> NonNull mono -> Bool Source #
Eq a => Eq (Array a) |
Instance details Defined in Data.Primitive.Array Methods (==) :: Array a -> Array a -> Bool Source # (/=) :: Array a -> Array a -> Bool Source #
(Eq a, Prim a) => Eq (PrimArray a) | Since: primitive-0.6.4.0
Instance details Defined in Data.Primitive.PrimArray Methods (==) :: PrimArray a -> PrimArray a -> Bool Source # (/=) :: PrimArray a -> PrimArray a -> Bool Source #
Eq a => Eq (SmallArray a) |
Instance details Defined in Data.Primitive.SmallArray Methods (==) :: SmallArray a -> SmallArray a -> Bool Source # (/=) :: SmallArray a -> SmallArray a -> Bool Source #
Eq (TBQueue a) |
Instance details Defined in Control.Concurrent.STM.TBQueue Methods (==) :: TBQueue a -> TBQueue a -> Bool Source # (/=) :: TBQueue a -> TBQueue a -> Bool Source #
Eq (TChan a) |
Instance details Defined in Control.Concurrent.STM.TChan Methods (==) :: TChan a -> TChan a -> Bool Source # (/=) :: TChan a -> TChan a -> Bool Source #
Eq (TMVar a) |
Instance details Defined in Control.Concurrent.STM.TMVar Methods (==) :: TMVar a -> TMVar a -> Bool Source # (/=) :: TMVar a -> TMVar a -> Bool Source #
Eq (TQueue a) |
Instance details Defined in Control.Concurrent.STM.TQueue Methods (==) :: TQueue a -> TQueue a -> Bool Source # (/=) :: TQueue a -> TQueue a -> Bool Source #
Eq a => Eq (Stream a) |
Instance details Defined in Data.Text.Internal.Fusion.Types Methods (==) :: Stream a -> Stream a -> Bool Source # (/=) :: Stream a -> Stream a -> Bool Source #
Eq k => Eq (Error k) |
Instance details Defined in Data.HashMap.Internal.Debug Methods (==) :: Error k -> Error k -> Bool Source # (/=) :: Error k -> Error k -> Bool Source #
Eq k => Eq (Validity k) |
Instance details Defined in Data.HashMap.Internal.Debug Methods (==) :: Validity k -> Validity k -> Bool Source # (/=) :: Validity k -> Validity k -> Bool Source #

Eq a => Eq (HashSet a)

Note that, in the presence of hash collisions, equal `HashSet`s may behave differently, i.e. extensionality may be violated:

    >>> data D = A | B deriving (Eq, Show)
    >>> instance Hashable D where hashWithSalt salt _d = salt

    >>> x = fromList [A, B]
    >>> y = fromList [B, A]

    >>> x == y
    True
    >>> toList x
    [A,B]
    >>> toList y
    [B,A]

In general, the lack of extensionality can be observed with any function that depends on the key ordering, such as folds and traversals.

Instance details Defined in Data.HashSet.Internal Methods (==) :: HashSet a -> HashSet a -> Bool Source # (/=) :: HashSet a -> HashSet a -> Bool Source #
Eq a => Eq (Vector a) |
Instance details Defined in Data.Vector Methods (==) :: Vector a -> Vector a -> Bool Source # (/=) :: Vector a -> Vector a -> Bool Source #
(Prim a, Eq a) => Eq (Vector a) |
Instance details Defined in Data.Vector.Primitive Methods (==) :: Vector a -> Vector a -> Bool Source # (/=) :: Vector a -> Vector a -> Bool Source #
(Storable a, Eq a) => Eq (Vector a) |
Instance details Defined in Data.Vector.Storable Methods (==) :: Vector a -> Vector a -> Bool Source # (/=) :: Vector a -> Vector a -> Bool Source #
Eq a => Eq (Vector a) |
Instance details Defined in Data.Vector.Strict Methods (==) :: Vector a -> Vector a -> Bool Source # (/=) :: Vector a -> Vector a -> Bool Source #
(Unbox a, Eq a) => Eq (Vector a) |
Instance details Defined in Data.Vector.Unboxed Methods (==) :: Vector a -> Vector a -> Bool Source # (/=) :: Vector a -> Vector a -> Bool Source #
Eq a => Eq (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Maybe Methods (==) :: Maybe a -> Maybe a -> Bool Source # (/=) :: Maybe a -> Maybe a -> Bool Source #
Eq a => Eq (Solo a) |
Instance details Defined in GHC.Classes Methods (==) :: Solo a -> Solo a -> Bool Source # (/=) :: Solo a -> Solo a -> Bool Source #
Eq a => Eq [a] |
Instance details Defined in GHC.Classes Methods (==) :: [a] -> [a] -> Bool Source # (/=) :: [a] -> [a] -> Bool Source #
Eq (Fixed a) | Since: base-2.1
Instance details Defined in Data.Fixed Methods (==) :: Fixed a -> Fixed a -> Bool Source # (/=) :: Fixed a -> Fixed a -> Bool Source #
Eq a => Eq (Arg a b) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (==) :: Arg a b -> Arg a b -> Bool Source # (/=) :: Arg a b -> Arg a b -> Bool Source #
(Eq k, Eq a) => Eq (Map k a) |
Instance details Defined in Data.Map.Internal Methods (==) :: Map k a -> Map k a -> Bool Source # (/=) :: Map k a -> Map k a -> Bool Source #
(Eq1 f, Eq a) => Eq (Cofree f a) |
Instance details Defined in Control.Comonad.Cofree Methods (==) :: Cofree f a -> Cofree f a -> Bool Source # (/=) :: Cofree f a -> Cofree f a -> Bool Source #
(Eq1 f, Eq a) => Eq (Free f a) |
Instance details Defined in Control.Monad.Free Methods (==) :: Free f a -> Free f a -> Bool Source # (/=) :: Free f a -> Free f a -> Bool Source #
(Eq a, Eq b) => Eq (Either a b) | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Either Methods (==) :: Either a b -> Either a b -> Bool Source # (/=) :: Either a b -> Either a b -> Bool Source #
Eq (TypeRep a) | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Typeable.Internal Methods (==) :: TypeRep a -> TypeRep a -> Bool Source # (/=) :: TypeRep a -> TypeRep a -> Bool Source #
Eq (U1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: U1 p -> U1 p -> Bool Source # (/=) :: U1 p -> U1 p -> Bool Source #
Eq (V1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: V1 p -> V1 p -> Bool Source # (/=) :: V1 p -> V1 p -> Bool Source #
Eq (STRef s a) | Pointer equality. Since: base-2.1
Instance details Defined in GHC.Internal.STRef Methods (==) :: STRef s a -> STRef s a -> Bool Source # (/=) :: STRef s a -> STRef s a -> Bool Source #
Eq (MutableArray s a) |
Instance details Defined in Data.Primitive.Array Methods (==) :: MutableArray s a -> MutableArray s a -> Bool Source # (/=) :: MutableArray s a -> MutableArray s a -> Bool Source #
Eq (MVar s a) |
Instance details Defined in Data.Primitive.MVar Methods (==) :: MVar s a -> MVar s a -> Bool Source # (/=) :: MVar s a -> MVar s a -> Bool Source #
Eq (MutVar s a) |
Instance details Defined in Data.Primitive.MutVar Methods (==) :: MutVar s a -> MutVar s a -> Bool Source # (/=) :: MutVar s a -> MutVar s a -> Bool Source #
Eq (MutablePrimArray s a) |
Instance details Defined in Data.Primitive.PrimArray Methods (==) :: MutablePrimArray s a -> MutablePrimArray s a -> Bool Source # (/=) :: MutablePrimArray s a -> MutablePrimArray s a -> Bool Source #
Eq (PrimVar s a) |
Instance details Defined in Data.Primitive.PrimVar Methods (==) :: PrimVar s a -> PrimVar s a -> Bool Source # (/=) :: PrimVar s a -> PrimVar s a -> Bool Source #
Eq (SmallMutableArray s a) |
Instance details Defined in Data.Primitive.SmallArray Methods (==) :: SmallMutableArray s a -> SmallMutableArray s a -> Bool Source # (/=) :: SmallMutableArray s a -> SmallMutableArray s a -> Bool Source #
(Eq i, Eq e) => Eq (TArray i e) |
Instance details Defined in Control.Concurrent.STM.TArray Methods (==) :: TArray i e -> TArray i e -> Bool Source # (/=) :: TArray i e -> TArray i e -> Bool Source #
(Eq1 f, Eq a) => Eq (Lift f a) |
Instance details Defined in Control.Applicative.Lift Methods (==) :: Lift f a -> Lift f a -> Bool Source # (/=) :: Lift f a -> Lift f a -> Bool Source #
(Eq1 m, Eq a) => Eq (MaybeT m a) |
Instance details Defined in Control.Monad.Trans.Maybe Methods (==) :: MaybeT m a -> MaybeT m a -> Bool Source # (/=) :: MaybeT m a -> MaybeT m a -> Bool Source #

(Eq k, Eq v) => Eq (HashMap k v)

Note that, in the presence of hash collisions, equal `HashMap`s may behave differently, i.e. extensionality may be violated:

    >>> data D = A | B deriving (Eq, Show)
    >>> instance Hashable D where hashWithSalt salt _d = salt

    >>> x = fromList [(A,1), (B,2)]
    >>> y = fromList [(B,2), (A,1)]

    >>> x == y
    True
    >>> toList x
    [(A,1),(B,2)]
    >>> toList y
    [(B,2),(A,1)]

In general, the lack of extensionality can be observed with any function that depends on the key ordering, such as folds and traversals.

Instance details Defined in Data.HashMap.Internal Methods (==) :: HashMap k v -> HashMap k v -> Bool Source # (/=) :: HashMap k v -> HashMap k v -> Bool Source #
(Eq k, Eq v) => Eq (Leaf k v) |
Instance details Defined in Data.HashMap.Internal Methods (==) :: Leaf k v -> Leaf k v -> Bool Source # (/=) :: Leaf k v -> Leaf k v -> Bool Source #
(Eq a, Eq b) => Eq (a, b) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b) -> (a, b) -> Bool Source # (/=) :: (a, b) -> (a, b) -> Bool Source #
Eq (bi a b) => Eq (Biap bi a b) |
Instance details Defined in Data.Bifunctor.Biap Methods (==) :: Biap bi a b -> Biap bi a b -> Bool Source # (/=) :: Biap bi a b -> Biap bi a b -> Bool Source #
Eq (p (Fix p a) a) => Eq (Fix p a) |
Instance details Defined in Data.Bifunctor.Fix Methods (==) :: Fix p a -> Fix p a -> Bool Source # (/=) :: Fix p a -> Fix p a -> Bool Source #
Eq (p a a) => Eq (Join p a) |
Instance details Defined in Data.Bifunctor.Join Methods (==) :: Join p a -> Join p a -> Bool Source # (/=) :: Join p a -> Join p a -> Bool Source #
(Eq a, Eq (f b)) => Eq (FreeF f a b) |
Instance details Defined in Control.Monad.Trans.Free Methods (==) :: FreeF f a b -> FreeF f a b -> Bool Source # (/=) :: FreeF f a b -> FreeF f a b -> Bool Source #
(Eq1 f, Eq1 m, Eq a) => Eq (FreeT f m a) |
Instance details Defined in Control.Monad.Trans.Free Methods (==) :: FreeT f m a -> FreeT f m a -> Bool Source # (/=) :: FreeT f m a -> FreeT f m a -> Bool Source #
(Generic1 f, Eq (Rep1 f a)) => Eq (Generically1 f a) | Since: base-4.18.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: Generically1 f a -> Generically1 f a -> Bool Source # (/=) :: Generically1 f a -> Generically1 f a -> Bool Source #
Eq (f p) => Eq (Rec1 f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: Rec1 f p -> Rec1 f p -> Bool Source # (/=) :: Rec1 f p -> Rec1 f p -> Bool Source #
Eq (URec (Ptr ()) p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source # (/=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source #
Eq (URec Char p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Char p -> URec Char p -> Bool Source # (/=) :: URec Char p -> URec Char p -> Bool Source #
Eq (URec Double p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Double p -> URec Double p -> Bool Source # (/=) :: URec Double p -> URec Double p -> Bool Source #
Eq (URec Float p) |
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Float p -> URec Float p -> Bool Source # (/=) :: URec Float p -> URec Float p -> Bool Source #
Eq (URec Int p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Int p -> URec Int p -> Bool Source # (/=) :: URec Int p -> URec Int p -> Bool Source #
Eq (URec Word p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: URec Word p -> URec Word p -> Bool Source # (/=) :: URec Word p -> URec Word p -> Bool Source #
Eq b => Eq (Tagged s b) |
Instance details Defined in Data.Tagged Methods (==) :: Tagged s b -> Tagged s b -> Bool Source # (/=) :: Tagged s b -> Tagged s b -> Bool Source #
(Eq1 f, Eq a) => Eq (Backwards f a) |
Instance details Defined in Control.Applicative.Backwards Methods (==) :: Backwards f a -> Backwards f a -> Bool Source # (/=) :: Backwards f a -> Backwards f a -> Bool Source #
(Eq e, Eq1 m, Eq a) => Eq (ExceptT e m a) |
Instance details Defined in Control.Monad.Trans.Except Methods (==) :: ExceptT e m a -> ExceptT e m a -> Bool Source # (/=) :: ExceptT e m a -> ExceptT e m a -> Bool Source #
(Eq1 f, Eq a) => Eq (IdentityT f a) |
Instance details Defined in Control.Monad.Trans.Identity Methods (==) :: IdentityT f a -> IdentityT f a -> Bool Source # (/=) :: IdentityT f a -> IdentityT f a -> Bool Source #
(Eq w, Eq1 m, Eq a) => Eq (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods (==) :: WriterT w m a -> WriterT w m a -> Bool Source # (/=) :: WriterT w m a -> WriterT w m a -> Bool Source #
(Eq w, Eq1 m, Eq a) => Eq (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods (==) :: WriterT w m a -> WriterT w m a -> Bool Source # (/=) :: WriterT w m a -> WriterT w m a -> Bool Source #
Eq a => Eq (Constant a b) |
Instance details Defined in Data.Functor.Constant Methods (==) :: Constant a b -> Constant a b -> Bool Source # (/=) :: Constant a b -> Constant a b -> Bool Source #
(Eq1 f, Eq a) => Eq (Reverse f a) |
Instance details Defined in Data.Functor.Reverse Methods (==) :: Reverse f a -> Reverse f a -> Bool Source # (/=) :: Reverse f a -> Reverse f a -> Bool Source #
Eq a => Eq (Bundle Id v a) |
Instance details Defined in Data.Vector.Fusion.Bundle Methods (==) :: Bundle Id v a -> Bundle Id v a -> Bool Source # (/=) :: Bundle Id v a -> Bundle Id v a -> Bool Source #
(Eq a, Eq b, Eq c) => Eq (a, b, c) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c) -> (a, b, c) -> Bool Source # (/=) :: (a, b, c) -> (a, b, c) -> Bool Source #
(Eq (f a), Eq (g a)) => Eq (Product f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Product Methods (==) :: Product f g a -> Product f g a -> Bool Source # (/=) :: Product f g a -> Product f g a -> Bool Source #
(Eq (f a), Eq (g a)) => Eq (Sum f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Sum Methods (==) :: Sum f g a -> Sum f g a -> Bool Source # (/=) :: Sum f g a -> Sum f g a -> Bool Source #
(Eq (f p), Eq (g p)) => Eq ((f :*: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: (f :*: g) p -> (f :*: g) p -> Bool Source # (/=) :: (f :*: g) p -> (f :*: g) p -> Bool Source #
(Eq (f p), Eq (g p)) => Eq ((f :+: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: (f :+: g) p -> (f :+: g) p -> Bool Source # (/=) :: (f :+: g) p -> (f :+: g) p -> Bool Source #
Eq c => Eq (K1 i c p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: K1 i c p -> K1 i c p -> Bool Source # (/=) :: K1 i c p -> K1 i c p -> Bool Source #
(Eq a, Eq b, Eq c, Eq d) => Eq (a, b, c, d) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d) -> (a, b, c, d) -> Bool Source # (/=) :: (a, b, c, d) -> (a, b, c, d) -> Bool Source #
Eq (f (g a)) => Eq (Compose f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Compose Methods (==) :: Compose f g a -> Compose f g a -> Bool Source # (/=) :: Compose f g a -> Compose f g a -> Bool Source #
Eq (f a) => Eq (Clown f a b) |
Instance details Defined in Data.Bifunctor.Clown Methods (==) :: Clown f a b -> Clown f a b -> Bool Source # (/=) :: Clown f a b -> Clown f a b -> Bool Source #
Eq (p b a) => Eq (Flip p a b) |
Instance details Defined in Data.Bifunctor.Flip Methods (==) :: Flip p a b -> Flip p a b -> Bool Source # (/=) :: Flip p a b -> Flip p a b -> Bool Source #
Eq (g b) => Eq (Joker g a b) |
Instance details Defined in Data.Bifunctor.Joker Methods (==) :: Joker g a b -> Joker g a b -> Bool Source # (/=) :: Joker g a b -> Joker g a b -> Bool Source #
Eq (p a b) => Eq (WrappedBifunctor p a b) |
Instance details Defined in Data.Bifunctor.Wrapped Methods (==) :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> Bool Source # (/=) :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> Bool Source #
Eq (f (g p)) => Eq ((f :.: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: (f :.: g) p -> (f :.: g) p -> Bool Source # (/=) :: (f :.: g) p -> (f :.: g) p -> Bool Source #
Eq (f p) => Eq (M1 i c f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods (==) :: M1 i c f p -> M1 i c f p -> Bool Source # (/=) :: M1 i c f p -> M1 i c f p -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e) => Eq (a, b, c, d, e) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e) -> (a, b, c, d, e) -> Bool Source # (/=) :: (a, b, c, d, e) -> (a, b, c, d, e) -> Bool Source #
(Eq (f a b), Eq (g a b)) => Eq (Product f g a b) |
Instance details Defined in Data.Bifunctor.Product Methods (==) :: Product f g a b -> Product f g a b -> Bool Source # (/=) :: Product f g a b -> Product f g a b -> Bool Source #
(Eq (p a b), Eq (q a b)) => Eq (Sum p q a b) |
Instance details Defined in Data.Bifunctor.Sum Methods (==) :: Sum p q a b -> Sum p q a b -> Bool Source # (/=) :: Sum p q a b -> Sum p q a b -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f) => Eq (a, b, c, d, e, f) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Bool Source # (/=) :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Bool Source #
Eq (f (p a b)) => Eq (Tannen f p a b) |
Instance details Defined in Data.Bifunctor.Tannen Methods (==) :: Tannen f p a b -> Tannen f p a b -> Bool Source # (/=) :: Tannen f p a b -> Tannen f p a b -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g) => Eq (a, b, c, d, e, f, g) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Bool Source # (/=) :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h) => Eq (a, b, c, d, e, f, g, h) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Bool Source # (/=) :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Bool Source #
Eq (p (f a) (g b)) => Eq (Biff p f g a b) |
Instance details Defined in Data.Bifunctor.Biff Methods (==) :: Biff p f g a b -> Biff p f g a b -> Bool Source # (/=) :: Biff p f g a b -> Biff p f g a b -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i) => Eq (a, b, c, d, e, f, g, h, i) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Bool Source # (/=) :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j) => Eq (a, b, c, d, e, f, g, h, i, j) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Bool Source # (/=) :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k) => Eq (a, b, c, d, e, f, g, h, i, j, k) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Bool Source # (/=) :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k, Eq l) => Eq (a, b, c, d, e, f, g, h, i, j, k, l) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool Source # (/=) :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k, Eq l, Eq m) => Eq (a, b, c, d, e, f, g, h, i, j, k, l, m) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool Source # (/=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k, Eq l, Eq m, Eq n) => Eq (a, b, c, d, e, f, g, h, i, j, k, l, m, n) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool Source # (/=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool Source #
(Eq a, Eq b, Eq c, Eq d, Eq e, Eq f, Eq g, Eq h, Eq i, Eq j, Eq k, Eq l, Eq m, Eq n, Eq o) => Eq (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) |
Instance details Defined in GHC.Classes Methods (==) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool Source # (/=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool Source #

class Eq a => Ord a where Source #

The `Ord` class is used for totally ordered datatypes.

Instances of `Ord` can be derived for any user-defined datatype whose constituent types are in `Ord`. The declared order of the constructors in the data declaration determines the ordering in derived `Ord` instances. The `Ordering` datatype allows a single comparison to determine the precise ordering of two objects.

`Ord`, as defined by the Haskell report, implements a total order and has the following properties:

Comparability
  `x <= y || y <= x` = `True`
Transitivity
  if `x <= y && y <= z` = `True`, then `x <= z` = `True`
Reflexivity
  `x <= x` = `True`
Antisymmetry
  if `x <= y && y <= x` = `True`, then `x == y` = `True`

The following operator interactions are expected to hold:

1. `x >= y` = `y <= x`
2. `x < y` = `x <= y && x /= y`
3. `x > y` = `y < x`
4. `x < y` = `compare x y == LT`
5. `x > y` = `compare x y == GT`
6. `x == y` = `compare x y == EQ`
7. `min x y == if x <= y then x else y` = `True`
8. `max x y == if x >= y then x else y` = `True`

Note that (7.) and (8.) do not require `min` and `max` to return either of their arguments. The result is merely required to equal one of the arguments in terms of `(==)`.

Minimal complete definition: either `compare` or `<=`. Using `compare` can be more efficient for complex types.

Minimal complete definition

compare | (<=)

Methods

compare :: a -> a -> Ordering Source #

(<) :: a -> a -> Bool infix 4 Source #

(<=) :: a -> a -> Bool infix 4 Source #

(>) :: a -> a -> Bool infix 4 Source #

(>=) :: a -> a -> Bool infix 4 Source #

max :: a -> a -> a Source #

min :: a -> a -> a Source #

#### Instances

Instances details

Ord ByteArray | Non-lexicographic ordering. This compares the lengths of the byte arrays first and uses a lexicographic ordering if the lengths are equal. Subject to change between major versions. Since: base-4.17.0.0
Instance details Defined in Data.Array.Byte Methods compare :: ByteArray -> ByteArray -> Ordering Source # (<) :: ByteArray -> ByteArray -> Bool Source # (<=) :: ByteArray -> ByteArray -> Bool Source # (>) :: ByteArray -> ByteArray -> Bool Source # (>=) :: ByteArray -> ByteArray -> Bool Source # max :: ByteArray -> ByteArray -> ByteArray Source # min :: ByteArray -> ByteArray -> ByteArray Source #
Ord Options |
Instance details Defined in Data.Bifunctor.TH Methods compare :: Options -> Options -> Ordering Source # (<) :: Options -> Options -> Bool Source # (<=) :: Options -> Options -> Bool Source # (>) :: Options -> Options -> Bool Source # (>=) :: Options -> Options -> Bool Source # max :: Options -> Options -> Options Source # min :: Options -> Options -> Options Source #
Ord ByteString |

Instance details

Defined in Data.ByteString.Internal.Type

Methods

compare :: ByteString -> ByteString -> Ordering Source #

(<) :: ByteString -> ByteString -> Bool Source #

(<=) :: ByteString -> ByteString -> Bool Source #

(>) :: ByteString -> ByteString -> Bool Source #

(>=) :: ByteString -> ByteString -> Bool Source #

max :: ByteString -> ByteString -> ByteString Source #

min :: ByteString -> ByteString -> ByteString Source #

Ord ByteString |

Instance details

Defined in Data.ByteString.Lazy.Internal

Methods

compare :: ByteString -> ByteString -> Ordering Source #

(<) :: ByteString -> ByteString -> Bool Source #

(<=) :: ByteString -> ByteString -> Bool Source #

(>) :: ByteString -> ByteString -> Bool Source #

(>=) :: ByteString -> ByteString -> Bool Source #

max :: ByteString -> ByteString -> ByteString Source #

min :: ByteString -> ByteString -> ByteString Source #

Ord ShortByteString | Lexicographic order.

Instance details

Defined in Data.ByteString.Short.Internal

Methods

compare :: ShortByteString -> ShortByteString -> Ordering Source #

(<) :: ShortByteString -> ShortByteString -> Bool Source #

(<=) :: ShortByteString -> ShortByteString -> Bool Source #

(>) :: ShortByteString -> ShortByteString -> Bool Source #

(>=) :: ShortByteString -> ShortByteString -> Bool Source #

max :: ShortByteString -> ShortByteString -> ShortByteString Source #

min :: ShortByteString -> ShortByteString -> ShortByteString Source #

Ord IntSet |
Instance details Defined in Data.IntSet.Internal Methods compare :: IntSet -> IntSet -> Ordering Source # (<) :: IntSet -> IntSet -> Bool Source # (<=) :: IntSet -> IntSet -> Bool Source # (>) :: IntSet -> IntSet -> Bool Source # (>=) :: IntSet -> IntSet -> Bool Source # max :: IntSet -> IntSet -> IntSet Source # min :: IntSet -> IntSet -> IntSet Source #
Ord BigNat |
Instance details Defined in GHC.Num.BigNat Methods compare :: BigNat -> BigNat -> Ordering Source # (<) :: BigNat -> BigNat -> Bool Source # (<=) :: BigNat -> BigNat -> Bool Source # (>) :: BigNat -> BigNat -> Bool Source # (>=) :: BigNat -> BigNat -> Bool Source # max :: BigNat -> BigNat -> BigNat Source # min :: BigNat -> BigNat -> BigNat Source #
Ord Void | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Base Methods compare :: Void -> Void -> Ordering Source # (<) :: Void -> Void -> Bool Source # (<=) :: Void -> Void -> Bool Source # (>) :: Void -> Void -> Bool Source # (>=) :: Void -> Void -> Bool Source # max :: Void -> Void -> Void Source # min :: Void -> Void -> Void Source #
Ord BlockReason | Since: base-4.3.0.0

Instance details

Defined in GHC.Internal.Conc.Sync

Methods

compare :: BlockReason -> BlockReason -> Ordering Source #

(<) :: BlockReason -> BlockReason -> Bool Source #

(<=) :: BlockReason -> BlockReason -> Bool Source #

(>) :: BlockReason -> BlockReason -> Bool Source #

(>=) :: BlockReason -> BlockReason -> Bool Source #

max :: BlockReason -> BlockReason -> BlockReason Source #

min :: BlockReason -> BlockReason -> BlockReason Source #

Ord ThreadId | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods compare :: ThreadId -> ThreadId -> Ordering Source # (<) :: ThreadId -> ThreadId -> Bool Source # (<=) :: ThreadId -> ThreadId -> Bool Source # (>) :: ThreadId -> ThreadId -> Bool Source # (>=) :: ThreadId -> ThreadId -> Bool Source # max :: ThreadId -> ThreadId -> ThreadId Source # min :: ThreadId -> ThreadId -> ThreadId Source #
Ord ThreadStatus | Since: base-4.3.0.0

Instance details

Defined in GHC.Internal.Conc.Sync

Methods

compare :: ThreadStatus -> ThreadStatus -> Ordering Source #

(<) :: ThreadStatus -> ThreadStatus -> Bool Source #

(<=) :: ThreadStatus -> ThreadStatus -> Bool Source #

(>) :: ThreadStatus -> ThreadStatus -> Bool Source #

(>=) :: ThreadStatus -> ThreadStatus -> Bool Source #

max :: ThreadStatus -> ThreadStatus -> ThreadStatus Source #

min :: ThreadStatus -> ThreadStatus -> ThreadStatus Source #

Ord SomeTypeRep |

Instance details

Defined in GHC.Internal.Data.Typeable.Internal

Methods

compare :: SomeTypeRep -> SomeTypeRep -> Ordering Source #

(<) :: SomeTypeRep -> SomeTypeRep -> Bool Source #

(<=) :: SomeTypeRep -> SomeTypeRep -> Bool Source #

(>) :: SomeTypeRep -> SomeTypeRep -> Bool Source #

(>=) :: SomeTypeRep -> SomeTypeRep -> Bool Source #

max :: SomeTypeRep -> SomeTypeRep -> SomeTypeRep Source #

min :: SomeTypeRep -> SomeTypeRep -> SomeTypeRep Source #

Ord Version | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Version Methods compare :: Version -> Version -> Ordering Source # (<) :: Version -> Version -> Bool Source # (<=) :: Version -> Version -> Bool Source # (>) :: Version -> Version -> Bool Source # (>=) :: Version -> Version -> Bool Source # max :: Version -> Version -> Version Source # min :: Version -> Version -> Version Source #
Ord ArithException | Since: base-3.0

Instance details

Defined in GHC.Internal.Exception.Type

Methods

compare :: ArithException -> ArithException -> Ordering Source #

(<) :: ArithException -> ArithException -> Bool Source #

(<=) :: ArithException -> ArithException -> Bool Source #

(>) :: ArithException -> ArithException -> Bool Source #

(>=) :: ArithException -> ArithException -> Bool Source #

max :: ArithException -> ArithException -> ArithException Source #

min :: ArithException -> ArithException -> ArithException Source #

Ord CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CBool -> CBool -> Ordering Source # (<) :: CBool -> CBool -> Bool Source # (<=) :: CBool -> CBool -> Bool Source # (>) :: CBool -> CBool -> Bool Source # (>=) :: CBool -> CBool -> Bool Source # max :: CBool -> CBool -> CBool Source # min :: CBool -> CBool -> CBool Source #
Ord CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CChar -> CChar -> Ordering Source # (<) :: CChar -> CChar -> Bool Source # (<=) :: CChar -> CChar -> Bool Source # (>) :: CChar -> CChar -> Bool Source # (>=) :: CChar -> CChar -> Bool Source # max :: CChar -> CChar -> CChar Source # min :: CChar -> CChar -> CChar Source #
Ord CClock |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CClock -> CClock -> Ordering Source # (<) :: CClock -> CClock -> Bool Source # (<=) :: CClock -> CClock -> Bool Source # (>) :: CClock -> CClock -> Bool Source # (>=) :: CClock -> CClock -> Bool Source # max :: CClock -> CClock -> CClock Source # min :: CClock -> CClock -> CClock Source #
Ord CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CDouble -> CDouble -> Ordering Source # (<) :: CDouble -> CDouble -> Bool Source # (<=) :: CDouble -> CDouble -> Bool Source # (>) :: CDouble -> CDouble -> Bool Source # (>=) :: CDouble -> CDouble -> Bool Source # max :: CDouble -> CDouble -> CDouble Source # min :: CDouble -> CDouble -> CDouble Source #
Ord CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CFloat -> CFloat -> Ordering Source # (<) :: CFloat -> CFloat -> Bool Source # (<=) :: CFloat -> CFloat -> Bool Source # (>) :: CFloat -> CFloat -> Bool Source # (>=) :: CFloat -> CFloat -> Bool Source # max :: CFloat -> CFloat -> CFloat Source # min :: CFloat -> CFloat -> CFloat Source #
Ord CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CInt -> CInt -> Ordering Source # (<) :: CInt -> CInt -> Bool Source # (<=) :: CInt -> CInt -> Bool Source # (>) :: CInt -> CInt -> Bool Source # (>=) :: CInt -> CInt -> Bool Source # max :: CInt -> CInt -> CInt Source # min :: CInt -> CInt -> CInt Source #
Ord CIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CIntMax -> CIntMax -> Ordering Source # (<) :: CIntMax -> CIntMax -> Bool Source # (<=) :: CIntMax -> CIntMax -> Bool Source # (>) :: CIntMax -> CIntMax -> Bool Source # (>=) :: CIntMax -> CIntMax -> Bool Source # max :: CIntMax -> CIntMax -> CIntMax Source # min :: CIntMax -> CIntMax -> CIntMax Source #
Ord CIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CIntPtr -> CIntPtr -> Ordering Source # (<) :: CIntPtr -> CIntPtr -> Bool Source # (<=) :: CIntPtr -> CIntPtr -> Bool Source # (>) :: CIntPtr -> CIntPtr -> Bool Source # (>=) :: CIntPtr -> CIntPtr -> Bool Source # max :: CIntPtr -> CIntPtr -> CIntPtr Source # min :: CIntPtr -> CIntPtr -> CIntPtr Source #
Ord CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CLLong -> CLLong -> Ordering Source # (<) :: CLLong -> CLLong -> Bool Source # (<=) :: CLLong -> CLLong -> Bool Source # (>) :: CLLong -> CLLong -> Bool Source # (>=) :: CLLong -> CLLong -> Bool Source # max :: CLLong -> CLLong -> CLLong Source # min :: CLLong -> CLLong -> CLLong Source #
Ord CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CLong -> CLong -> Ordering Source # (<) :: CLong -> CLong -> Bool Source # (<=) :: CLong -> CLong -> Bool Source # (>) :: CLong -> CLong -> Bool Source # (>=) :: CLong -> CLong -> Bool Source # max :: CLong -> CLong -> CLong Source # min :: CLong -> CLong -> CLong Source #
Ord CPtrdiff |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CPtrdiff -> CPtrdiff -> Ordering Source # (<) :: CPtrdiff -> CPtrdiff -> Bool Source # (<=) :: CPtrdiff -> CPtrdiff -> Bool Source # (>) :: CPtrdiff -> CPtrdiff -> Bool Source # (>=) :: CPtrdiff -> CPtrdiff -> Bool Source # max :: CPtrdiff -> CPtrdiff -> CPtrdiff Source # min :: CPtrdiff -> CPtrdiff -> CPtrdiff Source #
Ord CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CSChar -> CSChar -> Ordering Source # (<) :: CSChar -> CSChar -> Bool Source # (<=) :: CSChar -> CSChar -> Bool Source # (>) :: CSChar -> CSChar -> Bool Source # (>=) :: CSChar -> CSChar -> Bool Source # max :: CSChar -> CSChar -> CSChar Source # min :: CSChar -> CSChar -> CSChar Source #
Ord CSUSeconds |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

compare :: CSUSeconds -> CSUSeconds -> Ordering Source #

(<) :: CSUSeconds -> CSUSeconds -> Bool Source #

(<=) :: CSUSeconds -> CSUSeconds -> Bool Source #

(>) :: CSUSeconds -> CSUSeconds -> Bool Source #

(>=) :: CSUSeconds -> CSUSeconds -> Bool Source #

max :: CSUSeconds -> CSUSeconds -> CSUSeconds Source #

min :: CSUSeconds -> CSUSeconds -> CSUSeconds Source #

Ord CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CShort -> CShort -> Ordering Source # (<) :: CShort -> CShort -> Bool Source # (<=) :: CShort -> CShort -> Bool Source # (>) :: CShort -> CShort -> Bool Source # (>=) :: CShort -> CShort -> Bool Source # max :: CShort -> CShort -> CShort Source # min :: CShort -> CShort -> CShort Source #
Ord CSigAtomic |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

compare :: CSigAtomic -> CSigAtomic -> Ordering Source #

(<) :: CSigAtomic -> CSigAtomic -> Bool Source #

(<=) :: CSigAtomic -> CSigAtomic -> Bool Source #

(>) :: CSigAtomic -> CSigAtomic -> Bool Source #

(>=) :: CSigAtomic -> CSigAtomic -> Bool Source #

max :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

min :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

Ord CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CSize -> CSize -> Ordering Source # (<) :: CSize -> CSize -> Bool Source # (<=) :: CSize -> CSize -> Bool Source # (>) :: CSize -> CSize -> Bool Source # (>=) :: CSize -> CSize -> Bool Source # max :: CSize -> CSize -> CSize Source # min :: CSize -> CSize -> CSize Source #
Ord CTime |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CTime -> CTime -> Ordering Source # (<) :: CTime -> CTime -> Bool Source # (<=) :: CTime -> CTime -> Bool Source # (>) :: CTime -> CTime -> Bool Source # (>=) :: CTime -> CTime -> Bool Source # max :: CTime -> CTime -> CTime Source # min :: CTime -> CTime -> CTime Source #
Ord CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CUChar -> CUChar -> Ordering Source # (<) :: CUChar -> CUChar -> Bool Source # (<=) :: CUChar -> CUChar -> Bool Source # (>) :: CUChar -> CUChar -> Bool Source # (>=) :: CUChar -> CUChar -> Bool Source # max :: CUChar -> CUChar -> CUChar Source # min :: CUChar -> CUChar -> CUChar Source #
Ord CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CUInt -> CUInt -> Ordering Source # (<) :: CUInt -> CUInt -> Bool Source # (<=) :: CUInt -> CUInt -> Bool Source # (>) :: CUInt -> CUInt -> Bool Source # (>=) :: CUInt -> CUInt -> Bool Source # max :: CUInt -> CUInt -> CUInt Source # min :: CUInt -> CUInt -> CUInt Source #
Ord CUIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CUIntMax -> CUIntMax -> Ordering Source # (<) :: CUIntMax -> CUIntMax -> Bool Source # (<=) :: CUIntMax -> CUIntMax -> Bool Source # (>) :: CUIntMax -> CUIntMax -> Bool Source # (>=) :: CUIntMax -> CUIntMax -> Bool Source # max :: CUIntMax -> CUIntMax -> CUIntMax Source # min :: CUIntMax -> CUIntMax -> CUIntMax Source #
Ord CUIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CUIntPtr -> CUIntPtr -> Ordering Source # (<) :: CUIntPtr -> CUIntPtr -> Bool Source # (<=) :: CUIntPtr -> CUIntPtr -> Bool Source # (>) :: CUIntPtr -> CUIntPtr -> Bool Source # (>=) :: CUIntPtr -> CUIntPtr -> Bool Source # max :: CUIntPtr -> CUIntPtr -> CUIntPtr Source # min :: CUIntPtr -> CUIntPtr -> CUIntPtr Source #
Ord CULLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CULLong -> CULLong -> Ordering Source # (<) :: CULLong -> CULLong -> Bool Source # (<=) :: CULLong -> CULLong -> Bool Source # (>) :: CULLong -> CULLong -> Bool Source # (>=) :: CULLong -> CULLong -> Bool Source # max :: CULLong -> CULLong -> CULLong Source # min :: CULLong -> CULLong -> CULLong Source #
Ord CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CULong -> CULong -> Ordering Source # (<) :: CULong -> CULong -> Bool Source # (<=) :: CULong -> CULong -> Bool Source # (>) :: CULong -> CULong -> Bool Source # (>=) :: CULong -> CULong -> Bool Source # max :: CULong -> CULong -> CULong Source # min :: CULong -> CULong -> CULong Source #
Ord CUSeconds |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

compare :: CUSeconds -> CUSeconds -> Ordering Source #

(<) :: CUSeconds -> CUSeconds -> Bool Source #

(<=) :: CUSeconds -> CUSeconds -> Bool Source #

(>) :: CUSeconds -> CUSeconds -> Bool Source #

(>=) :: CUSeconds -> CUSeconds -> Bool Source #

max :: CUSeconds -> CUSeconds -> CUSeconds Source #

min :: CUSeconds -> CUSeconds -> CUSeconds Source #

Ord CUShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CUShort -> CUShort -> Ordering Source # (<) :: CUShort -> CUShort -> Bool Source # (<=) :: CUShort -> CUShort -> Bool Source # (>) :: CUShort -> CUShort -> Bool Source # (>=) :: CUShort -> CUShort -> Bool Source # max :: CUShort -> CUShort -> CUShort Source # min :: CUShort -> CUShort -> CUShort Source #
Ord CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods compare :: CWchar -> CWchar -> Ordering Source # (<) :: CWchar -> CWchar -> Bool Source # (<=) :: CWchar -> CWchar -> Bool Source # (>) :: CWchar -> CWchar -> Bool Source # (>=) :: CWchar -> CWchar -> Bool Source # max :: CWchar -> CWchar -> CWchar Source # min :: CWchar -> CWchar -> CWchar Source #
Ord Associativity | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: Associativity -> Associativity -> Ordering Source #

(<) :: Associativity -> Associativity -> Bool Source #

(<=) :: Associativity -> Associativity -> Bool Source #

(>) :: Associativity -> Associativity -> Bool Source #

(>=) :: Associativity -> Associativity -> Bool Source #

max :: Associativity -> Associativity -> Associativity Source #

min :: Associativity -> Associativity -> Associativity Source #

Ord DecidedStrictness | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: DecidedStrictness -> DecidedStrictness -> Ordering Source #

(<) :: DecidedStrictness -> DecidedStrictness -> Bool Source #

(<=) :: DecidedStrictness -> DecidedStrictness -> Bool Source #

(>) :: DecidedStrictness -> DecidedStrictness -> Bool Source #

(>=) :: DecidedStrictness -> DecidedStrictness -> Bool Source #

max :: DecidedStrictness -> DecidedStrictness -> DecidedStrictness Source #

min :: DecidedStrictness -> DecidedStrictness -> DecidedStrictness Source #

Ord Fixity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods compare :: Fixity -> Fixity -> Ordering Source # (<) :: Fixity -> Fixity -> Bool Source # (<=) :: Fixity -> Fixity -> Bool Source # (>) :: Fixity -> Fixity -> Bool Source # (>=) :: Fixity -> Fixity -> Bool Source # max :: Fixity -> Fixity -> Fixity Source # min :: Fixity -> Fixity -> Fixity Source #
Ord SourceStrictness | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: SourceStrictness -> SourceStrictness -> Ordering Source #

(<) :: SourceStrictness -> SourceStrictness -> Bool Source #

(<=) :: SourceStrictness -> SourceStrictness -> Bool Source #

(>) :: SourceStrictness -> SourceStrictness -> Bool Source #

(>=) :: SourceStrictness -> SourceStrictness -> Bool Source #

max :: SourceStrictness -> SourceStrictness -> SourceStrictness Source #

min :: SourceStrictness -> SourceStrictness -> SourceStrictness Source #

Ord SourceUnpackedness | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: SourceUnpackedness -> SourceUnpackedness -> Ordering Source #

(<) :: SourceUnpackedness -> SourceUnpackedness -> Bool Source #

(<=) :: SourceUnpackedness -> SourceUnpackedness -> Bool Source #

(>) :: SourceUnpackedness -> SourceUnpackedness -> Bool Source #

(>=) :: SourceUnpackedness -> SourceUnpackedness -> Bool Source #

max :: SourceUnpackedness -> SourceUnpackedness -> SourceUnpackedness Source #

min :: SourceUnpackedness -> SourceUnpackedness -> SourceUnpackedness Source #

Ord SeekMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Device Methods compare :: SeekMode -> SeekMode -> Ordering Source # (<) :: SeekMode -> SeekMode -> Bool Source # (<=) :: SeekMode -> SeekMode -> Bool Source # (>) :: SeekMode -> SeekMode -> Bool Source # (>=) :: SeekMode -> SeekMode -> Bool Source # max :: SeekMode -> SeekMode -> SeekMode Source # min :: SeekMode -> SeekMode -> SeekMode Source #
Ord ArrayException | Since: base-4.2.0.0

Instance details

Defined in GHC.Internal.IO.Exception

Methods

compare :: ArrayException -> ArrayException -> Ordering Source #

(<) :: ArrayException -> ArrayException -> Bool Source #

(<=) :: ArrayException -> ArrayException -> Bool Source #

(>) :: ArrayException -> ArrayException -> Bool Source #

(>=) :: ArrayException -> ArrayException -> Bool Source #

max :: ArrayException -> ArrayException -> ArrayException Source #

min :: ArrayException -> ArrayException -> ArrayException Source #

Ord AsyncException | Since: base-4.2.0.0

Instance details

Defined in GHC.Internal.IO.Exception

Methods

compare :: AsyncException -> AsyncException -> Ordering Source #

(<) :: AsyncException -> AsyncException -> Bool Source #

(<=) :: AsyncException -> AsyncException -> Bool Source #

(>) :: AsyncException -> AsyncException -> Bool Source #

(>=) :: AsyncException -> AsyncException -> Bool Source #

max :: AsyncException -> AsyncException -> AsyncException Source #

min :: AsyncException -> AsyncException -> AsyncException Source #

Ord ExitCode |
Instance details Defined in GHC.Internal.IO.Exception Methods compare :: ExitCode -> ExitCode -> Ordering Source # (<) :: ExitCode -> ExitCode -> Bool Source # (<=) :: ExitCode -> ExitCode -> Bool Source # (>) :: ExitCode -> ExitCode -> Bool Source # (>=) :: ExitCode -> ExitCode -> Bool Source # max :: ExitCode -> ExitCode -> ExitCode Source # min :: ExitCode -> ExitCode -> ExitCode Source #
Ord BufferMode | Since: base-4.2.0.0

Instance details

Defined in GHC.Internal.IO.Handle.Types

Methods

compare :: BufferMode -> BufferMode -> Ordering Source #

(<) :: BufferMode -> BufferMode -> Bool Source #

(<=) :: BufferMode -> BufferMode -> Bool Source #

(>) :: BufferMode -> BufferMode -> Bool Source #

(>=) :: BufferMode -> BufferMode -> Bool Source #

max :: BufferMode -> BufferMode -> BufferMode Source #

min :: BufferMode -> BufferMode -> BufferMode Source #

Ord Newline | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods compare :: Newline -> Newline -> Ordering Source # (<) :: Newline -> Newline -> Bool Source # (<=) :: Newline -> Newline -> Bool Source # (>) :: Newline -> Newline -> Bool Source # (>=) :: Newline -> Newline -> Bool Source # max :: Newline -> Newline -> Newline Source # min :: Newline -> Newline -> Newline Source #
Ord NewlineMode | Since: base-4.3.0.0

Instance details

Defined in GHC.Internal.IO.Handle.Types

Methods

compare :: NewlineMode -> NewlineMode -> Ordering Source #

(<) :: NewlineMode -> NewlineMode -> Bool Source #

(<=) :: NewlineMode -> NewlineMode -> Bool Source #

(>) :: NewlineMode -> NewlineMode -> Bool Source #

(>=) :: NewlineMode -> NewlineMode -> Bool Source #

max :: NewlineMode -> NewlineMode -> NewlineMode Source #

min :: NewlineMode -> NewlineMode -> NewlineMode Source #

Ord IOMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.IOMode Methods compare :: IOMode -> IOMode -> Ordering Source # (<) :: IOMode -> IOMode -> Bool Source # (<=) :: IOMode -> IOMode -> Bool Source # (>) :: IOMode -> IOMode -> Bool Source # (>=) :: IOMode -> IOMode -> Bool Source # max :: IOMode -> IOMode -> IOMode Source # min :: IOMode -> IOMode -> IOMode Source #
Ord Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods compare :: Int16 -> Int16 -> Ordering Source # (<) :: Int16 -> Int16 -> Bool Source # (<=) :: Int16 -> Int16 -> Bool Source # (>) :: Int16 -> Int16 -> Bool Source # (>=) :: Int16 -> Int16 -> Bool Source # max :: Int16 -> Int16 -> Int16 Source # min :: Int16 -> Int16 -> Int16 Source #
Ord Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods compare :: Int32 -> Int32 -> Ordering Source # (<) :: Int32 -> Int32 -> Bool Source # (<=) :: Int32 -> Int32 -> Bool Source # (>) :: Int32 -> Int32 -> Bool Source # (>=) :: Int32 -> Int32 -> Bool Source # max :: Int32 -> Int32 -> Int32 Source # min :: Int32 -> Int32 -> Int32 Source #
Ord Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods compare :: Int64 -> Int64 -> Ordering Source # (<) :: Int64 -> Int64 -> Bool Source # (<=) :: Int64 -> Int64 -> Bool Source # (>) :: Int64 -> Int64 -> Bool Source # (>=) :: Int64 -> Int64 -> Bool Source # max :: Int64 -> Int64 -> Int64 Source # min :: Int64 -> Int64 -> Int64 Source #
Ord Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods compare :: Int8 -> Int8 -> Ordering Source # (<) :: Int8 -> Int8 -> Bool Source # (<=) :: Int8 -> Int8 -> Bool Source # (>) :: Int8 -> Int8 -> Bool Source # (>=) :: Int8 -> Int8 -> Bool Source # max :: Int8 -> Int8 -> Int8 Source # min :: Int8 -> Int8 -> Int8 Source #
Ord GeneralCategory | Since: base-2.1

Instance details

Defined in GHC.Internal.Unicode

Methods

compare :: GeneralCategory -> GeneralCategory -> Ordering Source #

(<) :: GeneralCategory -> GeneralCategory -> Bool Source #

(<=) :: GeneralCategory -> GeneralCategory -> Bool Source #

(>) :: GeneralCategory -> GeneralCategory -> Bool Source #

(>=) :: GeneralCategory -> GeneralCategory -> Bool Source #

max :: GeneralCategory -> GeneralCategory -> GeneralCategory Source #

min :: GeneralCategory -> GeneralCategory -> GeneralCategory Source #

Ord Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods compare :: Word16 -> Word16 -> Ordering Source # (<) :: Word16 -> Word16 -> Bool Source # (<=) :: Word16 -> Word16 -> Bool Source # (>) :: Word16 -> Word16 -> Bool Source # (>=) :: Word16 -> Word16 -> Bool Source # max :: Word16 -> Word16 -> Word16 Source # min :: Word16 -> Word16 -> Word16 Source #
Ord Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods compare :: Word32 -> Word32 -> Ordering Source # (<) :: Word32 -> Word32 -> Bool Source # (<=) :: Word32 -> Word32 -> Bool Source # (>) :: Word32 -> Word32 -> Bool Source # (>=) :: Word32 -> Word32 -> Bool Source # max :: Word32 -> Word32 -> Word32 Source # min :: Word32 -> Word32 -> Word32 Source #
Ord Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods compare :: Word64 -> Word64 -> Ordering Source # (<) :: Word64 -> Word64 -> Bool Source # (<=) :: Word64 -> Word64 -> Bool Source # (>) :: Word64 -> Word64 -> Bool Source # (>=) :: Word64 -> Word64 -> Bool Source # max :: Word64 -> Word64 -> Word64 Source # min :: Word64 -> Word64 -> Word64 Source #
Ord Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods compare :: Word8 -> Word8 -> Ordering Source # (<) :: Word8 -> Word8 -> Bool Source # (<=) :: Word8 -> Word8 -> Bool Source # (>) :: Word8 -> Word8 -> Bool Source # (>=) :: Word8 -> Word8 -> Bool Source # max :: Word8 -> Word8 -> Word8 Source # min :: Word8 -> Word8 -> Word8 Source #
Ord Ordering |
Instance details Defined in GHC.Classes Methods compare :: Ordering -> Ordering -> Ordering Source # (<) :: Ordering -> Ordering -> Bool Source # (<=) :: Ordering -> Ordering -> Bool Source # (>) :: Ordering -> Ordering -> Bool Source # (>=) :: Ordering -> Ordering -> Bool Source # max :: Ordering -> Ordering -> Ordering Source # min :: Ordering -> Ordering -> Ordering Source #
Ord TyCon |
Instance details Defined in GHC.Classes Methods compare :: TyCon -> TyCon -> Ordering Source # (<) :: TyCon -> TyCon -> Bool Source # (<=) :: TyCon -> TyCon -> Bool Source # (>) :: TyCon -> TyCon -> Bool Source # (>=) :: TyCon -> TyCon -> Bool Source # max :: TyCon -> TyCon -> TyCon Source # min :: TyCon -> TyCon -> TyCon Source #
Ord I8 |
Instance details Defined in Data.Text.Foreign Methods compare :: I8 -> I8 -> Ordering Source # (<) :: I8 -> I8 -> Bool Source # (<=) :: I8 -> I8 -> Bool Source # (>) :: I8 -> I8 -> Bool Source # (>=) :: I8 -> I8 -> Bool Source # max :: I8 -> I8 -> I8 Source # min :: I8 -> I8 -> I8 Source #
Ord Text |
Instance details Defined in Data.Text Methods compare :: Text -> Text -> Ordering Source # (<) :: Text -> Text -> Bool Source # (<=) :: Text -> Text -> Bool Source # (>) :: Text -> Text -> Bool Source # (>=) :: Text -> Text -> Bool Source # max :: Text -> Text -> Text Source # min :: Text -> Text -> Text Source #
Ord Builder |
Instance details Defined in Data.Text.Internal.Builder Methods compare :: Builder -> Builder -> Ordering Source # (<) :: Builder -> Builder -> Bool Source # (<=) :: Builder -> Builder -> Bool Source # (>) :: Builder -> Builder -> Bool Source # (>=) :: Builder -> Builder -> Bool Source # max :: Builder -> Builder -> Builder Source # min :: Builder -> Builder -> Builder Source #
Ord Text |
Instance details Defined in Data.Text.Lazy Methods compare :: Text -> Text -> Ordering Source # (<) :: Text -> Text -> Bool Source # (<=) :: Text -> Text -> Bool Source # (>) :: Text -> Text -> Bool Source # (>=) :: Text -> Text -> Bool Source # max :: Text -> Text -> Text Source # min :: Text -> Text -> Text Source #
Ord Day |
Instance details Defined in Data.Time.Calendar.Days Methods compare :: Day -> Day -> Ordering Source # (<) :: Day -> Day -> Bool Source # (<=) :: Day -> Day -> Bool Source # (>) :: Day -> Day -> Bool Source # (>=) :: Day -> Day -> Bool Source # max :: Day -> Day -> Day Source # min :: Day -> Day -> Day Source #
Ord Month |
Instance details Defined in Data.Time.Calendar.Month Methods compare :: Month -> Month -> Ordering Source # (<) :: Month -> Month -> Bool Source # (<=) :: Month -> Month -> Bool Source # (>) :: Month -> Month -> Bool Source # (>=) :: Month -> Month -> Bool Source # max :: Month -> Month -> Month Source # min :: Month -> Month -> Month Source #
Ord Quarter |
Instance details Defined in Data.Time.Calendar.Quarter Methods compare :: Quarter -> Quarter -> Ordering Source # (<) :: Quarter -> Quarter -> Bool Source # (<=) :: Quarter -> Quarter -> Bool Source # (>) :: Quarter -> Quarter -> Bool Source # (>=) :: Quarter -> Quarter -> Bool Source # max :: Quarter -> Quarter -> Quarter Source # min :: Quarter -> Quarter -> Quarter Source #
Ord QuarterOfYear |

Instance details

Defined in Data.Time.Calendar.Quarter

Methods

compare :: QuarterOfYear -> QuarterOfYear -> Ordering Source #

(<) :: QuarterOfYear -> QuarterOfYear -> Bool Source #

(<=) :: QuarterOfYear -> QuarterOfYear -> Bool Source #

(>) :: QuarterOfYear -> QuarterOfYear -> Bool Source #

(>=) :: QuarterOfYear -> QuarterOfYear -> Bool Source #

max :: QuarterOfYear -> QuarterOfYear -> QuarterOfYear Source #

min :: QuarterOfYear -> QuarterOfYear -> QuarterOfYear Source #

Ord DiffTime |

Instance details

Defined in Data.Time.Clock.Internal.DiffTime

Methods

compare :: DiffTime -> DiffTime -> Ordering Source #

(<) :: DiffTime -> DiffTime -> Bool Source #

(<=) :: DiffTime -> DiffTime -> Bool Source #

(>) :: DiffTime -> DiffTime -> Bool Source #

(>=) :: DiffTime -> DiffTime -> Bool Source #

max :: DiffTime -> DiffTime -> DiffTime Source #

min :: DiffTime -> DiffTime -> DiffTime Source #

Ord UTCTime |
Instance details Defined in Data.Time.Clock.Internal.UTCTime Methods compare :: UTCTime -> UTCTime -> Ordering Source # (<) :: UTCTime -> UTCTime -> Bool Source # (<=) :: UTCTime -> UTCTime -> Bool Source # (>) :: UTCTime -> UTCTime -> Bool Source # (>=) :: UTCTime -> UTCTime -> Bool Source # max :: UTCTime -> UTCTime -> UTCTime Source # min :: UTCTime -> UTCTime -> UTCTime Source #
Ord TimeLocale |

Instance details

Defined in Data.Time.Format.Locale

Methods

compare :: TimeLocale -> TimeLocale -> Ordering Source #

(<) :: TimeLocale -> TimeLocale -> Bool Source #

(<=) :: TimeLocale -> TimeLocale -> Bool Source #

(>) :: TimeLocale -> TimeLocale -> Bool Source #

(>=) :: TimeLocale -> TimeLocale -> Bool Source #

max :: TimeLocale -> TimeLocale -> TimeLocale Source #

min :: TimeLocale -> TimeLocale -> TimeLocale Source #

Ord LocalTime |

Instance details

Defined in Data.Time.LocalTime.Internal.LocalTime

Methods

compare :: LocalTime -> LocalTime -> Ordering Source #

(<) :: LocalTime -> LocalTime -> Bool Source #

(<=) :: LocalTime -> LocalTime -> Bool Source #

(>) :: LocalTime -> LocalTime -> Bool Source #

(>=) :: LocalTime -> LocalTime -> Bool Source #

max :: LocalTime -> LocalTime -> LocalTime Source #

min :: LocalTime -> LocalTime -> LocalTime Source #

Ord ConcException |

Instance details

Defined in UnliftIO.Internals.Async

Methods

compare :: ConcException -> ConcException -> Ordering Source #

(<) :: ConcException -> ConcException -> Bool Source #

(<=) :: ConcException -> ConcException -> Bool Source #

(>) :: ConcException -> ConcException -> Bool Source #

(>=) :: ConcException -> ConcException -> Bool Source #

max :: ConcException -> ConcException -> ConcException Source #

min :: ConcException -> ConcException -> ConcException Source #

Ord Integer |
Instance details Defined in GHC.Num.Integer Methods compare :: Integer -> Integer -> Ordering Source # (<) :: Integer -> Integer -> Bool Source # (<=) :: Integer -> Integer -> Bool Source # (>) :: Integer -> Integer -> Bool Source # (>=) :: Integer -> Integer -> Bool Source # max :: Integer -> Integer -> Integer Source # min :: Integer -> Integer -> Integer Source #
Ord Natural |
Instance details Defined in GHC.Num.Natural Methods compare :: Natural -> Natural -> Ordering Source # (<) :: Natural -> Natural -> Bool Source # (<=) :: Natural -> Natural -> Bool Source # (>) :: Natural -> Natural -> Bool Source # (>=) :: Natural -> Natural -> Bool Source # max :: Natural -> Natural -> Natural Source # min :: Natural -> Natural -> Natural Source #
Ord () |
Instance details Defined in GHC.Classes Methods compare :: () -> () -> Ordering Source # (<) :: () -> () -> Bool Source # (<=) :: () -> () -> Bool Source # (>) :: () -> () -> Bool Source # (>=) :: () -> () -> Bool Source # max :: () -> () -> () Source # min :: () -> () -> () Source #
Ord Bool |
Instance details Defined in GHC.Classes Methods compare :: Bool -> Bool -> Ordering Source # (<) :: Bool -> Bool -> Bool Source # (<=) :: Bool -> Bool -> Bool Source # (>) :: Bool -> Bool -> Bool Source # (>=) :: Bool -> Bool -> Bool Source # max :: Bool -> Bool -> Bool Source # min :: Bool -> Bool -> Bool Source #
Ord Char |
Instance details Defined in GHC.Classes Methods compare :: Char -> Char -> Ordering Source # (<) :: Char -> Char -> Bool Source # (<=) :: Char -> Char -> Bool Source # (>) :: Char -> Char -> Bool Source # (>=) :: Char -> Char -> Bool Source # max :: Char -> Char -> Char Source # min :: Char -> Char -> Char Source #

Ord Double

IEEE 754 `Double`-precision type includes not only numbers, but also positive and negative infinities and a special element called `NaN` (which can be quiet or signal).

IEEE 754-2008, section 5.11 requires that if at least one of arguments of `<=`, `<`, `>`, `>=` is `NaN` then the result of the comparison is `False`, and `instance` `Ord` `Double` complies with this requirement. This violates the reflexivity: both `NaN` `<=` `NaN` and `NaN` `>=` `NaN` are `False`.

IEEE 754-2008, section 5.10 defines `totalOrder` predicate. Unfortunately, `compare` on `Double`s violates the IEEE standard and does not define a total order. More specifically, both `compare` `NaN` `x` and `compare` `x` `NaN` always return `GT`.

Thus, users must be extremely cautious when using `instance` `Ord` `Double`. For instance, one should avoid ordered containers with keys represented by `Double`, because data loss and corruption may happen. An IEEE-compliant `compare` is available in `fp-ieee` package as `TotallyOrdered` newtype.

Moving further, the behaviour of `min` and `max` with regards to `NaN` is also non-compliant. IEEE 754-2008, section 5.3.1 defines that quiet `NaN` should be treated as a missing data by `minNum` and `maxNum` functions, for example, `minNum(NaN, 1) = minNum(1, NaN) = 1`. Some languages such as Java deviate from the standard implementing `minNum(NaN, 1) = minNum(1, NaN) = NaN`. However, `min` / `max` in `base` are even worse: `min` `NaN` 1 is 1, but `min` 1 `NaN` is `NaN`.

IEEE 754-2008 compliant `min` / `max` can be found in `ieee754` package under `minNum` / `maxNum` names. Implementations compliant with `minimumNumber` / `maximumNumber` from a newer IEEE 754-2019, section 9.6 are available from `fp-ieee` package.

Instance details Defined in GHC.Classes Methods compare :: Double -> Double -> Ordering Source # (<) :: Double -> Double -> Bool Source # (<=) :: Double -> Double -> Bool Source # (>) :: Double -> Double -> Bool Source # (>=) :: Double -> Double -> Bool Source # max :: Double -> Double -> Double Source # min :: Double -> Double -> Double Source #
Ord Float | See `instance` `Ord` `Double` for discussion of deviations from IEEE 754 standard.
Instance details Defined in GHC.Classes Methods compare :: Float -> Float -> Ordering Source # (<) :: Float -> Float -> Bool Source # (<=) :: Float -> Float -> Bool Source # (>) :: Float -> Float -> Bool Source # (>=) :: Float -> Float -> Bool Source # max :: Float -> Float -> Float Source # min :: Float -> Float -> Float Source #
Ord Int |
Instance details Defined in GHC.Classes Methods compare :: Int -> Int -> Ordering Source # (<) :: Int -> Int -> Bool Source # (<=) :: Int -> Int -> Bool Source # (>) :: Int -> Int -> Bool Source # (>=) :: Int -> Int -> Bool Source # max :: Int -> Int -> Int Source # min :: Int -> Int -> Int Source #
Ord Word |
Instance details Defined in GHC.Classes Methods compare :: Word -> Word -> Ordering Source # (<) :: Word -> Word -> Bool Source # (<=) :: Word -> Word -> Bool Source # (>) :: Word -> Word -> Bool Source # (>=) :: Word -> Word -> Bool Source # max :: Word -> Word -> Word Source # min :: Word -> Word -> Word Source #
Ord (Async a) |
Instance details Defined in Control.Concurrent.Async.Internal Methods compare :: Async a -> Async a -> Ordering Source # (<) :: Async a -> Async a -> Bool Source # (<=) :: Async a -> Async a -> Bool Source # (>) :: Async a -> Async a -> Bool Source # (>=) :: Async a -> Async a -> Bool Source # max :: Async a -> Async a -> Async a Source # min :: Async a -> Async a -> Async a Source #
Ord a => Ord (First a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods compare :: First a -> First a -> Ordering Source # (<) :: First a -> First a -> Bool Source # (<=) :: First a -> First a -> Bool Source # (>) :: First a -> First a -> Bool Source # (>=) :: First a -> First a -> Bool Source # max :: First a -> First a -> First a Source # min :: First a -> First a -> First a Source #
Ord a => Ord (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods compare :: Last a -> Last a -> Ordering Source # (<) :: Last a -> Last a -> Bool Source # (<=) :: Last a -> Last a -> Bool Source # (>) :: Last a -> Last a -> Bool Source # (>=) :: Last a -> Last a -> Bool Source # max :: Last a -> Last a -> Last a Source # min :: Last a -> Last a -> Last a Source #
Ord a => Ord (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods compare :: Max a -> Max a -> Ordering Source # (<) :: Max a -> Max a -> Bool Source # (<=) :: Max a -> Max a -> Bool Source # (>) :: Max a -> Max a -> Bool Source # (>=) :: Max a -> Max a -> Bool Source # max :: Max a -> Max a -> Max a Source # min :: Max a -> Max a -> Max a Source #
Ord a => Ord (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods compare :: Min a -> Min a -> Ordering Source # (<) :: Min a -> Min a -> Bool Source # (<=) :: Min a -> Min a -> Bool Source # (>) :: Min a -> Min a -> Bool Source # (>=) :: Min a -> Min a -> Bool Source # max :: Min a -> Min a -> Min a Source # min :: Min a -> Min a -> Min a Source #
Ord m => Ord (WrappedMonoid m) | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

compare :: WrappedMonoid m -> WrappedMonoid m -> Ordering Source #

(<) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #

(<=) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #

(>) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #

(>=) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #

max :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Source #

min :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Source #

Ord a => Ord (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods compare :: IntMap a -> IntMap a -> Ordering Source # (<) :: IntMap a -> IntMap a -> Bool Source # (<=) :: IntMap a -> IntMap a -> Bool Source # (>) :: IntMap a -> IntMap a -> Bool Source # (>=) :: IntMap a -> IntMap a -> Bool Source # max :: IntMap a -> IntMap a -> IntMap a Source # min :: IntMap a -> IntMap a -> IntMap a Source #
Ord a => Ord (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods compare :: Seq a -> Seq a -> Ordering Source # (<) :: Seq a -> Seq a -> Bool Source # (<=) :: Seq a -> Seq a -> Bool Source # (>) :: Seq a -> Seq a -> Bool Source # (>=) :: Seq a -> Seq a -> Bool Source # max :: Seq a -> Seq a -> Seq a Source # min :: Seq a -> Seq a -> Seq a Source #
Ord a => Ord (ViewL a) |
Instance details Defined in Data.Sequence.Internal Methods compare :: ViewL a -> ViewL a -> Ordering Source # (<) :: ViewL a -> ViewL a -> Bool Source # (<=) :: ViewL a -> ViewL a -> Bool Source # (>) :: ViewL a -> ViewL a -> Bool Source # (>=) :: ViewL a -> ViewL a -> Bool Source # max :: ViewL a -> ViewL a -> ViewL a Source # min :: ViewL a -> ViewL a -> ViewL a Source #
Ord a => Ord (ViewR a) |
Instance details Defined in Data.Sequence.Internal Methods compare :: ViewR a -> ViewR a -> Ordering Source # (<) :: ViewR a -> ViewR a -> Bool Source # (<=) :: ViewR a -> ViewR a -> Bool Source # (>) :: ViewR a -> ViewR a -> Bool Source # (>=) :: ViewR a -> ViewR a -> Bool Source # max :: ViewR a -> ViewR a -> ViewR a Source # min :: ViewR a -> ViewR a -> ViewR a Source #
Ord a => Ord (Intersection a) |

Instance details

Defined in Data.Set.Internal

Methods

compare :: Intersection a -> Intersection a -> Ordering Source #

(<) :: Intersection a -> Intersection a -> Bool Source #

(<=) :: Intersection a -> Intersection a -> Bool Source #

(>) :: Intersection a -> Intersection a -> Bool Source #

(>=) :: Intersection a -> Intersection a -> Bool Source #

max :: Intersection a -> Intersection a -> Intersection a Source #

min :: Intersection a -> Intersection a -> Intersection a Source #

Ord a => Ord (Set a) |
Instance details Defined in Data.Set.Internal Methods compare :: Set a -> Set a -> Ordering Source # (<) :: Set a -> Set a -> Bool Source # (<=) :: Set a -> Set a -> Bool Source # (>) :: Set a -> Set a -> Bool Source # (>=) :: Set a -> Set a -> Bool Source # max :: Set a -> Set a -> Set a Source # min :: Set a -> Set a -> Set a Source #
Ord a => Ord (Tree a) | Since: containers-0.6.5
Instance details Defined in Data.Tree Methods compare :: Tree a -> Tree a -> Ordering Source # (<) :: Tree a -> Tree a -> Bool Source # (<=) :: Tree a -> Tree a -> Bool Source # (>) :: Tree a -> Tree a -> Bool Source # (>=) :: Tree a -> Tree a -> Bool Source # max :: Tree a -> Tree a -> Tree a Source # min :: Tree a -> Tree a -> Tree a Source #
Ord a => Ord (DList a) |
Instance details Defined in Data.DList.Internal Methods compare :: DList a -> DList a -> Ordering Source # (<) :: DList a -> DList a -> Bool Source # (<=) :: DList a -> DList a -> Bool Source # (>) :: DList a -> DList a -> Bool Source # (>=) :: DList a -> DList a -> Bool Source # max :: DList a -> DList a -> DList a Source # min :: DList a -> DList a -> DList a Source #
Ord a => Ord (NonEmpty a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Base

Methods

compare :: NonEmpty a -> NonEmpty a -> Ordering Source #

(<) :: NonEmpty a -> NonEmpty a -> Bool Source #

(<=) :: NonEmpty a -> NonEmpty a -> Bool Source #

(>) :: NonEmpty a -> NonEmpty a -> Bool Source #

(>=) :: NonEmpty a -> NonEmpty a -> Bool Source #

max :: NonEmpty a -> NonEmpty a -> NonEmpty a Source #

min :: NonEmpty a -> NonEmpty a -> NonEmpty a Source #

Ord a => Ord (Identity a) | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

compare :: Identity a -> Identity a -> Ordering Source #

(<) :: Identity a -> Identity a -> Bool Source #

(<=) :: Identity a -> Identity a -> Bool Source #

(>) :: Identity a -> Identity a -> Bool Source #

(>=) :: Identity a -> Identity a -> Bool Source #

max :: Identity a -> Identity a -> Identity a Source #

min :: Identity a -> Identity a -> Identity a Source #

Ord a => Ord (Down a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods compare :: Down a -> Down a -> Ordering Source # (<) :: Down a -> Down a -> Bool Source # (<=) :: Down a -> Down a -> Bool Source # (>) :: Down a -> Down a -> Bool Source # (>=) :: Down a -> Down a -> Bool Source # max :: Down a -> Down a -> Down a Source # min :: Down a -> Down a -> Down a Source #
Ord (ForeignPtr a) | Since: base-2.1

Instance details

Defined in GHC.Internal.ForeignPtr

Methods

compare :: ForeignPtr a -> ForeignPtr a -> Ordering Source #

(<) :: ForeignPtr a -> ForeignPtr a -> Bool Source #

(<=) :: ForeignPtr a -> ForeignPtr a -> Bool Source #

(>) :: ForeignPtr a -> ForeignPtr a -> Bool Source #

(>=) :: ForeignPtr a -> ForeignPtr a -> Bool Source #

max :: ForeignPtr a -> ForeignPtr a -> ForeignPtr a Source #

min :: ForeignPtr a -> ForeignPtr a -> ForeignPtr a Source #

Ord p => Ord (Par1 p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods compare :: Par1 p -> Par1 p -> Ordering Source # (<) :: Par1 p -> Par1 p -> Bool Source # (<=) :: Par1 p -> Par1 p -> Bool Source # (>) :: Par1 p -> Par1 p -> Bool Source # (>=) :: Par1 p -> Par1 p -> Bool Source # max :: Par1 p -> Par1 p -> Par1 p Source # min :: Par1 p -> Par1 p -> Par1 p Source #
Integral a => Ord (Ratio a) | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods compare :: Ratio a -> Ratio a -> Ordering Source # (<) :: Ratio a -> Ratio a -> Bool Source # (<=) :: Ratio a -> Ratio a -> Bool Source # (>) :: Ratio a -> Ratio a -> Bool Source # (>=) :: Ratio a -> Ratio a -> Bool Source # max :: Ratio a -> Ratio a -> Ratio a Source # min :: Ratio a -> Ratio a -> Ratio a Source #
Ord a => Ord (Hashed a) |
Instance details Defined in Data.Hashable.Class Methods compare :: Hashed a -> Hashed a -> Ordering Source # (<) :: Hashed a -> Hashed a -> Bool Source # (<=) :: Hashed a -> Hashed a -> Bool Source # (>) :: Hashed a -> Hashed a -> Bool Source # (>=) :: Hashed a -> Hashed a -> Bool Source # max :: Hashed a -> Hashed a -> Hashed a Source # min :: Hashed a -> Hashed a -> Hashed a Source #
Ord mono => Ord (NonNull mono) |

Instance details

Defined in Data.NonNull

Methods

compare :: NonNull mono -> NonNull mono -> Ordering Source #

(<) :: NonNull mono -> NonNull mono -> Bool Source #

(<=) :: NonNull mono -> NonNull mono -> Bool Source #

(>) :: NonNull mono -> NonNull mono -> Bool Source #

(>=) :: NonNull mono -> NonNull mono -> Bool Source #

max :: NonNull mono -> NonNull mono -> NonNull mono Source #

min :: NonNull mono -> NonNull mono -> NonNull mono Source #

Ord a => Ord (Array a) | Lexicographic ordering. Subject to change between major versions.
Instance details Defined in Data.Primitive.Array Methods compare :: Array a -> Array a -> Ordering Source # (<) :: Array a -> Array a -> Bool Source # (<=) :: Array a -> Array a -> Bool Source # (>) :: Array a -> Array a -> Bool Source # (>=) :: Array a -> Array a -> Bool Source # max :: Array a -> Array a -> Array a Source # min :: Array a -> Array a -> Array a Source #
(Ord a, Prim a) => Ord (PrimArray a) | Lexicographic ordering. Subject to change between major versions. Since: primitive-0.6.4.0

Instance details

Defined in Data.Primitive.PrimArray

Methods

compare :: PrimArray a -> PrimArray a -> Ordering Source #

(<) :: PrimArray a -> PrimArray a -> Bool Source #

(<=) :: PrimArray a -> PrimArray a -> Bool Source #

(>) :: PrimArray a -> PrimArray a -> Bool Source #

(>=) :: PrimArray a -> PrimArray a -> Bool Source #

max :: PrimArray a -> PrimArray a -> PrimArray a Source #

min :: PrimArray a -> PrimArray a -> PrimArray a Source #

Ord a => Ord (SmallArray a) | Lexicographic ordering. Subject to change between major versions.

Instance details

Defined in Data.Primitive.SmallArray

Methods

compare :: SmallArray a -> SmallArray a -> Ordering Source #

(<) :: SmallArray a -> SmallArray a -> Bool Source #

(<=) :: SmallArray a -> SmallArray a -> Bool Source #

(>) :: SmallArray a -> SmallArray a -> Bool Source #

(>=) :: SmallArray a -> SmallArray a -> Bool Source #

max :: SmallArray a -> SmallArray a -> SmallArray a Source #

min :: SmallArray a -> SmallArray a -> SmallArray a Source #

Ord a => Ord (Stream a) |
Instance details Defined in Data.Text.Internal.Fusion.Types Methods compare :: Stream a -> Stream a -> Ordering Source # (<) :: Stream a -> Stream a -> Bool Source # (<=) :: Stream a -> Stream a -> Bool Source # (>) :: Stream a -> Stream a -> Bool Source # (>=) :: Stream a -> Stream a -> Bool Source # max :: Stream a -> Stream a -> Stream a Source # min :: Stream a -> Stream a -> Stream a Source #
Ord a => Ord (HashSet a) |

Instance details

Defined in Data.HashSet.Internal

Methods

compare :: HashSet a -> HashSet a -> Ordering Source #

(<) :: HashSet a -> HashSet a -> Bool Source #

(<=) :: HashSet a -> HashSet a -> Bool Source #

(>) :: HashSet a -> HashSet a -> Bool Source #

(>=) :: HashSet a -> HashSet a -> Bool Source #

max :: HashSet a -> HashSet a -> HashSet a Source #

min :: HashSet a -> HashSet a -> HashSet a Source #

Ord a => Ord (Vector a) |
Instance details Defined in Data.Vector Methods compare :: Vector a -> Vector a -> Ordering Source # (<) :: Vector a -> Vector a -> Bool Source # (<=) :: Vector a -> Vector a -> Bool Source # (>) :: Vector a -> Vector a -> Bool Source # (>=) :: Vector a -> Vector a -> Bool Source # max :: Vector a -> Vector a -> Vector a Source # min :: Vector a -> Vector a -> Vector a Source #
(Prim a, Ord a) => Ord (Vector a) |
Instance details Defined in Data.Vector.Primitive Methods compare :: Vector a -> Vector a -> Ordering Source # (<) :: Vector a -> Vector a -> Bool Source # (<=) :: Vector a -> Vector a -> Bool Source # (>) :: Vector a -> Vector a -> Bool Source # (>=) :: Vector a -> Vector a -> Bool Source # max :: Vector a -> Vector a -> Vector a Source # min :: Vector a -> Vector a -> Vector a Source #
(Storable a, Ord a) => Ord (Vector a) |
Instance details Defined in Data.Vector.Storable Methods compare :: Vector a -> Vector a -> Ordering Source # (<) :: Vector a -> Vector a -> Bool Source # (<=) :: Vector a -> Vector a -> Bool Source # (>) :: Vector a -> Vector a -> Bool Source # (>=) :: Vector a -> Vector a -> Bool Source # max :: Vector a -> Vector a -> Vector a Source # min :: Vector a -> Vector a -> Vector a Source #
Ord a => Ord (Vector a) |
Instance details Defined in Data.Vector.Strict Methods compare :: Vector a -> Vector a -> Ordering Source # (<) :: Vector a -> Vector a -> Bool Source # (<=) :: Vector a -> Vector a -> Bool Source # (>) :: Vector a -> Vector a -> Bool Source # (>=) :: Vector a -> Vector a -> Bool Source # max :: Vector a -> Vector a -> Vector a Source # min :: Vector a -> Vector a -> Vector a Source #
(Unbox a, Ord a) => Ord (Vector a) |
Instance details Defined in Data.Vector.Unboxed Methods compare :: Vector a -> Vector a -> Ordering Source # (<) :: Vector a -> Vector a -> Bool Source # (<=) :: Vector a -> Vector a -> Bool Source # (>) :: Vector a -> Vector a -> Bool Source # (>=) :: Vector a -> Vector a -> Bool Source # max :: Vector a -> Vector a -> Vector a Source # min :: Vector a -> Vector a -> Vector a Source #
Ord a => Ord (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Maybe Methods compare :: Maybe a -> Maybe a -> Ordering Source # (<) :: Maybe a -> Maybe a -> Bool Source # (<=) :: Maybe a -> Maybe a -> Bool Source # (>) :: Maybe a -> Maybe a -> Bool Source # (>=) :: Maybe a -> Maybe a -> Bool Source # max :: Maybe a -> Maybe a -> Maybe a Source # min :: Maybe a -> Maybe a -> Maybe a Source #
Ord a => Ord (Solo a) |
Instance details Defined in GHC.Classes Methods compare :: Solo a -> Solo a -> Ordering Source # (<) :: Solo a -> Solo a -> Bool Source # (<=) :: Solo a -> Solo a -> Bool Source # (>) :: Solo a -> Solo a -> Bool Source # (>=) :: Solo a -> Solo a -> Bool Source # max :: Solo a -> Solo a -> Solo a Source # min :: Solo a -> Solo a -> Solo a Source #
Ord a => Ord [a] |
Instance details Defined in GHC.Classes Methods compare :: [a] -> [a] -> Ordering Source # (<) :: [a] -> [a] -> Bool Source # (<=) :: [a] -> [a] -> Bool Source # (>) :: [a] -> [a] -> Bool Source # (>=) :: [a] -> [a] -> Bool Source # max :: [a] -> [a] -> [a] Source # min :: [a] -> [a] -> [a] Source #
Ord (Fixed a) | Since: base-2.1
Instance details Defined in Data.Fixed Methods compare :: Fixed a -> Fixed a -> Ordering Source # (<) :: Fixed a -> Fixed a -> Bool Source # (<=) :: Fixed a -> Fixed a -> Bool Source # (>) :: Fixed a -> Fixed a -> Bool Source # (>=) :: Fixed a -> Fixed a -> Bool Source # max :: Fixed a -> Fixed a -> Fixed a Source # min :: Fixed a -> Fixed a -> Fixed a Source #
Ord a => Ord (Arg a b) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods compare :: Arg a b -> Arg a b -> Ordering Source # (<) :: Arg a b -> Arg a b -> Bool Source # (<=) :: Arg a b -> Arg a b -> Bool Source # (>) :: Arg a b -> Arg a b -> Bool Source # (>=) :: Arg a b -> Arg a b -> Bool Source # max :: Arg a b -> Arg a b -> Arg a b Source # min :: Arg a b -> Arg a b -> Arg a b Source #
(Ord k, Ord v) => Ord (Map k v) |
Instance details Defined in Data.Map.Internal Methods compare :: Map k v -> Map k v -> Ordering Source # (<) :: Map k v -> Map k v -> Bool Source # (<=) :: Map k v -> Map k v -> Bool Source # (>) :: Map k v -> Map k v -> Bool Source # (>=) :: Map k v -> Map k v -> Bool Source # max :: Map k v -> Map k v -> Map k v Source # min :: Map k v -> Map k v -> Map k v Source #
(Ord1 f, Ord a) => Ord (Cofree f a) |

Instance details

Defined in Control.Comonad.Cofree

Methods

compare :: Cofree f a -> Cofree f a -> Ordering Source #

(<) :: Cofree f a -> Cofree f a -> Bool Source #

(<=) :: Cofree f a -> Cofree f a -> Bool Source #

(>) :: Cofree f a -> Cofree f a -> Bool Source #

(>=) :: Cofree f a -> Cofree f a -> Bool Source #

max :: Cofree f a -> Cofree f a -> Cofree f a Source #

min :: Cofree f a -> Cofree f a -> Cofree f a Source #

(Ord1 f, Ord a) => Ord (Free f a) |
Instance details Defined in Control.Monad.Free Methods compare :: Free f a -> Free f a -> Ordering Source # (<) :: Free f a -> Free f a -> Bool Source # (<=) :: Free f a -> Free f a -> Bool Source # (>) :: Free f a -> Free f a -> Bool Source # (>=) :: Free f a -> Free f a -> Bool Source # max :: Free f a -> Free f a -> Free f a Source # min :: Free f a -> Free f a -> Free f a Source #
(Ord a, Ord b) => Ord (Either a b) | Since: base-2.1

Instance details

Defined in GHC.Internal.Data.Either

Methods

compare :: Either a b -> Either a b -> Ordering Source #

(<) :: Either a b -> Either a b -> Bool Source #

(<=) :: Either a b -> Either a b -> Bool Source #

(>) :: Either a b -> Either a b -> Bool Source #

(>=) :: Either a b -> Either a b -> Bool Source #

max :: Either a b -> Either a b -> Either a b Source #

min :: Either a b -> Either a b -> Either a b Source #

Ord (TypeRep a) | Since: base-4.4.0.0

Instance details

Defined in GHC.Internal.Data.Typeable.Internal

Methods

compare :: TypeRep a -> TypeRep a -> Ordering Source #

(<) :: TypeRep a -> TypeRep a -> Bool Source #

(<=) :: TypeRep a -> TypeRep a -> Bool Source #

(>) :: TypeRep a -> TypeRep a -> Bool Source #

(>=) :: TypeRep a -> TypeRep a -> Bool Source #

max :: TypeRep a -> TypeRep a -> TypeRep a Source #

min :: TypeRep a -> TypeRep a -> TypeRep a Source #

Ord (U1 p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods compare :: U1 p -> U1 p -> Ordering Source # (<) :: U1 p -> U1 p -> Bool Source # (<=) :: U1 p -> U1 p -> Bool Source # (>) :: U1 p -> U1 p -> Bool Source # (>=) :: U1 p -> U1 p -> Bool Source # max :: U1 p -> U1 p -> U1 p Source # min :: U1 p -> U1 p -> U1 p Source #
Ord (V1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods compare :: V1 p -> V1 p -> Ordering Source # (<) :: V1 p -> V1 p -> Bool Source # (<=) :: V1 p -> V1 p -> Bool Source # (>) :: V1 p -> V1 p -> Bool Source # (>=) :: V1 p -> V1 p -> Bool Source # max :: V1 p -> V1 p -> V1 p Source # min :: V1 p -> V1 p -> V1 p Source #
(Ord1 f, Ord a) => Ord (Lift f a) |
Instance details Defined in Control.Applicative.Lift Methods compare :: Lift f a -> Lift f a -> Ordering Source # (<) :: Lift f a -> Lift f a -> Bool Source # (<=) :: Lift f a -> Lift f a -> Bool Source # (>) :: Lift f a -> Lift f a -> Bool Source # (>=) :: Lift f a -> Lift f a -> Bool Source # max :: Lift f a -> Lift f a -> Lift f a Source # min :: Lift f a -> Lift f a -> Lift f a Source #
(Ord1 m, Ord a) => Ord (MaybeT m a) |

Instance details

Defined in Control.Monad.Trans.Maybe

Methods

compare :: MaybeT m a -> MaybeT m a -> Ordering Source #

(<) :: MaybeT m a -> MaybeT m a -> Bool Source #

(<=) :: MaybeT m a -> MaybeT m a -> Bool Source #

(>) :: MaybeT m a -> MaybeT m a -> Bool Source #

(>=) :: MaybeT m a -> MaybeT m a -> Bool Source #

max :: MaybeT m a -> MaybeT m a -> MaybeT m a Source #

min :: MaybeT m a -> MaybeT m a -> MaybeT m a Source #

(Ord k, Ord v) => Ord (HashMap k v) | The ordering is total and consistent with the `Eq` instance. However, nothing else about the ordering is specified, and it may change from version to version of either this package or of `hashable`.

Instance details

Defined in Data.HashMap.Internal

Methods

compare :: HashMap k v -> HashMap k v -> Ordering Source #

(<) :: HashMap k v -> HashMap k v -> Bool Source #

(<=) :: HashMap k v -> HashMap k v -> Bool Source #

(>) :: HashMap k v -> HashMap k v -> Bool Source #

(>=) :: HashMap k v -> HashMap k v -> Bool Source #

max :: HashMap k v -> HashMap k v -> HashMap k v Source #

min :: HashMap k v -> HashMap k v -> HashMap k v Source #

(Ord a, Ord b) => Ord (a, b) |
Instance details Defined in GHC.Classes Methods compare :: (a, b) -> (a, b) -> Ordering Source # (<) :: (a, b) -> (a, b) -> Bool Source # (<=) :: (a, b) -> (a, b) -> Bool Source # (>) :: (a, b) -> (a, b) -> Bool Source # (>=) :: (a, b) -> (a, b) -> Bool Source # max :: (a, b) -> (a, b) -> (a, b) Source # min :: (a, b) -> (a, b) -> (a, b) Source #
Ord (bi a b) => Ord (Biap bi a b) |

Instance details

Defined in Data.Bifunctor.Biap

Methods

compare :: Biap bi a b -> Biap bi a b -> Ordering Source #

(<) :: Biap bi a b -> Biap bi a b -> Bool Source #

(<=) :: Biap bi a b -> Biap bi a b -> Bool Source #

(>) :: Biap bi a b -> Biap bi a b -> Bool Source #

(>=) :: Biap bi a b -> Biap bi a b -> Bool Source #

max :: Biap bi a b -> Biap bi a b -> Biap bi a b Source #

min :: Biap bi a b -> Biap bi a b -> Biap bi a b Source #

Ord (p (Fix p a) a) => Ord (Fix p a) |
Instance details Defined in Data.Bifunctor.Fix Methods compare :: Fix p a -> Fix p a -> Ordering Source # (<) :: Fix p a -> Fix p a -> Bool Source # (<=) :: Fix p a -> Fix p a -> Bool Source # (>) :: Fix p a -> Fix p a -> Bool Source # (>=) :: Fix p a -> Fix p a -> Bool Source # max :: Fix p a -> Fix p a -> Fix p a Source # min :: Fix p a -> Fix p a -> Fix p a Source #
Ord (p a a) => Ord (Join p a) |
Instance details Defined in Data.Bifunctor.Join Methods compare :: Join p a -> Join p a -> Ordering Source # (<) :: Join p a -> Join p a -> Bool Source # (<=) :: Join p a -> Join p a -> Bool Source # (>) :: Join p a -> Join p a -> Bool Source # (>=) :: Join p a -> Join p a -> Bool Source # max :: Join p a -> Join p a -> Join p a Source # min :: Join p a -> Join p a -> Join p a Source #
(Ord a, Ord (f b)) => Ord (FreeF f a b) |

Instance details

Defined in Control.Monad.Trans.Free

Methods

compare :: FreeF f a b -> FreeF f a b -> Ordering Source #

(<) :: FreeF f a b -> FreeF f a b -> Bool Source #

(<=) :: FreeF f a b -> FreeF f a b -> Bool Source #

(>) :: FreeF f a b -> FreeF f a b -> Bool Source #

(>=) :: FreeF f a b -> FreeF f a b -> Bool Source #

max :: FreeF f a b -> FreeF f a b -> FreeF f a b Source #

min :: FreeF f a b -> FreeF f a b -> FreeF f a b Source #

(Ord1 f, Ord1 m, Ord a) => Ord (FreeT f m a) |

Instance details

Defined in Control.Monad.Trans.Free

Methods

compare :: FreeT f m a -> FreeT f m a -> Ordering Source #

(<) :: FreeT f m a -> FreeT f m a -> Bool Source #

(<=) :: FreeT f m a -> FreeT f m a -> Bool Source #

(>) :: FreeT f m a -> FreeT f m a -> Bool Source #

(>=) :: FreeT f m a -> FreeT f m a -> Bool Source #

max :: FreeT f m a -> FreeT f m a -> FreeT f m a Source #

min :: FreeT f m a -> FreeT f m a -> FreeT f m a Source #

(Generic1 f, Ord (Rep1 f a)) => Ord (Generically1 f a) | Since: base-4.18.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: Generically1 f a -> Generically1 f a -> Ordering Source #

(<) :: Generically1 f a -> Generically1 f a -> Bool Source #

(<=) :: Generically1 f a -> Generically1 f a -> Bool Source #

(>) :: Generically1 f a -> Generically1 f a -> Bool Source #

(>=) :: Generically1 f a -> Generically1 f a -> Bool Source #

max :: Generically1 f a -> Generically1 f a -> Generically1 f a Source #

min :: Generically1 f a -> Generically1 f a -> Generically1 f a Source #

Ord (f p) => Ord (Rec1 f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods compare :: Rec1 f p -> Rec1 f p -> Ordering Source # (<) :: Rec1 f p -> Rec1 f p -> Bool Source # (<=) :: Rec1 f p -> Rec1 f p -> Bool Source # (>) :: Rec1 f p -> Rec1 f p -> Bool Source # (>=) :: Rec1 f p -> Rec1 f p -> Bool Source # max :: Rec1 f p -> Rec1 f p -> Rec1 f p Source # min :: Rec1 f p -> Rec1 f p -> Rec1 f p Source #
Ord (URec (Ptr ()) p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec (Ptr ()) p -> URec (Ptr ()) p -> Ordering Source #

(<) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source #

(<=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source #

(>) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source #

(>=) :: URec (Ptr ()) p -> URec (Ptr ()) p -> Bool Source #

max :: URec (Ptr ()) p -> URec (Ptr ()) p -> URec (Ptr ()) p Source #

min :: URec (Ptr ()) p -> URec (Ptr ()) p -> URec (Ptr ()) p Source #

Ord (URec Char p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Char p -> URec Char p -> Ordering Source #

(<) :: URec Char p -> URec Char p -> Bool Source #

(<=) :: URec Char p -> URec Char p -> Bool Source #

(>) :: URec Char p -> URec Char p -> Bool Source #

(>=) :: URec Char p -> URec Char p -> Bool Source #

max :: URec Char p -> URec Char p -> URec Char p Source #

min :: URec Char p -> URec Char p -> URec Char p Source #

Ord (URec Double p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Double p -> URec Double p -> Ordering Source #

(<) :: URec Double p -> URec Double p -> Bool Source #

(<=) :: URec Double p -> URec Double p -> Bool Source #

(>) :: URec Double p -> URec Double p -> Bool Source #

(>=) :: URec Double p -> URec Double p -> Bool Source #

max :: URec Double p -> URec Double p -> URec Double p Source #

min :: URec Double p -> URec Double p -> URec Double p Source #

Ord (URec Float p) |

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Float p -> URec Float p -> Ordering Source #

(<) :: URec Float p -> URec Float p -> Bool Source #

(<=) :: URec Float p -> URec Float p -> Bool Source #

(>) :: URec Float p -> URec Float p -> Bool Source #

(>=) :: URec Float p -> URec Float p -> Bool Source #

max :: URec Float p -> URec Float p -> URec Float p Source #

min :: URec Float p -> URec Float p -> URec Float p Source #

Ord (URec Int p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Int p -> URec Int p -> Ordering Source #

(<) :: URec Int p -> URec Int p -> Bool Source #

(<=) :: URec Int p -> URec Int p -> Bool Source #

(>) :: URec Int p -> URec Int p -> Bool Source #

(>=) :: URec Int p -> URec Int p -> Bool Source #

max :: URec Int p -> URec Int p -> URec Int p Source #

min :: URec Int p -> URec Int p -> URec Int p Source #

Ord (URec Word p) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: URec Word p -> URec Word p -> Ordering Source #

(<) :: URec Word p -> URec Word p -> Bool Source #

(<=) :: URec Word p -> URec Word p -> Bool Source #

(>) :: URec Word p -> URec Word p -> Bool Source #

(>=) :: URec Word p -> URec Word p -> Bool Source #

max :: URec Word p -> URec Word p -> URec Word p Source #

min :: URec Word p -> URec Word p -> URec Word p Source #

Ord b => Ord (Tagged s b) |

Instance details

Defined in Data.Tagged

Methods

compare :: Tagged s b -> Tagged s b -> Ordering Source #

(<) :: Tagged s b -> Tagged s b -> Bool Source #

(<=) :: Tagged s b -> Tagged s b -> Bool Source #

(>) :: Tagged s b -> Tagged s b -> Bool Source #

(>=) :: Tagged s b -> Tagged s b -> Bool Source #

max :: Tagged s b -> Tagged s b -> Tagged s b Source #

min :: Tagged s b -> Tagged s b -> Tagged s b Source #

(Ord1 f, Ord a) => Ord (Backwards f a) |

Instance details

Defined in Control.Applicative.Backwards

Methods

compare :: Backwards f a -> Backwards f a -> Ordering Source #

(<) :: Backwards f a -> Backwards f a -> Bool Source #

(<=) :: Backwards f a -> Backwards f a -> Bool Source #

(>) :: Backwards f a -> Backwards f a -> Bool Source #

(>=) :: Backwards f a -> Backwards f a -> Bool Source #

max :: Backwards f a -> Backwards f a -> Backwards f a Source #

min :: Backwards f a -> Backwards f a -> Backwards f a Source #

(Ord e, Ord1 m, Ord a) => Ord (ExceptT e m a) |

Instance details

Defined in Control.Monad.Trans.Except

Methods

compare :: ExceptT e m a -> ExceptT e m a -> Ordering Source #

(<) :: ExceptT e m a -> ExceptT e m a -> Bool Source #

(<=) :: ExceptT e m a -> ExceptT e m a -> Bool Source #

(>) :: ExceptT e m a -> ExceptT e m a -> Bool Source #

(>=) :: ExceptT e m a -> ExceptT e m a -> Bool Source #

max :: ExceptT e m a -> ExceptT e m a -> ExceptT e m a Source #

min :: ExceptT e m a -> ExceptT e m a -> ExceptT e m a Source #

(Ord1 f, Ord a) => Ord (IdentityT f a) |

Instance details

Defined in Control.Monad.Trans.Identity

Methods

compare :: IdentityT f a -> IdentityT f a -> Ordering Source #

(<) :: IdentityT f a -> IdentityT f a -> Bool Source #

(<=) :: IdentityT f a -> IdentityT f a -> Bool Source #

(>) :: IdentityT f a -> IdentityT f a -> Bool Source #

(>=) :: IdentityT f a -> IdentityT f a -> Bool Source #

max :: IdentityT f a -> IdentityT f a -> IdentityT f a Source #

min :: IdentityT f a -> IdentityT f a -> IdentityT f a Source #

(Ord w, Ord1 m, Ord a) => Ord (WriterT w m a) |

Instance details

Defined in Control.Monad.Trans.Writer.Lazy

Methods

compare :: WriterT w m a -> WriterT w m a -> Ordering Source #

(<) :: WriterT w m a -> WriterT w m a -> Bool Source #

(<=) :: WriterT w m a -> WriterT w m a -> Bool Source #

(>) :: WriterT w m a -> WriterT w m a -> Bool Source #

(>=) :: WriterT w m a -> WriterT w m a -> Bool Source #

max :: WriterT w m a -> WriterT w m a -> WriterT w m a Source #

min :: WriterT w m a -> WriterT w m a -> WriterT w m a Source #

(Ord w, Ord1 m, Ord a) => Ord (WriterT w m a) |

Instance details

Defined in Control.Monad.Trans.Writer.Strict

Methods

compare :: WriterT w m a -> WriterT w m a -> Ordering Source #

(<) :: WriterT w m a -> WriterT w m a -> Bool Source #

(<=) :: WriterT w m a -> WriterT w m a -> Bool Source #

(>) :: WriterT w m a -> WriterT w m a -> Bool Source #

(>=) :: WriterT w m a -> WriterT w m a -> Bool Source #

max :: WriterT w m a -> WriterT w m a -> WriterT w m a Source #

min :: WriterT w m a -> WriterT w m a -> WriterT w m a Source #

Ord a => Ord (Constant a b) |

Instance details

Defined in Data.Functor.Constant

Methods

compare :: Constant a b -> Constant a b -> Ordering Source #

(<) :: Constant a b -> Constant a b -> Bool Source #

(<=) :: Constant a b -> Constant a b -> Bool Source #

(>) :: Constant a b -> Constant a b -> Bool Source #

(>=) :: Constant a b -> Constant a b -> Bool Source #

max :: Constant a b -> Constant a b -> Constant a b Source #

min :: Constant a b -> Constant a b -> Constant a b Source #

(Ord1 f, Ord a) => Ord (Reverse f a) |

Instance details

Defined in Data.Functor.Reverse

Methods

compare :: Reverse f a -> Reverse f a -> Ordering Source #

(<) :: Reverse f a -> Reverse f a -> Bool Source #

(<=) :: Reverse f a -> Reverse f a -> Bool Source #

(>) :: Reverse f a -> Reverse f a -> Bool Source #

(>=) :: Reverse f a -> Reverse f a -> Bool Source #

max :: Reverse f a -> Reverse f a -> Reverse f a Source #

min :: Reverse f a -> Reverse f a -> Reverse f a Source #

Ord a => Ord (Bundle Id v a) |

Instance details

Defined in Data.Vector.Fusion.Bundle

Methods

compare :: Bundle Id v a -> Bundle Id v a -> Ordering Source #

(<) :: Bundle Id v a -> Bundle Id v a -> Bool Source #

(<=) :: Bundle Id v a -> Bundle Id v a -> Bool Source #

(>) :: Bundle Id v a -> Bundle Id v a -> Bool Source #

(>=) :: Bundle Id v a -> Bundle Id v a -> Bool Source #

max :: Bundle Id v a -> Bundle Id v a -> Bundle Id v a Source #

min :: Bundle Id v a -> Bundle Id v a -> Bundle Id v a Source #

(Ord a, Ord b, Ord c) => Ord (a, b, c) |
Instance details Defined in GHC.Classes Methods compare :: (a, b, c) -> (a, b, c) -> Ordering Source # (<) :: (a, b, c) -> (a, b, c) -> Bool Source # (<=) :: (a, b, c) -> (a, b, c) -> Bool Source # (>) :: (a, b, c) -> (a, b, c) -> Bool Source # (>=) :: (a, b, c) -> (a, b, c) -> Bool Source # max :: (a, b, c) -> (a, b, c) -> (a, b, c) Source # min :: (a, b, c) -> (a, b, c) -> (a, b, c) Source #
(Ord (f a), Ord (g a)) => Ord (Product f g a) | Since: base-4.18.0.0

Instance details

Defined in Data.Functor.Product

Methods

compare :: Product f g a -> Product f g a -> Ordering Source #

(<) :: Product f g a -> Product f g a -> Bool Source #

(<=) :: Product f g a -> Product f g a -> Bool Source #

(>) :: Product f g a -> Product f g a -> Bool Source #

(>=) :: Product f g a -> Product f g a -> Bool Source #

max :: Product f g a -> Product f g a -> Product f g a Source #

min :: Product f g a -> Product f g a -> Product f g a Source #

(Ord (f a), Ord (g a)) => Ord (Sum f g a) | Since: base-4.18.0.0

Instance details

Defined in Data.Functor.Sum

Methods

compare :: Sum f g a -> Sum f g a -> Ordering Source #

(<) :: Sum f g a -> Sum f g a -> Bool Source #

(<=) :: Sum f g a -> Sum f g a -> Bool Source #

(>) :: Sum f g a -> Sum f g a -> Bool Source #

(>=) :: Sum f g a -> Sum f g a -> Bool Source #

max :: Sum f g a -> Sum f g a -> Sum f g a Source #

min :: Sum f g a -> Sum f g a -> Sum f g a Source #

(Ord (f p), Ord (g p)) => Ord ((f :*: g) p) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: (f :*: g) p -> (f :*: g) p -> Ordering Source #

(<) :: (f :*: g) p -> (f :*: g) p -> Bool Source #

(<=) :: (f :*: g) p -> (f :*: g) p -> Bool Source #

(>) :: (f :*: g) p -> (f :*: g) p -> Bool Source #

(>=) :: (f :*: g) p -> (f :*: g) p -> Bool Source #

max :: (f :*: g) p -> (f :*: g) p -> (f :*: g) p Source #

min :: (f :*: g) p -> (f :*: g) p -> (f :*: g) p Source #

(Ord (f p), Ord (g p)) => Ord ((f :+: g) p) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: (f :+: g) p -> (f :+: g) p -> Ordering Source #

(<) :: (f :+: g) p -> (f :+: g) p -> Bool Source #

(<=) :: (f :+: g) p -> (f :+: g) p -> Bool Source #

(>) :: (f :+: g) p -> (f :+: g) p -> Bool Source #

(>=) :: (f :+: g) p -> (f :+: g) p -> Bool Source #

max :: (f :+: g) p -> (f :+: g) p -> (f :+: g) p Source #

min :: (f :+: g) p -> (f :+: g) p -> (f :+: g) p Source #

Ord c => Ord (K1 i c p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods compare :: K1 i c p -> K1 i c p -> Ordering Source # (<) :: K1 i c p -> K1 i c p -> Bool Source # (<=) :: K1 i c p -> K1 i c p -> Bool Source # (>) :: K1 i c p -> K1 i c p -> Bool Source # (>=) :: K1 i c p -> K1 i c p -> Bool Source # max :: K1 i c p -> K1 i c p -> K1 i c p Source # min :: K1 i c p -> K1 i c p -> K1 i c p Source #
(Ord a, Ord b, Ord c, Ord d) => Ord (a, b, c, d) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d) -> (a, b, c, d) -> Ordering Source #

(<) :: (a, b, c, d) -> (a, b, c, d) -> Bool Source #

(<=) :: (a, b, c, d) -> (a, b, c, d) -> Bool Source #

(>) :: (a, b, c, d) -> (a, b, c, d) -> Bool Source #

(>=) :: (a, b, c, d) -> (a, b, c, d) -> Bool Source #

max :: (a, b, c, d) -> (a, b, c, d) -> (a, b, c, d) Source #

min :: (a, b, c, d) -> (a, b, c, d) -> (a, b, c, d) Source #

Ord (f (g a)) => Ord (Compose f g a) | Since: base-4.18.0.0

Instance details

Defined in Data.Functor.Compose

Methods

compare :: Compose f g a -> Compose f g a -> Ordering Source #

(<) :: Compose f g a -> Compose f g a -> Bool Source #

(<=) :: Compose f g a -> Compose f g a -> Bool Source #

(>) :: Compose f g a -> Compose f g a -> Bool Source #

(>=) :: Compose f g a -> Compose f g a -> Bool Source #

max :: Compose f g a -> Compose f g a -> Compose f g a Source #

min :: Compose f g a -> Compose f g a -> Compose f g a Source #

Ord (f a) => Ord (Clown f a b) |

Instance details

Defined in Data.Bifunctor.Clown

Methods

compare :: Clown f a b -> Clown f a b -> Ordering Source #

(<) :: Clown f a b -> Clown f a b -> Bool Source #

(<=) :: Clown f a b -> Clown f a b -> Bool Source #

(>) :: Clown f a b -> Clown f a b -> Bool Source #

(>=) :: Clown f a b -> Clown f a b -> Bool Source #

max :: Clown f a b -> Clown f a b -> Clown f a b Source #

min :: Clown f a b -> Clown f a b -> Clown f a b Source #

Ord (p b a) => Ord (Flip p a b) |

Instance details

Defined in Data.Bifunctor.Flip

Methods

compare :: Flip p a b -> Flip p a b -> Ordering Source #

(<) :: Flip p a b -> Flip p a b -> Bool Source #

(<=) :: Flip p a b -> Flip p a b -> Bool Source #

(>) :: Flip p a b -> Flip p a b -> Bool Source #

(>=) :: Flip p a b -> Flip p a b -> Bool Source #

max :: Flip p a b -> Flip p a b -> Flip p a b Source #

min :: Flip p a b -> Flip p a b -> Flip p a b Source #

Ord (g b) => Ord (Joker g a b) |

Instance details

Defined in Data.Bifunctor.Joker

Methods

compare :: Joker g a b -> Joker g a b -> Ordering Source #

(<) :: Joker g a b -> Joker g a b -> Bool Source #

(<=) :: Joker g a b -> Joker g a b -> Bool Source #

(>) :: Joker g a b -> Joker g a b -> Bool Source #

(>=) :: Joker g a b -> Joker g a b -> Bool Source #

max :: Joker g a b -> Joker g a b -> Joker g a b Source #

min :: Joker g a b -> Joker g a b -> Joker g a b Source #

Ord (p a b) => Ord (WrappedBifunctor p a b) |

Instance details

Defined in Data.Bifunctor.Wrapped

Methods

compare :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> Ordering Source #

(<) :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> Bool Source #

(<=) :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> Bool Source #

(>) :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> Bool Source #

(>=) :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> Bool Source #

max :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> WrappedBifunctor p a b Source #

min :: WrappedBifunctor p a b -> WrappedBifunctor p a b -> WrappedBifunctor p a b Source #

Ord (f (g p)) => Ord ((f :.: g) p) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: (f :.: g) p -> (f :.: g) p -> Ordering Source #

(<) :: (f :.: g) p -> (f :.: g) p -> Bool Source #

(<=) :: (f :.: g) p -> (f :.: g) p -> Bool Source #

(>) :: (f :.: g) p -> (f :.: g) p -> Bool Source #

(>=) :: (f :.: g) p -> (f :.: g) p -> Bool Source #

max :: (f :.: g) p -> (f :.: g) p -> (f :.: g) p Source #

min :: (f :.: g) p -> (f :.: g) p -> (f :.: g) p Source #

Ord (f p) => Ord (M1 i c f p) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

compare :: M1 i c f p -> M1 i c f p -> Ordering Source #

(<) :: M1 i c f p -> M1 i c f p -> Bool Source #

(<=) :: M1 i c f p -> M1 i c f p -> Bool Source #

(>) :: M1 i c f p -> M1 i c f p -> Bool Source #

(>=) :: M1 i c f p -> M1 i c f p -> Bool Source #

max :: M1 i c f p -> M1 i c f p -> M1 i c f p Source #

min :: M1 i c f p -> M1 i c f p -> M1 i c f p Source #

(Ord a, Ord b, Ord c, Ord d, Ord e) => Ord (a, b, c, d, e) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e) -> (a, b, c, d, e) -> Ordering Source #

(<) :: (a, b, c, d, e) -> (a, b, c, d, e) -> Bool Source #

(<=) :: (a, b, c, d, e) -> (a, b, c, d, e) -> Bool Source #

(>) :: (a, b, c, d, e) -> (a, b, c, d, e) -> Bool Source #

(>=) :: (a, b, c, d, e) -> (a, b, c, d, e) -> Bool Source #

max :: (a, b, c, d, e) -> (a, b, c, d, e) -> (a, b, c, d, e) Source #

min :: (a, b, c, d, e) -> (a, b, c, d, e) -> (a, b, c, d, e) Source #

(Ord (f a b), Ord (g a b)) => Ord (Product f g a b) |

Instance details

Defined in Data.Bifunctor.Product

Methods

compare :: Product f g a b -> Product f g a b -> Ordering Source #

(<) :: Product f g a b -> Product f g a b -> Bool Source #

(<=) :: Product f g a b -> Product f g a b -> Bool Source #

(>) :: Product f g a b -> Product f g a b -> Bool Source #

(>=) :: Product f g a b -> Product f g a b -> Bool Source #

max :: Product f g a b -> Product f g a b -> Product f g a b Source #

min :: Product f g a b -> Product f g a b -> Product f g a b Source #

(Ord (p a b), Ord (q a b)) => Ord (Sum p q a b) |

Instance details

Defined in Data.Bifunctor.Sum

Methods

compare :: Sum p q a b -> Sum p q a b -> Ordering Source #

(<) :: Sum p q a b -> Sum p q a b -> Bool Source #

(<=) :: Sum p q a b -> Sum p q a b -> Bool Source #

(>) :: Sum p q a b -> Sum p q a b -> Bool Source #

(>=) :: Sum p q a b -> Sum p q a b -> Bool Source #

max :: Sum p q a b -> Sum p q a b -> Sum p q a b Source #

min :: Sum p q a b -> Sum p q a b -> Sum p q a b Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f) => Ord (a, b, c, d, e, f) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Ordering Source #

(<) :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Bool Source #

(<=) :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Bool Source #

(>) :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Bool Source #

(>=) :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> Bool Source #

max :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> (a, b, c, d, e, f) Source #

min :: (a, b, c, d, e, f) -> (a, b, c, d, e, f) -> (a, b, c, d, e, f) Source #

Ord (f (p a b)) => Ord (Tannen f p a b) |

Instance details

Defined in Data.Bifunctor.Tannen

Methods

compare :: Tannen f p a b -> Tannen f p a b -> Ordering Source #

(<) :: Tannen f p a b -> Tannen f p a b -> Bool Source #

(<=) :: Tannen f p a b -> Tannen f p a b -> Bool Source #

(>) :: Tannen f p a b -> Tannen f p a b -> Bool Source #

(>=) :: Tannen f p a b -> Tannen f p a b -> Bool Source #

max :: Tannen f p a b -> Tannen f p a b -> Tannen f p a b Source #

min :: Tannen f p a b -> Tannen f p a b -> Tannen f p a b Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g) => Ord (a, b, c, d, e, f, g) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Bool Source #

(>) :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> Bool Source #

max :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) Source #

min :: (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) -> (a, b, c, d, e, f, g) Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g, Ord h) => Ord (a, b, c, d, e, f, g, h) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Bool Source #

(>) :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> Bool Source #

max :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) Source #

min :: (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) -> (a, b, c, d, e, f, g, h) Source #

Ord (p (f a) (g b)) => Ord (Biff p f g a b) |

Instance details

Defined in Data.Bifunctor.Biff

Methods

compare :: Biff p f g a b -> Biff p f g a b -> Ordering Source #

(<) :: Biff p f g a b -> Biff p f g a b -> Bool Source #

(<=) :: Biff p f g a b -> Biff p f g a b -> Bool Source #

(>) :: Biff p f g a b -> Biff p f g a b -> Bool Source #

(>=) :: Biff p f g a b -> Biff p f g a b -> Bool Source #

max :: Biff p f g a b -> Biff p f g a b -> Biff p f g a b Source #

min :: Biff p f g a b -> Biff p f g a b -> Biff p f g a b Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g, Ord h, Ord i) => Ord (a, b, c, d, e, f, g, h, i) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Bool Source #

(>) :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> Bool Source #

max :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) Source #

min :: (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) -> (a, b, c, d, e, f, g, h, i) Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g, Ord h, Ord i, Ord j) => Ord (a, b, c, d, e, f, g, h, i, j) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Bool Source #

(>) :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> Bool Source #

max :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) Source #

min :: (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) -> (a, b, c, d, e, f, g, h, i, j) Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g, Ord h, Ord i, Ord j, Ord k) => Ord (a, b, c, d, e, f, g, h, i, j, k) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Bool Source #

(>) :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> Bool Source #

max :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) Source #

min :: (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) -> (a, b, c, d, e, f, g, h, i, j, k) Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g, Ord h, Ord i, Ord j, Ord k, Ord l) => Ord (a, b, c, d, e, f, g, h, i, j, k, l) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool Source #

(>) :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> Bool Source #

max :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) Source #

min :: (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) -> (a, b, c, d, e, f, g, h, i, j, k, l) Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g, Ord h, Ord i, Ord j, Ord k, Ord l, Ord m) => Ord (a, b, c, d, e, f, g, h, i, j, k, l, m) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool Source #

(>) :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Bool Source #

max :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) Source #

min :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> (a, b, c, d, e, f, g, h, i, j, k, l, m) Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g, Ord h, Ord i, Ord j, Ord k, Ord l, Ord m, Ord n) => Ord (a, b, c, d, e, f, g, h, i, j, k, l, m, n) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool Source #

(>) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Bool Source #

max :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source #

min :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source #

(Ord a, Ord b, Ord c, Ord d, Ord e, Ord f, Ord g, Ord h, Ord i, Ord j, Ord k, Ord l, Ord m, Ord n, Ord o) => Ord (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) |

Instance details

Defined in GHC.Classes

Methods

compare :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Ordering Source #

(<) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool Source #

(<=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool Source #

(>) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool Source #

(>=) :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Bool Source #

max :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source #

min :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source #

class Applicative m => Monad (m :: Type -> Type) where Source #

The `Monad` class defines the basic operations over a monad, a concept from a branch of mathematics known as category theory. From the perspective of a Haskell programmer, however, it is best to think of a monad as an abstract datatype of actions. Haskell's `do` expressions provide a convenient syntax for writing monadic expressions.

Instances of `Monad` should satisfy the following:

Left identity
  ``return` a `>>=` k = k a`
Right identity
  `m `>>=` `return` = m`
Associativity
  `m `>>=` (\x -> k x `>>=` h) = (m `>>=` k) `>>=` h`

Furthermore, the `Monad` and `Applicative` operations should relate as follows:

-     pure = return

-     m1 <*> m2 = m1 >>= (\x1 -> m2 >>= (\x2 -> return (x1 x2)))

The above laws imply:

-     fmap f xs  =  xs >>= return . f

-     (>>) = (*>)

and that `pure` and (`<*>`) satisfy the applicative functor laws.

The instances of `Monad` for `List`, `Maybe` and `IO` defined in the Prelude satisfy these laws.

Minimal complete definition

(>>=)

Methods

(>>=) :: m a -> (a -> m b) -> m b infixl 1 Source #

Sequentially compose two actions, passing any value produced by the first as an argument to the second.

'`as `>>=` bs`' can be understood as the `do` expression

    do a <- as
       bs a

An alternative name for this function is 'bind', but some people may refer to it as 'flatMap', which results from it being equivialent to

    \x f -> join (fmap f x) :: Monad m => m a -> (a -> m b) -> m b

which can be seen as mapping a value with `Monad m => m a -> m (m b)` and then 'flattening' `m (m b)` to `m b` using `join`.

(>>) :: m a -> m b -> m b infixl 1 Source #

Sequentially compose two actions, discarding any value produced by the first, like sequencing operators (such as the semicolon) in imperative languages.

'`as `>>` bs`' can be understood as the `do` expression

    do as
       bs

or in terms of ``(>>=)`` as

    as >>= const bs

return :: a -> m a Source #

Inject a value into the monadic type. This function should not be different from its default implementation as `pure`. The justification for the existence of this function is merely historic.

#### Instances

Instances details

Monad Complex | Since: base-4.9.0.0
Instance details Defined in Data.Complex Methods (>>=) :: Complex a -> (a -> Complex b) -> Complex b Source # (>>) :: Complex a -> Complex b -> Complex b Source # return :: a -> Complex a Source #
Monad First | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (>>=) :: First a -> (a -> First b) -> First b Source # (>>) :: First a -> First b -> First b Source # return :: a -> First a Source #
Monad Last | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (>>=) :: Last a -> (a -> Last b) -> Last b Source # (>>) :: Last a -> Last b -> Last b Source # return :: a -> Last a Source #
Monad Max | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (>>=) :: Max a -> (a -> Max b) -> Max b Source # (>>) :: Max a -> Max b -> Max b Source # return :: a -> Max a Source #
Monad Min | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (>>=) :: Min a -> (a -> Min b) -> Min b Source # (>>) :: Min a -> Min b -> Min b Source # return :: a -> Min a Source #
Monad Put |
Instance details Defined in Data.ByteString.Builder.Internal Methods (>>=) :: Put a -> (a -> Put b) -> Put b Source # (>>) :: Put a -> Put b -> Put b Source # return :: a -> Put a Source #
Monad Seq |
Instance details Defined in Data.Sequence.Internal Methods (>>=) :: Seq a -> (a -> Seq b) -> Seq b Source # (>>) :: Seq a -> Seq b -> Seq b Source # return :: a -> Seq a Source #
Monad Tree |
Instance details Defined in Data.Tree Methods (>>=) :: Tree a -> (a -> Tree b) -> Tree b Source # (>>) :: Tree a -> Tree b -> Tree b Source # return :: a -> Tree a Source #
Monad DList |
Instance details Defined in Data.DList.Internal Methods (>>=) :: DList a -> (a -> DList b) -> DList b Source # (>>) :: DList a -> DList b -> DList b Source # return :: a -> DList a Source #
Monad NonEmpty | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (>>=) :: NonEmpty a -> (a -> NonEmpty b) -> NonEmpty b Source # (>>) :: NonEmpty a -> NonEmpty b -> NonEmpty b Source # return :: a -> NonEmpty a Source #
Monad STM | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods (>>=) :: STM a -> (a -> STM b) -> STM b Source # (>>) :: STM a -> STM b -> STM b Source # return :: a -> STM a Source #
Monad Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods (>>=) :: Identity a -> (a -> Identity b) -> Identity b Source # (>>) :: Identity a -> Identity b -> Identity b Source # return :: a -> Identity a Source #
Monad Down | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (>>=) :: Down a -> (a -> Down b) -> Down b Source # (>>) :: Down a -> Down b -> Down b Source # return :: a -> Down a Source #
Monad Par1 | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (>>=) :: Par1 a -> (a -> Par1 b) -> Par1 b Source # (>>) :: Par1 a -> Par1 b -> Par1 b Source # return :: a -> Par1 a Source #
Monad P | Since: base-2.1
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods (>>=) :: P a -> (a -> P b) -> P b Source # (>>) :: P a -> P b -> P b Source # return :: a -> P a Source #
Monad ReadP | Since: base-2.1
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods (>>=) :: ReadP a -> (a -> ReadP b) -> ReadP b Source # (>>) :: ReadP a -> ReadP b -> ReadP b Source # return :: a -> ReadP a Source #
Monad IO | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods (>>=) :: IO a -> (a -> IO b) -> IO b Source # (>>) :: IO a -> IO b -> IO b Source # return :: a -> IO a Source #
Monad Array |
Instance details Defined in Data.Primitive.Array Methods (>>=) :: Array a -> (a -> Array b) -> Array b Source # (>>) :: Array a -> Array b -> Array b Source # return :: a -> Array a Source #
Monad SmallArray |
Instance details Defined in Data.Primitive.SmallArray Methods (>>=) :: SmallArray a -> (a -> SmallArray b) -> SmallArray b Source # (>>) :: SmallArray a -> SmallArray b -> SmallArray b Source # return :: a -> SmallArray a Source #
Monad Memoized |
Instance details Defined in UnliftIO.Memoize Methods (>>=) :: Memoized a -> (a -> Memoized b) -> Memoized b Source # (>>) :: Memoized a -> Memoized b -> Memoized b Source # return :: a -> Memoized a Source #
Monad Vector |
Instance details Defined in Data.Vector Methods (>>=) :: Vector a -> (a -> Vector b) -> Vector b Source # (>>) :: Vector a -> Vector b -> Vector b Source # return :: a -> Vector a Source #
Monad Id |
Instance details Defined in Data.Vector.Fusion.Util Methods (>>=) :: Id a -> (a -> Id b) -> Id b Source # (>>) :: Id a -> Id b -> Id b Source # return :: a -> Id a Source #
Monad Vector |
Instance details Defined in Data.Vector.Strict Methods (>>=) :: Vector a -> (a -> Vector b) -> Vector b Source # (>>) :: Vector a -> Vector b -> Vector b Source # return :: a -> Vector a Source #
Monad Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods (>>=) :: Maybe a -> (a -> Maybe b) -> Maybe b Source # (>>) :: Maybe a -> Maybe b -> Maybe b Source # return :: a -> Maybe a Source #
Monad Solo | Since: base-4.15
Instance details Defined in GHC.Internal.Base Methods (>>=) :: Solo a -> (a -> Solo b) -> Solo b Source # (>>) :: Solo a -> Solo b -> Solo b Source # return :: a -> Solo a Source #
Monad [] | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods (>>=) :: [a] -> (a -> [b]) -> [b] Source # (>>) :: [a] -> [b] -> [b] Source # return :: a -> [a] Source #
Representable f => Monad (Co f) |
Instance details Defined in Data.Functor.Rep Methods (>>=) :: Co f a -> (a -> Co f b) -> Co f b Source # (>>) :: Co f a -> Co f b -> Co f b Source # return :: a -> Co f a Source #
Monad m => Monad (WrappedMonad m) | Since: base-4.7.0.0
Instance details Defined in Control.Applicative Methods (>>=) :: WrappedMonad m a -> (a -> WrappedMonad m b) -> WrappedMonad m b Source # (>>) :: WrappedMonad m a -> WrappedMonad m b -> WrappedMonad m b Source # return :: a -> WrappedMonad m a Source #
Monad (SetM s) |
Instance details Defined in Data.Graph Methods (>>=) :: SetM s a -> (a -> SetM s b) -> SetM s b Source # (>>) :: SetM s a -> SetM s b -> SetM s b Source # return :: a -> SetM s a Source #
Alternative f => Monad (Cofree f) |
Instance details Defined in Control.Comonad.Cofree Methods (>>=) :: Cofree f a -> (a -> Cofree f b) -> Cofree f b Source # (>>) :: Cofree f a -> Cofree f b -> Cofree f b Source # return :: a -> Cofree f a Source #
Functor f => Monad (Free f) |
Instance details Defined in Control.Monad.Free Methods (>>=) :: Free f a -> (a -> Free f b) -> Free f b Source # (>>) :: Free f a -> Free f b -> Free f b Source # return :: a -> Free f a Source #
ArrowApply a => Monad (ArrowMonad a) | Since: base-2.1
Instance details Defined in GHC.Internal.Control.Arrow Methods (>>=) :: ArrowMonad a a0 -> (a0 -> ArrowMonad a b) -> ArrowMonad a b Source # (>>) :: ArrowMonad a a0 -> ArrowMonad a b -> ArrowMonad a b Source # return :: a0 -> ArrowMonad a a0 Source #
Monad (Either e) | Since: base-4.4.0.0
Instance details Defined in GHC.Internal.Data.Either Methods (>>=) :: Either e a -> (a -> Either e b) -> Either e b Source # (>>) :: Either e a -> Either e b -> Either e b Source # return :: a -> Either e a Source #
Monad (U1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (>>=) :: U1 a -> (a -> U1 b) -> U1 b Source # (>>) :: U1 a -> U1 b -> U1 b Source # return :: a -> U1 a Source #
Monad (ST s) | Since: base-2.1
Instance details Defined in GHC.Internal.ST Methods (>>=) :: ST s a -> (a -> ST s b) -> ST s b Source # (>>) :: ST s a -> ST s b -> ST s b Source # return :: a -> ST s a Source #
Monad f => Monad (WrappedPoly f) |
Instance details Defined in Data.MonoTraversable Methods (>>=) :: WrappedPoly f a -> (a -> WrappedPoly f b) -> WrappedPoly f b Source # (>>) :: WrappedPoly f a -> WrappedPoly f b -> WrappedPoly f b Source # return :: a -> WrappedPoly f a Source #
Monad (IParser t) |
Instance details Defined in Data.Text.Internal.Read Methods (>>=) :: IParser t a -> (a -> IParser t b) -> IParser t b Source # (>>) :: IParser t a -> IParser t b -> IParser t b Source # return :: a -> IParser t a Source #
Monad m => Monad (MaybeT m) |
Instance details Defined in Control.Monad.Trans.Maybe Methods (>>=) :: MaybeT m a -> (a -> MaybeT m b) -> MaybeT m b Source # (>>) :: MaybeT m a -> MaybeT m b -> MaybeT m b Source # return :: a -> MaybeT m a Source #
Monoid a => Monad ((,) a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (>>=) :: (a, a0) -> (a0 -> (a, b)) -> (a, b) Source # (>>) :: (a, a0) -> (a, b) -> (a, b) Source # return :: a0 -> (a, a0) Source #
Monad (bi a) => Monad (Biap bi a) |
Instance details Defined in Data.Bifunctor.Biap Methods (>>=) :: Biap bi a a0 -> (a0 -> Biap bi a b) -> Biap bi a b Source # (>>) :: Biap bi a a0 -> Biap bi a b -> Biap bi a b Source # return :: a0 -> Biap bi a a0 Source #
(Applicative f, Monad f) => Monad (WhenMissing f x) | Equivalent to `ReaderT k (ReaderT x (MaybeT f))`. Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods (>>=) :: WhenMissing f x a -> (a -> WhenMissing f x b) -> WhenMissing f x b Source # (>>) :: WhenMissing f x a -> WhenMissing f x b -> WhenMissing f x b Source # return :: a -> WhenMissing f x a Source #
(Functor f, Monad m) => Monad (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods (>>=) :: FreeT f m a -> (a -> FreeT f m b) -> FreeT f m b Source # (>>) :: FreeT f m a -> FreeT f m b -> FreeT f m b Source # return :: a -> FreeT f m a Source #
Monad m => Monad (Kleisli m a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods (>>=) :: Kleisli m a a0 -> (a0 -> Kleisli m a b) -> Kleisli m a b Source # (>>) :: Kleisli m a a0 -> Kleisli m a b -> Kleisli m a b Source # return :: a0 -> Kleisli m a a0 Source #
Monad f => Monad (Rec1 f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (>>=) :: Rec1 f a -> (a -> Rec1 f b) -> Rec1 f b Source # (>>) :: Rec1 f a -> Rec1 f b -> Rec1 f b Source # return :: a -> Rec1 f a Source #
Monad (t m) => Monad (LiftingAccum t m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Accum Methods (>>=) :: LiftingAccum t m a -> (a -> LiftingAccum t m b) -> LiftingAccum t m b Source # (>>) :: LiftingAccum t m a -> LiftingAccum t m b -> LiftingAccum t m b Source # return :: a -> LiftingAccum t m a Source #
Monad (t m) => Monad (LiftingSelect t m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Select Methods (>>=) :: LiftingSelect t m a -> (a -> LiftingSelect t m b) -> LiftingSelect t m b Source # (>>) :: LiftingSelect t m a -> LiftingSelect t m b -> LiftingSelect t m b Source # return :: a -> LiftingSelect t m a Source #
(Monad (Rep p), Representable p) => Monad (Prep p) |
Instance details Defined in Data.Profunctor.Rep Methods (>>=) :: Prep p a -> (a -> Prep p b) -> Prep p b Source # (>>) :: Prep p a -> Prep p b -> Prep p b Source # return :: a -> Prep p a Source #
Monad (Tagged s) |
Instance details Defined in Data.Tagged Methods (>>=) :: Tagged s a -> (a -> Tagged s b) -> Tagged s b Source # (>>) :: Tagged s a -> Tagged s b -> Tagged s b Source # return :: a -> Tagged s a Source #
(Monoid w, Functor m, Monad m) => Monad (AccumT w m) |
Instance details Defined in Control.Monad.Trans.Accum Methods (>>=) :: AccumT w m a -> (a -> AccumT w m b) -> AccumT w m b Source # (>>) :: AccumT w m a -> AccumT w m b -> AccumT w m b Source # return :: a -> AccumT w m a Source #
Monad m => Monad (ExceptT e m) |
Instance details Defined in Control.Monad.Trans.Except Methods (>>=) :: ExceptT e m a -> (a -> ExceptT e m b) -> ExceptT e m b Source # (>>) :: ExceptT e m a -> ExceptT e m b -> ExceptT e m b Source # return :: a -> ExceptT e m a Source #
Monad m => Monad (IdentityT m) |
Instance details Defined in Control.Monad.Trans.Identity Methods (>>=) :: IdentityT m a -> (a -> IdentityT m b) -> IdentityT m b Source # (>>) :: IdentityT m a -> IdentityT m b -> IdentityT m b Source # return :: a -> IdentityT m a Source #
Monad m => Monad (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods (>>=) :: ReaderT r m a -> (a -> ReaderT r m b) -> ReaderT r m b Source # (>>) :: ReaderT r m a -> ReaderT r m b -> ReaderT r m b Source # return :: a -> ReaderT r m a Source #
Monad m => Monad (SelectT r m) |
Instance details Defined in Control.Monad.Trans.Select Methods (>>=) :: SelectT r m a -> (a -> SelectT r m b) -> SelectT r m b Source # (>>) :: SelectT r m a -> SelectT r m b -> SelectT r m b Source # return :: a -> SelectT r m a Source #
Monad m => Monad (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Lazy Methods (>>=) :: StateT s m a -> (a -> StateT s m b) -> StateT s m b Source # (>>) :: StateT s m a -> StateT s m b -> StateT s m b Source # return :: a -> StateT s m a Source #
Monad m => Monad (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Strict Methods (>>=) :: StateT s m a -> (a -> StateT s m b) -> StateT s m b Source # (>>) :: StateT s m a -> StateT s m b -> StateT s m b Source # return :: a -> StateT s m a Source #
Monad m => Monad (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.CPS Methods (>>=) :: WriterT w m a -> (a -> WriterT w m b) -> WriterT w m b Source # (>>) :: WriterT w m a -> WriterT w m b -> WriterT w m b Source # return :: a -> WriterT w m a Source #
(Monoid w, Monad m) => Monad (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods (>>=) :: WriterT w m a -> (a -> WriterT w m b) -> WriterT w m b Source # (>>) :: WriterT w m a -> WriterT w m b -> WriterT w m b Source # return :: a -> WriterT w m a Source #
(Monoid w, Monad m) => Monad (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods (>>=) :: WriterT w m a -> (a -> WriterT w m b) -> WriterT w m b Source # (>>) :: WriterT w m a -> WriterT w m b -> WriterT w m b Source # return :: a -> WriterT w m a Source #
Monad m => Monad (Reverse m) | Derived instance.
Instance details Defined in Data.Functor.Reverse Methods (>>=) :: Reverse m a -> (a -> Reverse m b) -> Reverse m b Source # (>>) :: Reverse m a -> Reverse m b -> Reverse m b Source # return :: a -> Reverse m a Source #
(Monoid a, Monoid b) => Monad ((,,) a b) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Base Methods (>>=) :: (a, b, a0) -> (a0 -> (a, b, b0)) -> (a, b, b0) Source # (>>) :: (a, b, a0) -> (a, b, b0) -> (a, b, b0) Source # return :: a0 -> (a, b, a0) Source #
(Monad f, Monad g) => Monad (Product f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Product Methods (>>=) :: Product f g a -> (a -> Product f g b) -> Product f g b Source # (>>) :: Product f g a -> Product f g b -> Product f g b Source # return :: a -> Product f g a Source #
(Monad f, Applicative f) => Monad (WhenMatched f x y) | Equivalent to `ReaderT Key (ReaderT x (ReaderT y (MaybeT f)))` Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods (>>=) :: WhenMatched f x y a -> (a -> WhenMatched f x y b) -> WhenMatched f x y b Source # (>>) :: WhenMatched f x y a -> WhenMatched f x y b -> WhenMatched f x y b Source # return :: a -> WhenMatched f x y a Source #
(Applicative f, Monad f) => Monad (WhenMissing f k x) | Equivalent to `ReaderT k (ReaderT x (MaybeT f))` . Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods (>>=) :: WhenMissing f k x a -> (a -> WhenMissing f k x b) -> WhenMissing f k x b Source # (>>) :: WhenMissing f k x a -> WhenMissing f k x b -> WhenMissing f k x b Source # return :: a -> WhenMissing f k x a Source #
(Monad f, Monad g) => Monad (f :*: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (>>=) :: (f :*: g) a -> (a -> (f :*: g) b) -> (f :*: g) b Source # (>>) :: (f :*: g) a -> (f :*: g) b -> (f :*: g) b Source # return :: a -> (f :*: g) a Source #
Monad (ContT r m) |
Instance details Defined in Control.Monad.Trans.Cont Methods (>>=) :: ContT r m a -> (a -> ContT r m b) -> ContT r m b Source # (>>) :: ContT r m a -> ContT r m b -> ContT r m b Source # return :: a -> ContT r m a Source #
(Monoid a, Monoid b, Monoid c) => Monad ((,,,) a b c) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Base Methods (>>=) :: (a, b, c, a0) -> (a0 -> (a, b, c, b0)) -> (a, b, c, b0) Source # (>>) :: (a, b, c, a0) -> (a, b, c, b0) -> (a, b, c, b0) Source # return :: a0 -> (a, b, c, a0) Source #
Monad ((->) r) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods (>>=) :: (r -> a) -> (a -> r -> b) -> r -> b Source # (>>) :: (r -> a) -> (r -> b) -> r -> b Source # return :: a -> r -> a Source #
(Monad f, Applicative f) => Monad (WhenMatched f k x y) | Equivalent to `ReaderT k (ReaderT x (ReaderT y (MaybeT f)))` Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods (>>=) :: WhenMatched f k x y a -> (a -> WhenMatched f k x y b) -> WhenMatched f k x y b Source # (>>) :: WhenMatched f k x y a -> WhenMatched f k x y b -> WhenMatched f k x y b Source # return :: a -> WhenMatched f k x y a Source #
Monad f => Monad (M1 i c f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods (>>=) :: M1 i c f a -> (a -> M1 i c f b) -> M1 i c f b Source # (>>) :: M1 i c f a -> M1 i c f b -> M1 i c f b Source # return :: a -> M1 i c f a Source #
Monad m => Monad (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.CPS Methods (>>=) :: RWST r w s m a -> (a -> RWST r w s m b) -> RWST r w s m b Source # (>>) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m b Source # return :: a -> RWST r w s m a Source #
(Monoid w, Monad m) => Monad (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Lazy Methods (>>=) :: RWST r w s m a -> (a -> RWST r w s m b) -> RWST r w s m b Source # (>>) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m b Source # return :: a -> RWST r w s m a Source #
(Monoid w, Monad m) => Monad (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Strict Methods (>>=) :: RWST r w s m a -> (a -> RWST r w s m b) -> RWST r w s m b Source # (>>) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m b Source # return :: a -> RWST r w s m a Source #

class Functor (f :: Type -> Type) where Source #

A type `f` is a Functor if it provides a function `fmap` which, given any types `a` and `b` lets you apply any function from `(a -> b)` to turn an `f a` into an `f b`, preserving the structure of `f`. Furthermore `f` needs to adhere to the following:

Identity
  ``fmap` `id` == `id``
Composition
  ``fmap` (f . g) == `fmap` f . `fmap` g`

Note, that the second law follows from the free theorem of the type `fmap` and the first law, so you need only check that the former condition holds. See these articles by School of Haskell or David Luposchainsky for an explanation.

Minimal complete definition

fmap

Methods

fmap :: (a -> b) -> f a -> f b Source #

`fmap` is used to apply a function of type `(a -> b)` to a value of type `f a`, where f is a functor, to produce a value of type `f b`. Note that for any type constructor with more than one parameter (e.g., `Either`), only the last type parameter can be modified with `fmap` (e.g., `b` in `Either a b`).

Some type constructors with two parameters or more have a ``Bifunctor`` instance that allows both the last and the penultimate parameters to be mapped over.

#### Examples

Expand

Convert from a ``Maybe` Int` to a `Maybe String` using `show`:

    >>> fmap show Nothing
    Nothing
    >>> fmap show (Just 3)
    Just "3"

Convert from an ``Either` Int Int` to an `Either Int String` using `show`:

    >>> fmap show (Left 17)
    Left 17
    >>> fmap show (Right 17)
    Right "17"

Double each element of a list:

    >>> fmap (*2) [1,2,3]
    [2,4,6]

Apply `even` to the second element of a pair:

    >>> fmap even (2,2)
    (2,True)

It may seem surprising that the function is only applied to the last element of the tuple compared to the list example above which applies it to every element in the list. To understand, remember that tuples are type constructors with multiple type parameters: a tuple of 3 elements `(a,b,c)` can also be written `(,,) a b c` and its `Functor` instance is defined for `Functor ((,,) a b)` (i.e., only the third parameter is free to be mapped over with `fmap`).

It explains why `fmap` can be used with tuples containing values of different types as in the following example:

    >>> fmap even ("hello", 1.0, 4)
    ("hello",1.0,True)

(<$) :: a -> f b -> f a infixl 4 Source #

Replace all locations in the input with the same value. The default definition is ``fmap` . `const``, but this may be overridden with a more efficient version.

#### Examples

Expand

Perform a computation with `Maybe` and replace the result with a constant value if it is `Just`:

    >>> 'a' <$ Just 2
    Just 'a'
    >>> 'a' <$ Nothing
    Nothing

#### Instances

Instances details

Functor Async |
Instance details Defined in Control.Concurrent.Async.Internal Methods fmap :: (a -> b) -> Async a -> Async b Source # (<$) :: a -> Async b -> Async a Source #
Functor Concurrently |
Instance details Defined in Control.Concurrent.Async.Internal Methods fmap :: (a -> b) -> Concurrently a -> Concurrently b Source # (<$) :: a -> Concurrently b -> Concurrently a Source #
Functor Complex | Since: base-4.9.0.0
Instance details Defined in Data.Complex Methods fmap :: (a -> b) -> Complex a -> Complex b Source # (<$) :: a -> Complex b -> Complex a Source #
Functor First | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a -> b) -> First a -> First b Source # (<$) :: a -> First b -> First a Source #
Functor Last | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a -> b) -> Last a -> Last b Source # (<$) :: a -> Last b -> Last a Source #
Functor Max | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a -> b) -> Max a -> Max b Source # (<$) :: a -> Max b -> Max a Source #
Functor Min | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a -> b) -> Min a -> Min b Source # (<$) :: a -> Min b -> Min a Source #
Functor ArgDescr | Since: base-4.7.0.0
Instance details Defined in System.Console.GetOpt Methods fmap :: (a -> b) -> ArgDescr a -> ArgDescr b Source # (<$) :: a -> ArgDescr b -> ArgDescr a Source #
Functor ArgOrder | Since: base-4.7.0.0
Instance details Defined in System.Console.GetOpt Methods fmap :: (a -> b) -> ArgOrder a -> ArgOrder b Source # (<$) :: a -> ArgOrder b -> ArgOrder a Source #
Functor OptDescr | Since: base-4.7.0.0
Instance details Defined in System.Console.GetOpt Methods fmap :: (a -> b) -> OptDescr a -> OptDescr b Source # (<$) :: a -> OptDescr b -> OptDescr a Source #
Functor Put |
Instance details Defined in Data.ByteString.Builder.Internal Methods fmap :: (a -> b) -> Put a -> Put b Source # (<$) :: a -> Put b -> Put a Source #
Functor SCC | Since: containers-0.5.4
Instance details Defined in Data.Graph Methods fmap :: (a -> b) -> SCC a -> SCC b Source # (<$) :: a -> SCC b -> SCC a Source #
Functor IntMap |
Instance details Defined in Data.IntMap.Internal Methods fmap :: (a -> b) -> IntMap a -> IntMap b Source # (<$) :: a -> IntMap b -> IntMap a Source #
Functor Digit |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Digit a -> Digit b Source # (<$) :: a -> Digit b -> Digit a Source #
Functor Elem |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Elem a -> Elem b Source # (<$) :: a -> Elem b -> Elem a Source #
Functor FingerTree |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> FingerTree a -> FingerTree b Source # (<$) :: a -> FingerTree b -> FingerTree a Source #
Functor Node |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Node a -> Node b Source # (<$) :: a -> Node b -> Node a Source #
Functor Seq |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Seq a -> Seq b Source # (<$) :: a -> Seq b -> Seq a Source #
Functor ViewL |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> ViewL a -> ViewL b Source # (<$) :: a -> ViewL b -> ViewL a Source #
Functor ViewR |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> ViewR a -> ViewR b Source # (<$) :: a -> ViewR b -> ViewR a Source #
Functor Tree |
Instance details Defined in Data.Tree Methods fmap :: (a -> b) -> Tree a -> Tree b Source # (<$) :: a -> Tree b -> Tree a Source #
Functor DList |
Instance details Defined in Data.DList.Internal Methods fmap :: (a -> b) -> DList a -> DList b Source # (<$) :: a -> DList b -> DList a Source #
Functor NonEmpty | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> NonEmpty a -> NonEmpty b Source # (<$) :: a -> NonEmpty b -> NonEmpty a Source #
Functor STM | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods fmap :: (a -> b) -> STM a -> STM b Source # (<$) :: a -> STM b -> STM a Source #
Functor Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods fmap :: (a -> b) -> Identity a -> Identity b Source # (<$) :: a -> Identity b -> Identity a Source #
Functor Down | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods fmap :: (a -> b) -> Down a -> Down b Source # (<$) :: a -> Down b -> Down a Source #
Functor Par1 | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> Par1 a -> Par1 b Source # (<$) :: a -> Par1 b -> Par1 a Source #
Functor P | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods fmap :: (a -> b) -> P a -> P b Source # (<$) :: a -> P b -> P a Source #
Functor ReadP | Since: base-2.1
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods fmap :: (a -> b) -> ReadP a -> ReadP b Source # (<$) :: a -> ReadP b -> ReadP a Source #
Functor IO | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> IO a -> IO b Source # (<$) :: a -> IO b -> IO a Source #
Functor Array |
Instance details Defined in Data.Primitive.Array Methods fmap :: (a -> b) -> Array a -> Array b Source # (<$) :: a -> Array b -> Array a Source #
Functor SmallArray |
Instance details Defined in Data.Primitive.SmallArray Methods fmap :: (a -> b) -> SmallArray a -> SmallArray b Source # (<$) :: a -> SmallArray b -> SmallArray a Source #
Functor Flat |
Instance details Defined in UnliftIO.Internals.Async Methods fmap :: (a -> b) -> Flat a -> Flat b Source # (<$) :: a -> Flat b -> Flat a Source #
Functor FlatApp |
Instance details Defined in UnliftIO.Internals.Async Methods fmap :: (a -> b) -> FlatApp a -> FlatApp b Source # (<$) :: a -> FlatApp b -> FlatApp a Source #
Functor Memoized |
Instance details Defined in UnliftIO.Memoize Methods fmap :: (a -> b) -> Memoized a -> Memoized b Source # (<$) :: a -> Memoized b -> Memoized a Source #
Functor Vector |
Instance details Defined in Data.Vector Methods fmap :: (a -> b) -> Vector a -> Vector b Source # (<$) :: a -> Vector b -> Vector a Source #
Functor Id |
Instance details Defined in Data.Vector.Fusion.Util Methods fmap :: (a -> b) -> Id a -> Id b Source # (<$) :: a -> Id b -> Id a Source #
Functor Vector |
Instance details Defined in Data.Vector.Strict Methods fmap :: (a -> b) -> Vector a -> Vector b Source # (<$) :: a -> Vector b -> Vector a Source #
Functor Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> Maybe a -> Maybe b Source # (<$) :: a -> Maybe b -> Maybe a Source #
Functor Solo | Since: base-4.15
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> Solo a -> Solo b Source # (<$) :: a -> Solo b -> Solo a Source #
Functor [] | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> [a] -> [b] Source # (<$) :: a -> [b] -> [a] Source #
Functor f => Functor (Co f) |
Instance details Defined in Data.Functor.Rep Methods fmap :: (a -> b) -> Co f a -> Co f b Source # (<$) :: a -> Co f b -> Co f a Source #
Functor (ConcurrentlyE e) |
Instance details Defined in Control.Concurrent.Async.Internal Methods fmap :: (a -> b) -> ConcurrentlyE e a -> ConcurrentlyE e b Source # (<$) :: a -> ConcurrentlyE e b -> ConcurrentlyE e a Source #
Monad m => Functor (WrappedMonad m) | Since: base-2.1
Instance details Defined in Control.Applicative Methods fmap :: (a -> b) -> WrappedMonad m a -> WrappedMonad m b Source # (<$) :: a -> WrappedMonad m b -> WrappedMonad m a Source #
Functor (Arg a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a0 -> b) -> Arg a a0 -> Arg a b Source # (<$) :: a0 -> Arg a b -> Arg a a0 Source #
Functor (SetM s) |
Instance details Defined in Data.Graph Methods fmap :: (a -> b) -> SetM s a -> SetM s b Source # (<$) :: a -> SetM s b -> SetM s a Source #
Functor (Map k) |
Instance details Defined in Data.Map.Internal Methods fmap :: (a -> b) -> Map k a -> Map k b Source # (<$) :: a -> Map k b -> Map k a Source #
Monad m => Functor (Handler m) |
Instance details Defined in Control.Monad.Catch Methods fmap :: (a -> b) -> Handler m a -> Handler m b Source # (<$) :: a -> Handler m b -> Handler m a Source #
Functor f => Functor (Cofree f) |
Instance details Defined in Control.Comonad.Cofree Methods fmap :: (a -> b) -> Cofree f a -> Cofree f b Source # (<$) :: a -> Cofree f b -> Cofree f a Source #
Functor f => Functor (Free f) |
Instance details Defined in Control.Monad.Free Methods fmap :: (a -> b) -> Free f a -> Free f b Source # (<$) :: a -> Free f b -> Free f a Source #
Arrow a => Functor (ArrowMonad a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods fmap :: (a0 -> b) -> ArrowMonad a a0 -> ArrowMonad a b Source # (<$) :: a0 -> ArrowMonad a b -> ArrowMonad a a0 Source #
Functor (Either a) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods fmap :: (a0 -> b) -> Either a a0 -> Either a b Source # (<$) :: a0 -> Either a b -> Either a a0 Source #
Functor (U1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> U1 a -> U1 b Source # (<$) :: a -> U1 b -> U1 a Source #
Functor (V1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> V1 a -> V1 b Source # (<$) :: a -> V1 b -> V1 a Source #
Functor (ST s) | Since: base-2.1
Instance details Defined in GHC.Internal.ST Methods fmap :: (a -> b) -> ST s a -> ST s b Source # (<$) :: a -> ST s b -> ST s a Source #
Functor f => Functor (Act f) |
Instance details Defined in Data.Key Methods fmap :: (a -> b) -> Act f a -> Act f b Source # (<$) :: a -> Act f b -> Act f a Source #
Functor (StateL s) |
Instance details Defined in Data.Key Methods fmap :: (a -> b) -> StateL s a -> StateL s b Source # (<$) :: a -> StateL s b -> StateL s a Source #
Functor (StateR s) |
Instance details Defined in Data.Key Methods fmap :: (a -> b) -> StateR s a -> StateR s b Source # (<$) :: a -> StateR s b -> StateR s a Source #
Functor f => Functor (WrappedPoly f) |
Instance details Defined in Data.MonoTraversable Methods fmap :: (a -> b) -> WrappedPoly f a -> WrappedPoly f b Source # (<$) :: a -> WrappedPoly f b -> WrappedPoly f a Source #
Functor (IParser t) |
Instance details Defined in Data.Text.Internal.Read Methods fmap :: (a -> b) -> IParser t a -> IParser t b Source # (<$) :: a -> IParser t b -> IParser t a Source #
Functor f => Functor (Lift f) |
Instance details Defined in Control.Applicative.Lift Methods fmap :: (a -> b) -> Lift f a -> Lift f b Source # (<$) :: a -> Lift f b -> Lift f a Source #
Functor m => Functor (MaybeT m) |
Instance details Defined in Control.Monad.Trans.Maybe Methods fmap :: (a -> b) -> MaybeT m a -> MaybeT m b Source # (<$) :: a -> MaybeT m b -> MaybeT m a Source #
Functor m => Functor (Conc m) |
Instance details Defined in UnliftIO.Internals.Async Methods fmap :: (a -> b) -> Conc m a -> Conc m b Source # (<$) :: a -> Conc m b -> Conc m a Source #
Monad m => Functor (Concurrently m) | Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Internals.Async Methods fmap :: (a -> b) -> Concurrently m a -> Concurrently m b Source # (<$) :: a -> Concurrently m b -> Concurrently m a Source #
Functor (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods fmap :: (a -> b) -> HashMap k a -> HashMap k b Source # (<$) :: a -> HashMap k b -> HashMap k a Source #
Functor ((,) a) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b) -> (a, a0) -> (a, b) Source # (<$) :: a0 -> (a, b) -> (a, a0) Source #
Arrow a => Functor (WrappedArrow a b) | Since: base-2.1
Instance details Defined in Control.Applicative Methods fmap :: (a0 -> b0) -> WrappedArrow a b a0 -> WrappedArrow a b b0 Source # (<$) :: a0 -> WrappedArrow a b b0 -> WrappedArrow a b a0 Source #
Functor (Mag a b) |
Instance details Defined in Data.Biapplicative Methods fmap :: (a0 -> b0) -> Mag a b a0 -> Mag a b b0 Source # (<$) :: a0 -> Mag a b b0 -> Mag a b a0 Source #
Functor (bi a) => Functor (Biap bi a) |
Instance details Defined in Data.Bifunctor.Biap Methods fmap :: (a0 -> b) -> Biap bi a a0 -> Biap bi a b Source # (<$) :: a0 -> Biap bi a b -> Biap bi a a0 Source #
Bifunctor p => Functor (Fix p) |
Instance details Defined in Data.Bifunctor.Fix Methods fmap :: (a -> b) -> Fix p a -> Fix p b Source # (<$) :: a -> Fix p b -> Fix p a Source #
Bifunctor p => Functor (Join p) |
Instance details Defined in Data.Bifunctor.Join Methods fmap :: (a -> b) -> Join p a -> Join p b Source # (<$) :: a -> Join p b -> Join p a Source #
(Applicative f, Monad f) => Functor (WhenMissing f x) | Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods fmap :: (a -> b) -> WhenMissing f x a -> WhenMissing f x b Source # (<$) :: a -> WhenMissing f x b -> WhenMissing f x a Source #
Functor f => Functor (FreeF f a) |
Instance details Defined in Control.Monad.Trans.Free Methods fmap :: (a0 -> b) -> FreeF f a a0 -> FreeF f a b Source # (<$) :: a0 -> FreeF f a b -> FreeF f a a0 Source #
(Functor f, Functor m) => Functor (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods fmap :: (a -> b) -> FreeT f m a -> FreeT f m b Source # (<$) :: a -> FreeT f m b -> FreeT f m a Source #
Functor m => Functor (Kleisli m a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods fmap :: (a0 -> b) -> Kleisli m a a0 -> Kleisli m a b Source # (<$) :: a0 -> Kleisli m a b -> Kleisli m a a0 Source #
(Generic1 f, Functor (Rep1 f)) => Functor (Generically1 f) | Since: base-4.17.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> Generically1 f a -> Generically1 f b Source # (<$) :: a -> Generically1 f b -> Generically1 f a Source #
Functor f => Functor (Rec1 f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> Rec1 f a -> Rec1 f b Source # (<$) :: a -> Rec1 f b -> Rec1 f a Source #
Functor (URec (Ptr ()) :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec (Ptr ()) a -> URec (Ptr ()) b Source # (<$) :: a -> URec (Ptr ()) b -> URec (Ptr ()) a Source #
Functor (URec Char :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Char a -> URec Char b Source # (<$) :: a -> URec Char b -> URec Char a Source #
Functor (URec Double :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Double a -> URec Double b Source # (<$) :: a -> URec Double b -> URec Double a Source #
Functor (URec Float :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Float a -> URec Float b Source # (<$) :: a -> URec Float b -> URec Float a Source #
Functor (URec Int :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Int a -> URec Int b Source # (<$) :: a -> URec Int b -> URec Int a Source #
Functor (URec Word :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Word a -> URec Word b Source # (<$) :: a -> URec Word b -> URec Word a Source #
Functor (Day f g) |
Instance details Defined in Data.Functor.Day Methods fmap :: (a -> b) -> Day f g a -> Day f g b Source # (<$) :: a -> Day f g b -> Day f g a Source #
Functor (t m) => Functor (LiftingAccum t m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Accum Methods fmap :: (a -> b) -> LiftingAccum t m a -> LiftingAccum t m b Source # (<$) :: a -> LiftingAccum t m b -> LiftingAccum t m a Source #
Functor (t m) => Functor (LiftingSelect t m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Select Methods fmap :: (a -> b) -> LiftingSelect t m a -> LiftingSelect t m b Source # (<$) :: a -> LiftingSelect t m b -> LiftingSelect t m a Source #
Profunctor p => Functor (Coprep p) |
Instance details Defined in Data.Profunctor.Rep Methods fmap :: (a -> b) -> Coprep p a -> Coprep p b Source # (<$) :: a -> Coprep p b -> Coprep p a Source #
Profunctor p => Functor (Prep p) |
Instance details Defined in Data.Profunctor.Rep Methods fmap :: (a -> b) -> Prep p a -> Prep p b Source # (<$) :: a -> Prep p b -> Prep p a Source #
Functor (Tagged s) |
Instance details Defined in Data.Tagged Methods fmap :: (a -> b) -> Tagged s a -> Tagged s b Source # (<$) :: a -> Tagged s b -> Tagged s a Source #
Functor f => Functor (Backwards f) | Derived instance.
Instance details Defined in Control.Applicative.Backwards Methods fmap :: (a -> b) -> Backwards f a -> Backwards f b Source # (<$) :: a -> Backwards f b -> Backwards f a Source #
Functor m => Functor (AccumT w m) |
Instance details Defined in Control.Monad.Trans.Accum Methods fmap :: (a -> b) -> AccumT w m a -> AccumT w m b Source # (<$) :: a -> AccumT w m b -> AccumT w m a Source #
Functor m => Functor (ExceptT e m) |
Instance details Defined in Control.Monad.Trans.Except Methods fmap :: (a -> b) -> ExceptT e m a -> ExceptT e m b Source # (<$) :: a -> ExceptT e m b -> ExceptT e m a Source #
Functor m => Functor (IdentityT m) |
Instance details Defined in Control.Monad.Trans.Identity Methods fmap :: (a -> b) -> IdentityT m a -> IdentityT m b Source # (<$) :: a -> IdentityT m b -> IdentityT m a Source #
Functor m => Functor (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods fmap :: (a -> b) -> ReaderT r m a -> ReaderT r m b Source # (<$) :: a -> ReaderT r m b -> ReaderT r m a Source #
Functor m => Functor (SelectT r m) |
Instance details Defined in Control.Monad.Trans.Select Methods fmap :: (a -> b) -> SelectT r m a -> SelectT r m b Source # (<$) :: a -> SelectT r m b -> SelectT r m a Source #
Functor m => Functor (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Lazy Methods fmap :: (a -> b) -> StateT s m a -> StateT s m b Source # (<$) :: a -> StateT s m b -> StateT s m a Source #
Functor m => Functor (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Strict Methods fmap :: (a -> b) -> StateT s m a -> StateT s m b Source # (<$) :: a -> StateT s m b -> StateT s m a Source #
Functor m => Functor (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.CPS Methods fmap :: (a -> b) -> WriterT w m a -> WriterT w m b Source # (<$) :: a -> WriterT w m b -> WriterT w m a Source #
Functor m => Functor (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods fmap :: (a -> b) -> WriterT w m a -> WriterT w m b Source # (<$) :: a -> WriterT w m b -> WriterT w m a Source #
Functor m => Functor (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods fmap :: (a -> b) -> WriterT w m a -> WriterT w m b Source # (<$) :: a -> WriterT w m b -> WriterT w m a Source #
Functor (Constant a :: Type -> Type) |
Instance details Defined in Data.Functor.Constant Methods fmap :: (a0 -> b) -> Constant a a0 -> Constant a b Source # (<$) :: a0 -> Constant a b -> Constant a a0 Source #
Functor f => Functor (Reverse f) | Derived instance.
Instance details Defined in Data.Functor.Reverse Methods fmap :: (a -> b) -> Reverse f a -> Reverse f b Source # (<$) :: a -> Reverse f b -> Reverse f a Source #
Monad m => Functor (Bundle m v) |
Instance details Defined in Data.Vector.Fusion.Bundle.Monadic Methods fmap :: (a -> b) -> Bundle m v a -> Bundle m v b Source # (<$) :: a -> Bundle m v b -> Bundle m v a Source #
Functor ((,,) a b) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, a0) -> (a, b, b0) Source # (<$) :: a0 -> (a, b, b0) -> (a, b, a0) Source #
(Functor f, Functor g) => Functor (Product f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Product Methods fmap :: (a -> b) -> Product f g a -> Product f g b Source # (<$) :: a -> Product f g b -> Product f g a Source #
(Functor f, Functor g) => Functor (Sum f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Sum Methods fmap :: (a -> b) -> Sum f g a -> Sum f g b Source # (<$) :: a -> Sum f g b -> Sum f g a Source #
Functor f => Functor (WhenMatched f x y) | Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods fmap :: (a -> b) -> WhenMatched f x y a -> WhenMatched f x y b Source # (<$) :: a -> WhenMatched f x y b -> WhenMatched f x y a Source #
(Applicative f, Monad f) => Functor (WhenMissing f k x) | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods fmap :: (a -> b) -> WhenMissing f k x a -> WhenMissing f k x b Source # (<$) :: a -> WhenMissing f k x b -> WhenMissing f k x a Source #
(Functor f, Functor g) => Functor (f :*: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> (f :*: g) a -> (f :*: g) b Source # (<$) :: a -> (f :*: g) b -> (f :*: g) a Source #
(Functor f, Functor g) => Functor (f :+: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> (f :+: g) a -> (f :+: g) b Source # (<$) :: a -> (f :+: g) b -> (f :+: g) a Source #
Functor (K1 i c :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> K1 i c a -> K1 i c b Source # (<$) :: a -> K1 i c b -> K1 i c a Source #
Functor (ContT r m) |
Instance details Defined in Control.Monad.Trans.Cont Methods fmap :: (a -> b) -> ContT r m a -> ContT r m b Source # (<$) :: a -> ContT r m b -> ContT r m a Source #
Functor ((,,,) a b c) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, c, a0) -> (a, b, c, b0) Source # (<$) :: a0 -> (a, b, c, b0) -> (a, b, c, a0) Source #
Functor ((->) r) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> (r -> a) -> r -> b Source # (<$) :: a -> (r -> b) -> r -> a Source #
(Functor f, Functor g) => Functor (Compose f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Compose Methods fmap :: (a -> b) -> Compose f g a -> Compose f g b Source # (<$) :: a -> Compose f g b -> Compose f g a Source #
Functor (Clown f a :: Type -> Type) |
Instance details Defined in Data.Bifunctor.Clown Methods fmap :: (a0 -> b) -> Clown f a a0 -> Clown f a b Source # (<$) :: a0 -> Clown f a b -> Clown f a a0 Source #
Bifunctor p => Functor (Flip p a) |
Instance details Defined in Data.Bifunctor.Flip Methods fmap :: (a0 -> b) -> Flip p a a0 -> Flip p a b Source # (<$) :: a0 -> Flip p a b -> Flip p a a0 Source #
Functor g => Functor (Joker g a) |
Instance details Defined in Data.Bifunctor.Joker Methods fmap :: (a0 -> b) -> Joker g a a0 -> Joker g a b Source # (<$) :: a0 -> Joker g a b -> Joker g a a0 Source #
Bifunctor p => Functor (WrappedBifunctor p a) |
Instance details Defined in Data.Bifunctor.Wrapped Methods fmap :: (a0 -> b) -> WrappedBifunctor p a a0 -> WrappedBifunctor p a b Source # (<$) :: a0 -> WrappedBifunctor p a b -> WrappedBifunctor p a a0 Source #
Functor f => Functor (WhenMatched f k x y) | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods fmap :: (a -> b) -> WhenMatched f k x y a -> WhenMatched f k x y b Source # (<$) :: a -> WhenMatched f k x y b -> WhenMatched f k x y a Source #
(Functor f, Functor g) => Functor (f :.: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> (f :.: g) a -> (f :.: g) b Source # (<$) :: a -> (f :.: g) b -> (f :.: g) a Source #
Functor f => Functor (M1 i c f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> M1 i c f a -> M1 i c f b Source # (<$) :: a -> M1 i c f b -> M1 i c f a Source #
Functor m => Functor (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.CPS Methods fmap :: (a -> b) -> RWST r w s m a -> RWST r w s m b Source # (<$) :: a -> RWST r w s m b -> RWST r w s m a Source #
Functor m => Functor (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Lazy Methods fmap :: (a -> b) -> RWST r w s m a -> RWST r w s m b Source # (<$) :: a -> RWST r w s m b -> RWST r w s m a Source #
Functor m => Functor (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Strict Methods fmap :: (a -> b) -> RWST r w s m a -> RWST r w s m b Source # (<$) :: a -> RWST r w s m b -> RWST r w s m a Source #
Functor ((,,,,) a b c d) | Since: base-4.18.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, c, d, a0) -> (a, b, c, d, b0) Source # (<$) :: a0 -> (a, b, c, d, b0) -> (a, b, c, d, a0) Source #
(Functor (f a), Functor (g a)) => Functor (Product f g a) |
Instance details Defined in Data.Bifunctor.Product Methods fmap :: (a0 -> b) -> Product f g a a0 -> Product f g a b Source # (<$) :: a0 -> Product f g a b -> Product f g a a0 Source #
(Functor (f a), Functor (g a)) => Functor (Sum f g a) |
Instance details Defined in Data.Bifunctor.Sum Methods fmap :: (a0 -> b) -> Sum f g a a0 -> Sum f g a b Source # (<$) :: a0 -> Sum f g a b -> Sum f g a a0 Source #
Functor ((,,,,,) a b c d e) | Since: base-4.18.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, c, d, e, a0) -> (a, b, c, d, e, b0) Source # (<$) :: a0 -> (a, b, c, d, e, b0) -> (a, b, c, d, e, a0) Source #
(Functor f, Bifunctor p) => Functor (Tannen f p a) |
Instance details Defined in Data.Bifunctor.Tannen Methods fmap :: (a0 -> b) -> Tannen f p a a0 -> Tannen f p a b Source # (<$) :: a0 -> Tannen f p a b -> Tannen f p a a0 Source #
Profunctor p => Functor (Procompose p q a) |
Instance details Defined in Data.Profunctor.Composition Methods fmap :: (a0 -> b) -> Procompose p q a a0 -> Procompose p q a b Source # (<$) :: a0 -> Procompose p q a b -> Procompose p q a a0 Source #
Profunctor p => Functor (Rift p q a) |
Instance details Defined in Data.Profunctor.Composition Methods fmap :: (a0 -> b) -> Rift p q a a0 -> Rift p q a b Source # (<$) :: a0 -> Rift p q a b -> Rift p q a a0 Source #
Functor ((,,,,,,) a b c d e f) | Since: base-4.18.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, c, d, e, f, a0) -> (a, b, c, d, e, f, b0) Source # (<$) :: a0 -> (a, b, c, d, e, f, b0) -> (a, b, c, d, e, f, a0) Source #
(Bifunctor p, Functor g) => Functor (Biff p f g a) |
Instance details Defined in Data.Bifunctor.Biff Methods fmap :: (a0 -> b) -> Biff p f g a a0 -> Biff p f g a b Source # (<$) :: a0 -> Biff p f g a b -> Biff p f g a a0 Source #

class IsString a where Source #

`IsString` is used in combination with the `-XOverloadedStrings` language extension to convert the literals to different string types.

For example, if you use the text package, you can say

    {-# LANGUAGE OverloadedStrings  #-}

    myText = "hello world" :: Text

Internally, the extension will convert this to the equivalent of

    myText = fromString @Text ("hello world" :: String)

Note: You can use `fromString` in normal code as well, but the usual performance/memory efficiency problems with `String` apply.

Methods

fromString :: String -> a Source #

#### Instances

Instances details

IsString Builder |
Instance details Defined in Data.ByteString.Builder Methods fromString :: String -> Builder Source #
IsString ByteString | Beware: `fromString` truncates multi-byte characters to octets. e.g. "枯朶に烏のとまりけり秋の暮" becomes �6k�nh~�Q��n�
Instance details Defined in Data.ByteString.Internal.Type Methods fromString :: String -> ByteString Source #
IsString ByteString | Beware: `fromString` truncates multi-byte characters to octets. e.g. "枯朶に烏のとまりけり秋の暮" becomes �6k�nh~�Q��n�
Instance details Defined in Data.ByteString.Lazy.Internal Methods fromString :: String -> ByteString Source #
IsString ShortByteString | Beware: `fromString` truncates multi-byte characters to octets. e.g. "枯朶に烏のとまりけり秋の暮" becomes �6k�nh~�Q��n�
Instance details Defined in Data.ByteString.Short.Internal Methods fromString :: String -> ShortByteString Source #

IsString Text

Performs replacement on invalid scalar values:

    >>> :set -XOverloadedStrings
    >>> "\55555" :: Text
    "\65533"

Instance details Defined in Data.Text Methods fromString :: String -> Text Source #

IsString Builder

Performs replacement on invalid scalar values:

    >>> :set -XOverloadedStrings
    >>> "\55555" :: Builder
    "\65533"

Instance details Defined in Data.Text.Internal.Builder Methods fromString :: String -> Builder Source #

IsString Text

Performs replacement on invalid scalar values:

    >>> :set -XOverloadedStrings
    >>> "\55555" :: Data.Text.Lazy.Text
    "\65533"

Instance details Defined in Data.Text.Lazy Methods fromString :: String -> Text Source #
a ~ Char => IsString (Seq a) | Since: containers-0.5.7
Instance details Defined in Data.Sequence.Internal Methods fromString :: String -> Seq a Source #
a ~ Char => IsString (DList a) |
Instance details Defined in Data.DList.Internal Methods fromString :: String -> DList a Source #
IsString a => IsString (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.String Methods fromString :: String -> Identity a Source #
(IsString a, Hashable a) => IsString (Hashed a) |
Instance details Defined in Data.Hashable.Class Methods fromString :: String -> Hashed a Source #
a ~ Char => IsString [a] | `(a ~ Char)` context was introduced in `4.9.0.0` Since: base-2.1
Instance details Defined in GHC.Internal.Data.String Methods fromString :: String -> [a] Source #
IsString a => IsString (Const a b) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.String Methods fromString :: String -> Const a b Source #
IsString a => IsString (Tagged s a) |
Instance details Defined in Data.Tagged Methods fromString :: String -> Tagged s a Source #

fromIntegral :: (Integral a, Num b) => a -> b Source #

General coercion from `Integral` types.

WARNING: This function performs silent truncation if the result type is not at least as big as the argument's type.

realToFrac :: (Real a, Fractional b) => a -> b Source #

General coercion to `Fractional` types.

WARNING: This function goes through the `Rational` type, which does not have values for `NaN` for example. This means it does not round-trip.

For `Double` it also behaves differently with or without -O0:

    Prelude> realToFrac nan -- With -O0
    -Infinity
    Prelude> realToFrac nan
    NaN

class (Real a, Enum a) => Integral a where Source #

Integral numbers, supporting integer division.

The Haskell Report defines no laws for `Integral`. However, `Integral` instances are customarily expected to define a Euclidean domain and have the following properties for the `div`/`mod` and `quot`/`rem` pairs, given suitable Euclidean functions `f` and `g`:

- `x` = `y * quot x y + rem x y` with `rem x y` = `fromInteger 0` or `g (rem x y)` < `g y`
- `x` = `y * div x y + mod x y` with `mod x y` = `fromInteger 0` or `f (mod x y)` < `f y`

An example of a suitable Euclidean function, for `Integer`'s instance, is `abs`.

In addition, `toInteger` should be total, and `fromInteger` should be a left inverse for it, i.e. `fromInteger (toInteger i) = i`.

Minimal complete definition

quotRem, toInteger

Methods

quot :: a -> a -> a infixl 7 Source #

Integer division truncated toward zero.

WARNING: This function is partial (because it throws when 0 is passed as the divisor) for all the integer types in `base`.

rem :: a -> a -> a infixl 7 Source #

Integer remainder, satisfying

    (x `quot` y)*y + (x `rem` y) == x

WARNING: This function is partial (because it throws when 0 is passed as the divisor) for all the integer types in `base`.

div :: a -> a -> a infixl 7 Source #

Integer division truncated toward negative infinity.

WARNING: This function is partial (because it throws when 0 is passed as the divisor) for all the integer types in `base`.

mod :: a -> a -> a infixl 7 Source #

Integer modulus, satisfying

    (x `div` y)*y + (x `mod` y) == x

WARNING: This function is partial (because it throws when 0 is passed as the divisor) for all the integer types in `base`.

quotRem :: a -> a -> (a, a) Source #

Simultaneous `quot` and `rem`.

WARNING: This function is partial (because it throws when 0 is passed as the divisor) for all the integer types in `base`.

divMod :: a -> a -> (a, a) Source #

simultaneous `div` and `mod`.

WARNING: This function is partial (because it throws when 0 is passed as the divisor) for all the integer types in `base`.

toInteger :: a -> Integer Source #

Conversion to `Integer`.

#### Instances

Instances details

Integral CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CBool -> CBool -> CBool Source # rem :: CBool -> CBool -> CBool Source # div :: CBool -> CBool -> CBool Source # mod :: CBool -> CBool -> CBool Source # quotRem :: CBool -> CBool -> (CBool, CBool) Source # divMod :: CBool -> CBool -> (CBool, CBool) Source # toInteger :: CBool -> Integer Source #
Integral CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CChar -> CChar -> CChar Source # rem :: CChar -> CChar -> CChar Source # div :: CChar -> CChar -> CChar Source # mod :: CChar -> CChar -> CChar Source # quotRem :: CChar -> CChar -> (CChar, CChar) Source # divMod :: CChar -> CChar -> (CChar, CChar) Source # toInteger :: CChar -> Integer Source #
Integral CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CInt -> CInt -> CInt Source # rem :: CInt -> CInt -> CInt Source # div :: CInt -> CInt -> CInt Source # mod :: CInt -> CInt -> CInt Source # quotRem :: CInt -> CInt -> (CInt, CInt) Source # divMod :: CInt -> CInt -> (CInt, CInt) Source # toInteger :: CInt -> Integer Source #
Integral CIntMax |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

quot :: CIntMax -> CIntMax -> CIntMax Source #

rem :: CIntMax -> CIntMax -> CIntMax Source #

div :: CIntMax -> CIntMax -> CIntMax Source #

mod :: CIntMax -> CIntMax -> CIntMax Source #

quotRem :: CIntMax -> CIntMax -> (CIntMax, CIntMax) Source #

divMod :: CIntMax -> CIntMax -> (CIntMax, CIntMax) Source #

toInteger :: CIntMax -> Integer Source #

Integral CIntPtr |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

quot :: CIntPtr -> CIntPtr -> CIntPtr Source #

rem :: CIntPtr -> CIntPtr -> CIntPtr Source #

div :: CIntPtr -> CIntPtr -> CIntPtr Source #

mod :: CIntPtr -> CIntPtr -> CIntPtr Source #

quotRem :: CIntPtr -> CIntPtr -> (CIntPtr, CIntPtr) Source #

divMod :: CIntPtr -> CIntPtr -> (CIntPtr, CIntPtr) Source #

toInteger :: CIntPtr -> Integer Source #

Integral CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CLLong -> CLLong -> CLLong Source # rem :: CLLong -> CLLong -> CLLong Source # div :: CLLong -> CLLong -> CLLong Source # mod :: CLLong -> CLLong -> CLLong Source # quotRem :: CLLong -> CLLong -> (CLLong, CLLong) Source # divMod :: CLLong -> CLLong -> (CLLong, CLLong) Source # toInteger :: CLLong -> Integer Source #
Integral CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CLong -> CLong -> CLong Source # rem :: CLong -> CLong -> CLong Source # div :: CLong -> CLong -> CLong Source # mod :: CLong -> CLong -> CLong Source # quotRem :: CLong -> CLong -> (CLong, CLong) Source # divMod :: CLong -> CLong -> (CLong, CLong) Source # toInteger :: CLong -> Integer Source #
Integral CPtrdiff |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

quot :: CPtrdiff -> CPtrdiff -> CPtrdiff Source #

rem :: CPtrdiff -> CPtrdiff -> CPtrdiff Source #

div :: CPtrdiff -> CPtrdiff -> CPtrdiff Source #

mod :: CPtrdiff -> CPtrdiff -> CPtrdiff Source #

quotRem :: CPtrdiff -> CPtrdiff -> (CPtrdiff, CPtrdiff) Source #

divMod :: CPtrdiff -> CPtrdiff -> (CPtrdiff, CPtrdiff) Source #

toInteger :: CPtrdiff -> Integer Source #

Integral CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CSChar -> CSChar -> CSChar Source # rem :: CSChar -> CSChar -> CSChar Source # div :: CSChar -> CSChar -> CSChar Source # mod :: CSChar -> CSChar -> CSChar Source # quotRem :: CSChar -> CSChar -> (CSChar, CSChar) Source # divMod :: CSChar -> CSChar -> (CSChar, CSChar) Source # toInteger :: CSChar -> Integer Source #
Integral CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CShort -> CShort -> CShort Source # rem :: CShort -> CShort -> CShort Source # div :: CShort -> CShort -> CShort Source # mod :: CShort -> CShort -> CShort Source # quotRem :: CShort -> CShort -> (CShort, CShort) Source # divMod :: CShort -> CShort -> (CShort, CShort) Source # toInteger :: CShort -> Integer Source #
Integral CSigAtomic |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

quot :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

rem :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

div :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

mod :: CSigAtomic -> CSigAtomic -> CSigAtomic Source #

quotRem :: CSigAtomic -> CSigAtomic -> (CSigAtomic, CSigAtomic) Source #

divMod :: CSigAtomic -> CSigAtomic -> (CSigAtomic, CSigAtomic) Source #

toInteger :: CSigAtomic -> Integer Source #

Integral CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CSize -> CSize -> CSize Source # rem :: CSize -> CSize -> CSize Source # div :: CSize -> CSize -> CSize Source # mod :: CSize -> CSize -> CSize Source # quotRem :: CSize -> CSize -> (CSize, CSize) Source # divMod :: CSize -> CSize -> (CSize, CSize) Source # toInteger :: CSize -> Integer Source #
Integral CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CUChar -> CUChar -> CUChar Source # rem :: CUChar -> CUChar -> CUChar Source # div :: CUChar -> CUChar -> CUChar Source # mod :: CUChar -> CUChar -> CUChar Source # quotRem :: CUChar -> CUChar -> (CUChar, CUChar) Source # divMod :: CUChar -> CUChar -> (CUChar, CUChar) Source # toInteger :: CUChar -> Integer Source #
Integral CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CUInt -> CUInt -> CUInt Source # rem :: CUInt -> CUInt -> CUInt Source # div :: CUInt -> CUInt -> CUInt Source # mod :: CUInt -> CUInt -> CUInt Source # quotRem :: CUInt -> CUInt -> (CUInt, CUInt) Source # divMod :: CUInt -> CUInt -> (CUInt, CUInt) Source # toInteger :: CUInt -> Integer Source #
Integral CUIntMax |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

quot :: CUIntMax -> CUIntMax -> CUIntMax Source #

rem :: CUIntMax -> CUIntMax -> CUIntMax Source #

div :: CUIntMax -> CUIntMax -> CUIntMax Source #

mod :: CUIntMax -> CUIntMax -> CUIntMax Source #

quotRem :: CUIntMax -> CUIntMax -> (CUIntMax, CUIntMax) Source #

divMod :: CUIntMax -> CUIntMax -> (CUIntMax, CUIntMax) Source #

toInteger :: CUIntMax -> Integer Source #

Integral CUIntPtr |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

quot :: CUIntPtr -> CUIntPtr -> CUIntPtr Source #

rem :: CUIntPtr -> CUIntPtr -> CUIntPtr Source #

div :: CUIntPtr -> CUIntPtr -> CUIntPtr Source #

mod :: CUIntPtr -> CUIntPtr -> CUIntPtr Source #

quotRem :: CUIntPtr -> CUIntPtr -> (CUIntPtr, CUIntPtr) Source #

divMod :: CUIntPtr -> CUIntPtr -> (CUIntPtr, CUIntPtr) Source #

toInteger :: CUIntPtr -> Integer Source #

Integral CULLong |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

quot :: CULLong -> CULLong -> CULLong Source #

rem :: CULLong -> CULLong -> CULLong Source #

div :: CULLong -> CULLong -> CULLong Source #

mod :: CULLong -> CULLong -> CULLong Source #

quotRem :: CULLong -> CULLong -> (CULLong, CULLong) Source #

divMod :: CULLong -> CULLong -> (CULLong, CULLong) Source #

toInteger :: CULLong -> Integer Source #

Integral CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CULong -> CULong -> CULong Source # rem :: CULong -> CULong -> CULong Source # div :: CULong -> CULong -> CULong Source # mod :: CULong -> CULong -> CULong Source # quotRem :: CULong -> CULong -> (CULong, CULong) Source # divMod :: CULong -> CULong -> (CULong, CULong) Source # toInteger :: CULong -> Integer Source #
Integral CUShort |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

quot :: CUShort -> CUShort -> CUShort Source #

rem :: CUShort -> CUShort -> CUShort Source #

div :: CUShort -> CUShort -> CUShort Source #

mod :: CUShort -> CUShort -> CUShort Source #

quotRem :: CUShort -> CUShort -> (CUShort, CUShort) Source #

divMod :: CUShort -> CUShort -> (CUShort, CUShort) Source #

toInteger :: CUShort -> Integer Source #

Integral CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods quot :: CWchar -> CWchar -> CWchar Source # rem :: CWchar -> CWchar -> CWchar Source # div :: CWchar -> CWchar -> CWchar Source # mod :: CWchar -> CWchar -> CWchar Source # quotRem :: CWchar -> CWchar -> (CWchar, CWchar) Source # divMod :: CWchar -> CWchar -> (CWchar, CWchar) Source # toInteger :: CWchar -> Integer Source #
Integral Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods quot :: Int16 -> Int16 -> Int16 Source # rem :: Int16 -> Int16 -> Int16 Source # div :: Int16 -> Int16 -> Int16 Source # mod :: Int16 -> Int16 -> Int16 Source # quotRem :: Int16 -> Int16 -> (Int16, Int16) Source # divMod :: Int16 -> Int16 -> (Int16, Int16) Source # toInteger :: Int16 -> Integer Source #
Integral Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods quot :: Int32 -> Int32 -> Int32 Source # rem :: Int32 -> Int32 -> Int32 Source # div :: Int32 -> Int32 -> Int32 Source # mod :: Int32 -> Int32 -> Int32 Source # quotRem :: Int32 -> Int32 -> (Int32, Int32) Source # divMod :: Int32 -> Int32 -> (Int32, Int32) Source # toInteger :: Int32 -> Integer Source #
Integral Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods quot :: Int64 -> Int64 -> Int64 Source # rem :: Int64 -> Int64 -> Int64 Source # div :: Int64 -> Int64 -> Int64 Source # mod :: Int64 -> Int64 -> Int64 Source # quotRem :: Int64 -> Int64 -> (Int64, Int64) Source # divMod :: Int64 -> Int64 -> (Int64, Int64) Source # toInteger :: Int64 -> Integer Source #
Integral Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods quot :: Int8 -> Int8 -> Int8 Source # rem :: Int8 -> Int8 -> Int8 Source # div :: Int8 -> Int8 -> Int8 Source # mod :: Int8 -> Int8 -> Int8 Source # quotRem :: Int8 -> Int8 -> (Int8, Int8) Source # divMod :: Int8 -> Int8 -> (Int8, Int8) Source # toInteger :: Int8 -> Integer Source #
Integral Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods quot :: Word16 -> Word16 -> Word16 Source # rem :: Word16 -> Word16 -> Word16 Source # div :: Word16 -> Word16 -> Word16 Source # mod :: Word16 -> Word16 -> Word16 Source # quotRem :: Word16 -> Word16 -> (Word16, Word16) Source # divMod :: Word16 -> Word16 -> (Word16, Word16) Source # toInteger :: Word16 -> Integer Source #
Integral Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods quot :: Word32 -> Word32 -> Word32 Source # rem :: Word32 -> Word32 -> Word32 Source # div :: Word32 -> Word32 -> Word32 Source # mod :: Word32 -> Word32 -> Word32 Source # quotRem :: Word32 -> Word32 -> (Word32, Word32) Source # divMod :: Word32 -> Word32 -> (Word32, Word32) Source # toInteger :: Word32 -> Integer Source #
Integral Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods quot :: Word64 -> Word64 -> Word64 Source # rem :: Word64 -> Word64 -> Word64 Source # div :: Word64 -> Word64 -> Word64 Source # mod :: Word64 -> Word64 -> Word64 Source # quotRem :: Word64 -> Word64 -> (Word64, Word64) Source # divMod :: Word64 -> Word64 -> (Word64, Word64) Source # toInteger :: Word64 -> Integer Source #
Integral Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods quot :: Word8 -> Word8 -> Word8 Source # rem :: Word8 -> Word8 -> Word8 Source # div :: Word8 -> Word8 -> Word8 Source # mod :: Word8 -> Word8 -> Word8 Source # quotRem :: Word8 -> Word8 -> (Word8, Word8) Source # divMod :: Word8 -> Word8 -> (Word8, Word8) Source # toInteger :: Word8 -> Integer Source #
Integral I8 |
Instance details Defined in Data.Text.Foreign Methods quot :: I8 -> I8 -> I8 Source # rem :: I8 -> I8 -> I8 Source # div :: I8 -> I8 -> I8 Source # mod :: I8 -> I8 -> I8 Source # quotRem :: I8 -> I8 -> (I8, I8) Source # divMod :: I8 -> I8 -> (I8, I8) Source # toInteger :: I8 -> Integer Source #
Integral Integer | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods quot :: Integer -> Integer -> Integer Source # rem :: Integer -> Integer -> Integer Source # div :: Integer -> Integer -> Integer Source # mod :: Integer -> Integer -> Integer Source # quotRem :: Integer -> Integer -> (Integer, Integer) Source # divMod :: Integer -> Integer -> (Integer, Integer) Source # toInteger :: Integer -> Integer Source #
Integral Natural | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Real Methods quot :: Natural -> Natural -> Natural Source # rem :: Natural -> Natural -> Natural Source # div :: Natural -> Natural -> Natural Source # mod :: Natural -> Natural -> Natural Source # quotRem :: Natural -> Natural -> (Natural, Natural) Source # divMod :: Natural -> Natural -> (Natural, Natural) Source # toInteger :: Natural -> Integer Source #
Integral Int | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods quot :: Int -> Int -> Int Source # rem :: Int -> Int -> Int Source # div :: Int -> Int -> Int Source # mod :: Int -> Int -> Int Source # quotRem :: Int -> Int -> (Int, Int) Source # divMod :: Int -> Int -> (Int, Int) Source # toInteger :: Int -> Integer Source #
Integral Word | Since: base-2.1
Instance details Defined in GHC.Internal.Real Methods quot :: Word -> Word -> Word Source # rem :: Word -> Word -> Word Source # div :: Word -> Word -> Word Source # mod :: Word -> Word -> Word Source # quotRem :: Word -> Word -> (Word, Word) Source # divMod :: Word -> Word -> (Word, Word) Source # toInteger :: Word -> Integer Source #
Integral a => Integral (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

quot :: Identity a -> Identity a -> Identity a Source #

rem :: Identity a -> Identity a -> Identity a Source #

div :: Identity a -> Identity a -> Identity a Source #

mod :: Identity a -> Identity a -> Identity a Source #

quotRem :: Identity a -> Identity a -> (Identity a, Identity a) Source #

divMod :: Identity a -> Identity a -> (Identity a, Identity a) Source #

toInteger :: Identity a -> Integer Source #

Integral a => Integral (Tagged s a) |

Instance details

Defined in Data.Tagged

Methods

quot :: Tagged s a -> Tagged s a -> Tagged s a Source #

rem :: Tagged s a -> Tagged s a -> Tagged s a Source #

div :: Tagged s a -> Tagged s a -> Tagged s a Source #

mod :: Tagged s a -> Tagged s a -> Tagged s a Source #

quotRem :: Tagged s a -> Tagged s a -> (Tagged s a, Tagged s a) Source #

divMod :: Tagged s a -> Tagged s a -> (Tagged s a, Tagged s a) Source #

toInteger :: Tagged s a -> Integer Source #

Integral (f (g a)) => Integral (Compose f g a) | Since: base-4.19.0.0

Instance details

Defined in Data.Functor.Compose

Methods

quot :: Compose f g a -> Compose f g a -> Compose f g a Source #

rem :: Compose f g a -> Compose f g a -> Compose f g a Source #

div :: Compose f g a -> Compose f g a -> Compose f g a Source #

mod :: Compose f g a -> Compose f g a -> Compose f g a Source #

quotRem :: Compose f g a -> Compose f g a -> (Compose f g a, Compose f g a) Source #

divMod :: Compose f g a -> Compose f g a -> (Compose f g a, Compose f g a) Source #

toInteger :: Compose f g a -> Integer Source #

class (Num a, Ord a) => Real a where Source #

Real numbers.

The Haskell report defines no laws for `Real`, however `Real` instances are customarily expected to adhere to the following law:

Coherence with `fromRational`
  if the type also implements `Fractional`, then `fromRational` is a left inverse for `toRational`, i.e. `fromRational (toRational i) = i`

The law does not hold for `Float`, `Double`, `CFloat`, `CDouble`, etc., because these types contain non-finite values, which cannot be roundtripped through `Rational`.

Methods

toRational :: a -> Rational Source #

Rational equivalent of its real argument with full precision.

#### Instances

Instances details

Real CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CBool -> Rational Source #
Real CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CChar -> Rational Source #
Real CClock |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CClock -> Rational Source #
Real CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CDouble -> Rational Source #
Real CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CFloat -> Rational Source #
Real CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CInt -> Rational Source #
Real CIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CIntMax -> Rational Source #
Real CIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CIntPtr -> Rational Source #
Real CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CLLong -> Rational Source #
Real CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CLong -> Rational Source #
Real CPtrdiff |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CPtrdiff -> Rational Source #
Real CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CSChar -> Rational Source #
Real CSUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CSUSeconds -> Rational Source #
Real CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CShort -> Rational Source #
Real CSigAtomic |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CSigAtomic -> Rational Source #
Real CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CSize -> Rational Source #
Real CTime |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CTime -> Rational Source #
Real CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CUChar -> Rational Source #
Real CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CUInt -> Rational Source #
Real CUIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CUIntMax -> Rational Source #
Real CUIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CUIntPtr -> Rational Source #
Real CULLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CULLong -> Rational Source #
Real CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CULong -> Rational Source #
Real CUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CUSeconds -> Rational Source #
Real CUShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CUShort -> Rational Source #
Real CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods toRational :: CWchar -> Rational Source #
Real Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods toRational :: Int16 -> Rational Source #
Real Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods toRational :: Int32 -> Rational Source #
Real Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods toRational :: Int64 -> Rational Source #
Real Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods toRational :: Int8 -> Rational Source #
Real Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods toRational :: Word16 -> Rational Source #
Real Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods toRational :: Word32 -> Rational Source #
Real Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods toRational :: Word64 -> Rational Source #
Real Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods toRational :: Word8 -> Rational Source #
Real I8 |
Instance details Defined in Data.Text.Foreign Methods toRational :: I8 -> Rational Source #
Real DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods toRational :: DiffTime -> Rational Source #
Real Integer | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods toRational :: Integer -> Rational Source #
Real Natural | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Real Methods toRational :: Natural -> Rational Source #

Real Double

Beware that `toRational` generates garbage for non-finite arguments:

    >>> toRational (1/0)
    179769313 (and 300 more digits...) % 1
    >>> toRational (0/0)
    269653970 (and 300 more digits...) % 1

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods toRational :: Double -> Rational Source #

Real Float

Beware that `toRational` generates garbage for non-finite arguments:

    >>> toRational (1/0 :: Float)
    340282366920938463463374607431768211456 % 1
    >>> toRational (0/0 :: Float)
    510423550381407695195061911147652317184 % 1

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods toRational :: Float -> Rational Source #
Real Int | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods toRational :: Int -> Rational Source #
Real Word | Since: base-2.1
Instance details Defined in GHC.Internal.Real Methods toRational :: Word -> Rational Source #
Real a => Real (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods toRational :: Identity a -> Rational Source #
Real a => Real (Down a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods toRational :: Down a -> Rational Source #
Integral a => Real (Ratio a) | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods toRational :: Ratio a -> Rational Source #
HasResolution a => Real (Fixed a) | Since: base-2.1
Instance details Defined in Data.Fixed Methods toRational :: Fixed a -> Rational Source #
Real a => Real (Tagged s a) |
Instance details Defined in Data.Tagged Methods toRational :: Tagged s a -> Rational Source #
Real (f (g a)) => Real (Compose f g a) | Since: base-4.19.0.0
Instance details Defined in Data.Functor.Compose Methods toRational :: Compose f g a -> Rational Source #

class Semigroup a => Monoid a where Source #

The class of monoids (types with an associative binary operation that has an identity). Instances should satisfy the following:

Right identity
  `x `<>` `mempty` = x`
Left identity
  ``mempty` `<>` x = x`
Associativity
  `x `<>` (y `<>` z) = (x `<>` y) `<>` z` (`Semigroup` law)
Concatenation
  ``mconcat` = `foldr` (`<>`) `mempty``

You can alternatively define `mconcat` instead of `mempty`, in which case the laws are:

Unit
  ``mconcat` (`pure` x) = x`
Multiplication
  ``mconcat` (`join` xss) = `mconcat` (`fmap` `mconcat` xss)`
Subclass
  ``mconcat` (`toList` xs) = `sconcat` xs`

The method names refer to the monoid of lists under concatenation, but there are many other instances.

Some types can be viewed as a monoid in more than one way, e.g. both addition and multiplication on numbers. In such cases we often define `newtype`s and make those instances of `Monoid`, e.g. `Sum` and `Product`.

NOTE: `Semigroup` is a superclass of `Monoid` since base-4.11.0.0.

Minimal complete definition

mempty | mconcat

Methods

mempty :: a Source #

Identity of `mappend`

#### Examples

Expand

    >>> "Hello world" <> mempty
    "Hello world"

    >>> mempty <> [1, 2, 3]
    [1,2,3]

mappend :: a -> a -> a Source #

An associative operation

NOTE: This method is redundant and has the default implementation ``mappend` = (`<>`)` since base-4.11.0.0. Should it be implemented manually, since `mappend` is a synonym for (`<>`), it is expected that the two functions are defined the same way. In a future GHC release `mappend` will be removed from `Monoid`.

mconcat :: [a] -> a Source #

Fold a list using the monoid.

For most types, the default definition for `mconcat` will be used, but the function is included in the class definition so that an optimized version can be provided for specific types.

    >>> mconcat ["Hello", " ", "Haskell", "!"]
    "Hello Haskell!"

#### Instances

Instances details

Monoid ByteArray | Since: base-4.17.0.0
Instance details Defined in Data.Array.Byte Methods mempty :: ByteArray Source # mappend :: ByteArray -> ByteArray -> ByteArray Source # mconcat :: [ByteArray] -> ByteArray Source #
Monoid Builder |
Instance details Defined in Data.ByteString.Builder.Internal Methods mempty :: Builder Source # mappend :: Builder -> Builder -> Builder Source # mconcat :: [Builder] -> Builder Source #
Monoid ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods mempty :: ByteString Source # mappend :: ByteString -> ByteString -> ByteString Source # mconcat :: [ByteString] -> ByteString Source #
Monoid ByteString |
Instance details Defined in Data.ByteString.Lazy.Internal Methods mempty :: ByteString Source # mappend :: ByteString -> ByteString -> ByteString Source # mconcat :: [ByteString] -> ByteString Source #
Monoid ShortByteString |
Instance details Defined in Data.ByteString.Short.Internal Methods mempty :: ShortByteString Source # mappend :: ShortByteString -> ShortByteString -> ShortByteString Source # mconcat :: [ShortByteString] -> ShortByteString Source #
Monoid IntSet |
Instance details Defined in Data.IntSet.Internal Methods mempty :: IntSet Source # mappend :: IntSet -> IntSet -> IntSet Source # mconcat :: [IntSet] -> IntSet Source #
Monoid ExceptionContext |
Instance details Defined in GHC.Internal.Exception.Context Methods mempty :: ExceptionContext Source # mappend :: ExceptionContext -> ExceptionContext -> ExceptionContext Source # mconcat :: [ExceptionContext] -> ExceptionContext Source #
Monoid Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: Ordering Source # mappend :: Ordering -> Ordering -> Ordering Source # mconcat :: [Ordering] -> Ordering Source #
Monoid Text |
Instance details Defined in Data.Text Methods mempty :: Text Source # mappend :: Text -> Text -> Text Source # mconcat :: [Text] -> Text Source #
Monoid Builder |
Instance details Defined in Data.Text.Internal.Builder Methods mempty :: Builder Source # mappend :: Builder -> Builder -> Builder Source # mconcat :: [Builder] -> Builder Source #
Monoid Text |
Instance details Defined in Data.Text.Lazy Methods mempty :: Text Source # mappend :: Text -> Text -> Text Source # mconcat :: [Text] -> Text Source #
Monoid StrictTextBuilder |
Instance details Defined in Data.Text.Internal.StrictBuilder Methods mempty :: StrictTextBuilder Source # mappend :: StrictTextBuilder -> StrictTextBuilder -> StrictTextBuilder Source # mconcat :: [StrictTextBuilder] -> StrictTextBuilder Source #
Monoid () | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: () Source # mappend :: () -> () -> () Source # mconcat :: [()] -> () Source #
(Semigroup a, Monoid a) => Monoid (Concurrently a) | Since: async-2.1.0
Instance details Defined in Control.Concurrent.Async.Internal Methods mempty :: Concurrently a Source # mappend :: Concurrently a -> Concurrently a -> Concurrently a Source # mconcat :: [Concurrently a] -> Concurrently a Source #

Monoid (Comparison a)

``mempty`` on comparisons always returns `EQ`. Without newtypes this equals ``pure` (`pure` EQ)`.

    mempty :: Comparison a
    mempty = Comparison _ _ -> EQ

Instance details Defined in Data.Functor.Contravariant Methods mempty :: Comparison a Source # mappend :: Comparison a -> Comparison a -> Comparison a Source # mconcat :: [Comparison a] -> Comparison a Source #

Monoid (Equivalence a)

``mempty`` on equivalences always returns `True`. Without newtypes this equals ``pure` (`pure` True)`.

    mempty :: Equivalence a
    mempty = Equivalence _ _ -> True

Instance details Defined in Data.Functor.Contravariant Methods mempty :: Equivalence a Source # mappend :: Equivalence a -> Equivalence a -> Equivalence a Source # mconcat :: [Equivalence a] -> Equivalence a Source #

Monoid (Predicate a)

``mempty`` on predicates always returns `True`. Without newtypes this equals ``pure` True`.

    mempty :: Predicate a
    mempty = _ -> True

Instance details Defined in Data.Functor.Contravariant Methods mempty :: Predicate a Source # mappend :: Predicate a -> Predicate a -> Predicate a Source # mconcat :: [Predicate a] -> Predicate a Source #
(Ord a, Bounded a) => Monoid (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods mempty :: Max a Source # mappend :: Max a -> Max a -> Max a Source # mconcat :: [Max a] -> Max a Source #
(Ord a, Bounded a) => Monoid (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods mempty :: Min a Source # mappend :: Min a -> Min a -> Min a Source # mconcat :: [Min a] -> Min a Source #
Monoid m => Monoid (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods mempty :: WrappedMonoid m Source # mappend :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Source # mconcat :: [WrappedMonoid m] -> WrappedMonoid m Source #
Monoid (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods mempty :: IntMap a Source # mappend :: IntMap a -> IntMap a -> IntMap a Source # mconcat :: [IntMap a] -> IntMap a Source #
Monoid (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods mempty :: Seq a Source # mappend :: Seq a -> Seq a -> Seq a Source # mconcat :: [Seq a] -> Seq a Source #
Monoid (MergeSet a) |
Instance details Defined in Data.Set.Internal Methods mempty :: MergeSet a Source # mappend :: MergeSet a -> MergeSet a -> MergeSet a Source # mconcat :: [MergeSet a] -> MergeSet a Source #
Ord a => Monoid (Set a) |
Instance details Defined in Data.Set.Internal Methods mempty :: Set a Source # mappend :: Set a -> Set a -> Set a Source # mconcat :: [Set a] -> Set a Source #
Monoid (DList a) |
Instance details Defined in Data.DList.Internal Methods mempty :: DList a Source # mappend :: DList a -> DList a -> DList a Source # mconcat :: [DList a] -> DList a Source #
Monoid a => Monoid (STM a) | Since: base-4.17.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods mempty :: STM a Source # mappend :: STM a -> STM a -> STM a Source # mconcat :: [STM a] -> STM a Source #
Monoid a => Monoid (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods mempty :: Identity a Source # mappend :: Identity a -> Identity a -> Identity a Source # mconcat :: [Identity a] -> Identity a Source #
Monoid a => Monoid (Down a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods mempty :: Down a Source # mappend :: Down a -> Down a -> Down a Source # mconcat :: [Down a] -> Down a Source #
(Generic a, Monoid (Rep a ())) => Monoid (Generically a) | Since: base-4.17.0.0
Instance details Defined in GHC.Internal.Generics Methods mempty :: Generically a Source # mappend :: Generically a -> Generically a -> Generically a Source # mconcat :: [Generically a] -> Generically a Source #
Monoid p => Monoid (Par1 p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods mempty :: Par1 p Source # mappend :: Par1 p -> Par1 p -> Par1 p Source # mconcat :: [Par1 p] -> Par1 p Source #
Monoid a => Monoid (IO a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods mempty :: IO a Source # mappend :: IO a -> IO a -> IO a Source # mconcat :: [IO a] -> IO a Source #
Monoid (Array a) |
Instance details Defined in Data.Primitive.Array Methods mempty :: Array a Source # mappend :: Array a -> Array a -> Array a Source # mconcat :: [Array a] -> Array a Source #
Monoid (PrimArray a) | Since: primitive-0.6.4.0
Instance details Defined in Data.Primitive.PrimArray Methods mempty :: PrimArray a Source # mappend :: PrimArray a -> PrimArray a -> PrimArray a Source # mconcat :: [PrimArray a] -> PrimArray a Source #
Monoid (SmallArray a) |
Instance details Defined in Data.Primitive.SmallArray Methods mempty :: SmallArray a Source # mappend :: SmallArray a -> SmallArray a -> SmallArray a Source # mconcat :: [SmallArray a] -> SmallArray a Source #
Monoid (Validity k) |
Instance details Defined in Data.HashMap.Internal.Debug Methods mempty :: Validity k Source # mappend :: Validity k -> Validity k -> Validity k Source # mconcat :: [Validity k] -> Validity k Source #

(Hashable a, Eq a) => Monoid (HashSet a)

`mempty` = `empty`

`mappend` = `union`

\(O(n+m)\)

To obtain good performance, the smaller set must be presented as the first argument.

#### Examples

Expand

    >>> mappend (fromList [1,2]) (fromList [2,3])
    fromList [1,2,3]

Instance details Defined in Data.HashSet.Internal Methods mempty :: HashSet a Source # mappend :: HashSet a -> HashSet a -> HashSet a Source # mconcat :: [HashSet a] -> HashSet a Source #
Monoid (Vector a) |
Instance details Defined in Data.Vector Methods mempty :: Vector a Source # mappend :: Vector a -> Vector a -> Vector a Source # mconcat :: [Vector a] -> Vector a Source #
Prim a => Monoid (Vector a) |
Instance details Defined in Data.Vector.Primitive Methods mempty :: Vector a Source # mappend :: Vector a -> Vector a -> Vector a Source # mconcat :: [Vector a] -> Vector a Source #
Storable a => Monoid (Vector a) |
Instance details Defined in Data.Vector.Storable Methods mempty :: Vector a Source # mappend :: Vector a -> Vector a -> Vector a Source # mconcat :: [Vector a] -> Vector a Source #
Monoid (Vector a) |
Instance details Defined in Data.Vector.Strict Methods mempty :: Vector a Source # mappend :: Vector a -> Vector a -> Vector a Source # mconcat :: [Vector a] -> Vector a Source #
Unbox a => Monoid (Vector a) |
Instance details Defined in Data.Vector.Unboxed Methods mempty :: Vector a Source # mappend :: Vector a -> Vector a -> Vector a Source # mconcat :: [Vector a] -> Vector a Source #
Semigroup a => Monoid (Maybe a) | Lift a semigroup into `Maybe` forming a `Monoid` according to http://en.wikipedia.org/wiki/Monoid: "Any semigroup `S` may be turned into a monoid simply by adjoining an element `e` not in `S` and defining `e*e = e` and `e*s = s = s*e` for all `s ∈ S`." Since 4.11.0: constraint on inner `a` value generalised from `Monoid` to `Semigroup`. Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: Maybe a Source # mappend :: Maybe a -> Maybe a -> Maybe a Source # mconcat :: [Maybe a] -> Maybe a Source #
Monoid a => Monoid (Solo a) | Since: base-4.15
Instance details Defined in GHC.Internal.Base Methods mempty :: Solo a Source # mappend :: Solo a -> Solo a -> Solo a Source # mconcat :: [Solo a] -> Solo a Source #
Monoid [a] | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: [a] Source # mappend :: [a] -> [a] -> [a] Source # mconcat :: [[a]] -> [a] Source #
(Semigroup a, Monoid a) => Monoid (ConcurrentlyE e a) |
Instance details Defined in Control.Concurrent.Async.Internal Methods mempty :: ConcurrentlyE e a Source # mappend :: ConcurrentlyE e a -> ConcurrentlyE e a -> ConcurrentlyE e a Source # mconcat :: [ConcurrentlyE e a] -> ConcurrentlyE e a Source #

Monoid a => Monoid (Op a b)

``mempty` @(Op a b)` without newtypes is `mempty @(b->a)` = `_ -> mempty`.

    mempty :: Op a b
    mempty = Op _ -> mempty

Instance details Defined in Data.Functor.Contravariant Methods mempty :: Op a b Source # mappend :: Op a b -> Op a b -> Op a b Source # mconcat :: [Op a b] -> Op a b Source #
Ord k => Monoid (Map k v) |
Instance details Defined in Data.Map.Internal Methods mempty :: Map k v Source # mappend :: Map k v -> Map k v -> Map k v Source # mconcat :: [Map k v] -> Map k v Source #
Monoid (U1 p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods mempty :: U1 p Source # mappend :: U1 p -> U1 p -> U1 p Source # mconcat :: [U1 p] -> U1 p Source #
Monoid a => Monoid (ST s a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.ST Methods mempty :: ST s a Source # mappend :: ST s a -> ST s a -> ST s a Source # mconcat :: [ST s a] -> ST s a Source #
(Monoid a, MonadUnliftIO m) => Monoid (Conc m a) | Since: unliftio-0.2.9.0
Instance details Defined in UnliftIO.Internals.Async Methods mempty :: Conc m a Source # mappend :: Conc m a -> Conc m a -> Conc m a Source # mconcat :: [Conc m a] -> Conc m a Source #
(Semigroup a, Monoid a, MonadUnliftIO m) => Monoid (Concurrently m a) | Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Internals.Async Methods mempty :: Concurrently m a Source # mappend :: Concurrently m a -> Concurrently m a -> Concurrently m a Source # mconcat :: [Concurrently m a] -> Concurrently m a Source #

(Eq k, Hashable k) => Monoid (HashMap k v)

`mempty` = `empty`

`mappend` = `union`

If a key occurs in both maps, the mapping from the first will be the mapping in the result.

#### Examples

Expand

    >>> mappend (fromList [(1,'a'),(2,'b')]) (fromList [(2,'c'),(3,'d')])
    fromList [(1,'a'),(2,'b'),(3,'d')]

Instance details Defined in Data.HashMap.Internal Methods mempty :: HashMap k v Source # mappend :: HashMap k v -> HashMap k v -> HashMap k v Source # mconcat :: [HashMap k v] -> HashMap k v Source #
(Monoid a, Monoid b) => Monoid (a, b) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: (a, b) Source # mappend :: (a, b) -> (a, b) -> (a, b) Source # mconcat :: [(a, b)] -> (a, b) Source #
Monoid b => Monoid (a -> b) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: a -> b Source # mappend :: (a -> b) -> (a -> b) -> a -> b Source # mconcat :: [a -> b] -> a -> b Source #
(Biapplicative bi, Monoid a, Monoid b) => Monoid (Biap bi a b) |
Instance details Defined in Data.Bifunctor.Biap Methods mempty :: Biap bi a b Source # mappend :: Biap bi a b -> Biap bi a b -> Biap bi a b Source # mconcat :: [Biap bi a b] -> Biap bi a b Source #
Monoid (f p) => Monoid (Rec1 f p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods mempty :: Rec1 f p Source # mappend :: Rec1 f p -> Rec1 f p -> Rec1 f p Source # mconcat :: [Rec1 f p] -> Rec1 f p Source #
(Semigroup a, Monoid a) => Monoid (Tagged s a) |
Instance details Defined in Data.Tagged Methods mempty :: Tagged s a Source # mappend :: Tagged s a -> Tagged s a -> Tagged s a Source # mconcat :: [Tagged s a] -> Tagged s a Source #
Monoid a => Monoid (Constant a b) |
Instance details Defined in Data.Functor.Constant Methods mempty :: Constant a b Source # mappend :: Constant a b -> Constant a b -> Constant a b Source # mconcat :: [Constant a b] -> Constant a b Source #
(Monoid a, Monoid b, Monoid c) => Monoid (a, b, c) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: (a, b, c) Source # mappend :: (a, b, c) -> (a, b, c) -> (a, b, c) Source # mconcat :: [(a, b, c)] -> (a, b, c) Source #
(Monoid (f a), Monoid (g a)) => Monoid (Product f g a) | Since: base-4.16.0.0
Instance details Defined in Data.Functor.Product Methods mempty :: Product f g a Source # mappend :: Product f g a -> Product f g a -> Product f g a Source # mconcat :: [Product f g a] -> Product f g a Source #
(Monoid (f p), Monoid (g p)) => Monoid ((f :*: g) p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods mempty :: (f :*: g) p Source # mappend :: (f :*: g) p -> (f :*: g) p -> (f :*: g) p Source # mconcat :: [(f :*: g) p] -> (f :*: g) p Source #
Monoid c => Monoid (K1 i c p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods mempty :: K1 i c p Source # mappend :: K1 i c p -> K1 i c p -> K1 i c p Source # mconcat :: [K1 i c p] -> K1 i c p Source #
(Monoid a, Monoid b, Monoid c, Monoid d) => Monoid (a, b, c, d) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: (a, b, c, d) Source # mappend :: (a, b, c, d) -> (a, b, c, d) -> (a, b, c, d) Source # mconcat :: [(a, b, c, d)] -> (a, b, c, d) Source #
Monoid (f (g a)) => Monoid (Compose f g a) | Since: base-4.16.0.0
Instance details Defined in Data.Functor.Compose Methods mempty :: Compose f g a Source # mappend :: Compose f g a -> Compose f g a -> Compose f g a Source # mconcat :: [Compose f g a] -> Compose f g a Source #
Monoid (f (g p)) => Monoid ((f :.: g) p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods mempty :: (f :.: g) p Source # mappend :: (f :.: g) p -> (f :.: g) p -> (f :.: g) p Source # mconcat :: [(f :.: g) p] -> (f :.: g) p Source #
Monoid (f p) => Monoid (M1 i c f p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods mempty :: M1 i c f p Source # mappend :: M1 i c f p -> M1 i c f p -> M1 i c f p Source # mconcat :: [M1 i c f p] -> M1 i c f p Source #
(Monoid a, Monoid b, Monoid c, Monoid d, Monoid e) => Monoid (a, b, c, d, e) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mempty :: (a, b, c, d, e) Source # mappend :: (a, b, c, d, e) -> (a, b, c, d, e) -> (a, b, c, d, e) Source # mconcat :: [(a, b, c, d, e)] -> (a, b, c, d, e) Source #

class Functor f => Applicative (f :: Type -> Type) where Source #

A functor with application, providing operations to

- embed pure expressions (`pure`), and
- sequence computations and combine their results (`<*>` and `liftA2`).

A minimal complete definition must include implementations of `pure` and of either `<*>` or `liftA2`. If it defines both, then they must behave the same as their default definitions:

    (<*>) = liftA2 id

    liftA2 f x y = f <$> x <*> y

Further, any definition must satisfy the following:

Identity

      pure id <*> v = v

Composition

      pure (.) <*> u <*> v <*> w = u <*> (v <*> w)

Homomorphism

      pure f <*> pure x = pure (f x)

Interchange

      u <*> pure y = pure ($ y) <*> u

The other methods have the following default definitions, which may be overridden with equivalent specialized implementations:

-     u *> v = (id <$ u) <*> v

-     u <* v = liftA2 const u v

As a consequence of these laws, the `Functor` instance for `f` will satisfy

-     fmap f x = pure f <*> x

It may be useful to note that supposing

    forall x y. p (q x y) = f x . g y

it follows from the above that

    liftA2 p (liftA2 q u v) = liftA2 f u . liftA2 g v

If `f` is also a `Monad`, it should satisfy

-     pure = return

-     m1 <*> m2 = m1 >>= (\x1 -> m2 >>= (\x2 -> return (x1 x2)))

-     (*>) = (>>)

(which implies that `pure` and `<*>` satisfy the applicative functor laws).

Minimal complete definition

pure, ((<*>) | liftA2)

Methods

pure :: a -> f a Source #

Lift a value into the Structure.

#### Examples

Expand

    >>> pure 1 :: Maybe Int
    Just 1

    >>> pure 'z' :: [Char]
    "z"

    >>> pure (pure ":D") :: Maybe [String]
    Just [":D"]

(<*>) :: f (a -> b) -> f a -> f b infixl 4 Source #

Sequential application.

A few functors support an implementation of `<*>` that is more efficient than the default one.

#### Example

Expand

Used in combination with ``(<$>)``, ``(<*>)`` can be used to build a record.

    >>> data MyState = MyState {arg1 :: Foo, arg2 :: Bar, arg3 :: Baz}

    >>> produceFoo :: Applicative f => f Foo
    >>> produceBar :: Applicative f => f Bar
    >>> produceBaz :: Applicative f => f Baz

    >>> mkState :: Applicative f => f MyState
    >>> mkState = MyState <$> produceFoo <*> produceBar <*> produceBaz

liftA2 :: (a -> b -> c) -> f a -> f b -> f c Source #

Lift a binary function to actions.

Some functors support an implementation of `liftA2` that is more efficient than the default one. In particular, if `fmap` is an expensive operation, it is likely better to use `liftA2` than to `fmap` over the structure and then use `<*>`.

This became a typeclass method in 4.10.0.0. Prior to that, it was a function defined in terms of `<*>` and `fmap`.

#### Example

Expand

    >>> liftA2 (,) (Just 3) (Just 5)
    Just (3,5)

    >>> liftA2 (+) [1, 2, 3] [4, 5, 6]
    [5,6,7,6,7,8,7,8,9]

(*>) :: f a -> f b -> f b infixl 4 Source #

Sequence actions, discarding the value of the first argument.

#### Examples

Expand

If used in conjunction with the Applicative instance for `Maybe`, you can chain Maybe computations, with a possible "early return" in case of `Nothing`.

    >>> Just 2 *> Just 3
    Just 3

    >>> Nothing *> Just 3
    Nothing

Of course a more interesting use case would be to have effectful computations instead of just returning pure values.

    >>> import Data.Char
    >>> import GHC.Internal.Text.ParserCombinators.ReadP
    >>> let p = string "my name is " *> munch1 isAlpha <* eof
    >>> readP_to_S p "my name is Simon"
    [("Simon","")]

(<*) :: f a -> f b -> f a infixl 4 Source #

Sequence actions, discarding the value of the second argument.

#### Instances

Instances details

Applicative Concurrently |

Instance details

Defined in Control.Concurrent.Async.Internal

Methods

pure :: a -> Concurrently a Source #

(<*>) :: Concurrently (a -> b) -> Concurrently a -> Concurrently b Source #

liftA2 :: (a -> b -> c) -> Concurrently a -> Concurrently b -> Concurrently c Source #

(*>) :: Concurrently a -> Concurrently b -> Concurrently b Source #

(<*) :: Concurrently a -> Concurrently b -> Concurrently a Source #

Applicative Complex | Since: base-4.9.0.0
Instance details Defined in Data.Complex Methods pure :: a -> Complex a Source # (<*>) :: Complex (a -> b) -> Complex a -> Complex b Source # liftA2 :: (a -> b -> c) -> Complex a -> Complex b -> Complex c Source # (*>) :: Complex a -> Complex b -> Complex b Source # (<*) :: Complex a -> Complex b -> Complex a Source #
Applicative First | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods pure :: a -> First a Source # (<*>) :: First (a -> b) -> First a -> First b Source # liftA2 :: (a -> b -> c) -> First a -> First b -> First c Source # (*>) :: First a -> First b -> First b Source # (<*) :: First a -> First b -> First a Source #
Applicative Last | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods pure :: a -> Last a Source # (<*>) :: Last (a -> b) -> Last a -> Last b Source # liftA2 :: (a -> b -> c) -> Last a -> Last b -> Last c Source # (*>) :: Last a -> Last b -> Last b Source # (<*) :: Last a -> Last b -> Last a Source #
Applicative Max | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods pure :: a -> Max a Source # (<*>) :: Max (a -> b) -> Max a -> Max b Source # liftA2 :: (a -> b -> c) -> Max a -> Max b -> Max c Source # (*>) :: Max a -> Max b -> Max b Source # (<*) :: Max a -> Max b -> Max a Source #
Applicative Min | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods pure :: a -> Min a Source # (<*>) :: Min (a -> b) -> Min a -> Min b Source # liftA2 :: (a -> b -> c) -> Min a -> Min b -> Min c Source # (*>) :: Min a -> Min b -> Min b Source # (<*) :: Min a -> Min b -> Min a Source #
Applicative Put |
Instance details Defined in Data.ByteString.Builder.Internal Methods pure :: a -> Put a Source # (<*>) :: Put (a -> b) -> Put a -> Put b Source # liftA2 :: (a -> b -> c) -> Put a -> Put b -> Put c Source # (*>) :: Put a -> Put b -> Put b Source # (<*) :: Put a -> Put b -> Put a Source #
Applicative Seq | Since: containers-0.5.4
Instance details Defined in Data.Sequence.Internal Methods pure :: a -> Seq a Source # (<*>) :: Seq (a -> b) -> Seq a -> Seq b Source # liftA2 :: (a -> b -> c) -> Seq a -> Seq b -> Seq c Source # (*>) :: Seq a -> Seq b -> Seq b Source # (<*) :: Seq a -> Seq b -> Seq a Source #
Applicative Tree |
Instance details Defined in Data.Tree Methods pure :: a -> Tree a Source # (<*>) :: Tree (a -> b) -> Tree a -> Tree b Source # liftA2 :: (a -> b -> c) -> Tree a -> Tree b -> Tree c Source # (*>) :: Tree a -> Tree b -> Tree b Source # (<*) :: Tree a -> Tree b -> Tree a Source #
Applicative DList |
Instance details Defined in Data.DList.Internal Methods pure :: a -> DList a Source # (<*>) :: DList (a -> b) -> DList a -> DList b Source # liftA2 :: (a -> b -> c) -> DList a -> DList b -> DList c Source # (*>) :: DList a -> DList b -> DList b Source # (<*) :: DList a -> DList b -> DList a Source #
Applicative NonEmpty | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods pure :: a -> NonEmpty a Source # (<*>) :: NonEmpty (a -> b) -> NonEmpty a -> NonEmpty b Source # liftA2 :: (a -> b -> c) -> NonEmpty a -> NonEmpty b -> NonEmpty c Source # (*>) :: NonEmpty a -> NonEmpty b -> NonEmpty b Source # (<*) :: NonEmpty a -> NonEmpty b -> NonEmpty a Source #
Applicative STM | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods pure :: a -> STM a Source # (<*>) :: STM (a -> b) -> STM a -> STM b Source # liftA2 :: (a -> b -> c) -> STM a -> STM b -> STM c Source # (*>) :: STM a -> STM b -> STM b Source # (<*) :: STM a -> STM b -> STM a Source #
Applicative Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods pure :: a -> Identity a Source # (<*>) :: Identity (a -> b) -> Identity a -> Identity b Source # liftA2 :: (a -> b -> c) -> Identity a -> Identity b -> Identity c Source # (*>) :: Identity a -> Identity b -> Identity b Source # (<*) :: Identity a -> Identity b -> Identity a Source #
Applicative Down | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods pure :: a -> Down a Source # (<*>) :: Down (a -> b) -> Down a -> Down b Source # liftA2 :: (a -> b -> c) -> Down a -> Down b -> Down c Source # (*>) :: Down a -> Down b -> Down b Source # (<*) :: Down a -> Down b -> Down a Source #
Applicative Par1 | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods pure :: a -> Par1 a Source # (<*>) :: Par1 (a -> b) -> Par1 a -> Par1 b Source # liftA2 :: (a -> b -> c) -> Par1 a -> Par1 b -> Par1 c Source # (*>) :: Par1 a -> Par1 b -> Par1 b Source # (<*) :: Par1 a -> Par1 b -> Par1 a Source #
Applicative P | Since: base-4.5.0.0
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods pure :: a -> P a Source # (<*>) :: P (a -> b) -> P a -> P b Source # liftA2 :: (a -> b -> c) -> P a -> P b -> P c Source # (*>) :: P a -> P b -> P b Source # (<*) :: P a -> P b -> P a Source #
Applicative ReadP | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods pure :: a -> ReadP a Source # (<*>) :: ReadP (a -> b) -> ReadP a -> ReadP b Source # liftA2 :: (a -> b -> c) -> ReadP a -> ReadP b -> ReadP c Source # (*>) :: ReadP a -> ReadP b -> ReadP b Source # (<*) :: ReadP a -> ReadP b -> ReadP a Source #
Applicative IO | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods pure :: a -> IO a Source # (<*>) :: IO (a -> b) -> IO a -> IO b Source # liftA2 :: (a -> b -> c) -> IO a -> IO b -> IO c Source # (*>) :: IO a -> IO b -> IO b Source # (<*) :: IO a -> IO b -> IO a Source #
Applicative Array |
Instance details Defined in Data.Primitive.Array Methods pure :: a -> Array a Source # (<*>) :: Array (a -> b) -> Array a -> Array b Source # liftA2 :: (a -> b -> c) -> Array a -> Array b -> Array c Source # (*>) :: Array a -> Array b -> Array b Source # (<*) :: Array a -> Array b -> Array a Source #
Applicative SmallArray |
Instance details Defined in Data.Primitive.SmallArray Methods pure :: a -> SmallArray a Source # (<*>) :: SmallArray (a -> b) -> SmallArray a -> SmallArray b Source # liftA2 :: (a -> b -> c) -> SmallArray a -> SmallArray b -> SmallArray c Source # (*>) :: SmallArray a -> SmallArray b -> SmallArray b Source # (<*) :: SmallArray a -> SmallArray b -> SmallArray a Source #
Applicative Flat |
Instance details Defined in UnliftIO.Internals.Async Methods pure :: a -> Flat a Source # (<*>) :: Flat (a -> b) -> Flat a -> Flat b Source # liftA2 :: (a -> b -> c) -> Flat a -> Flat b -> Flat c Source # (*>) :: Flat a -> Flat b -> Flat b Source # (<*) :: Flat a -> Flat b -> Flat a Source #
Applicative FlatApp |
Instance details Defined in UnliftIO.Internals.Async Methods pure :: a -> FlatApp a Source # (<*>) :: FlatApp (a -> b) -> FlatApp a -> FlatApp b Source # liftA2 :: (a -> b -> c) -> FlatApp a -> FlatApp b -> FlatApp c Source # (*>) :: FlatApp a -> FlatApp b -> FlatApp b Source # (<*) :: FlatApp a -> FlatApp b -> FlatApp a Source #
Applicative Memoized |
Instance details Defined in UnliftIO.Memoize Methods pure :: a -> Memoized a Source # (<*>) :: Memoized (a -> b) -> Memoized a -> Memoized b Source # liftA2 :: (a -> b -> c) -> Memoized a -> Memoized b -> Memoized c Source # (*>) :: Memoized a -> Memoized b -> Memoized b Source # (<*) :: Memoized a -> Memoized b -> Memoized a Source #
Applicative Vector |
Instance details Defined in Data.Vector Methods pure :: a -> Vector a Source # (<*>) :: Vector (a -> b) -> Vector a -> Vector b Source # liftA2 :: (a -> b -> c) -> Vector a -> Vector b -> Vector c Source # (*>) :: Vector a -> Vector b -> Vector b Source # (<*) :: Vector a -> Vector b -> Vector a Source #
Applicative Id |
Instance details Defined in Data.Vector.Fusion.Util Methods pure :: a -> Id a Source # (<*>) :: Id (a -> b) -> Id a -> Id b Source # liftA2 :: (a -> b -> c) -> Id a -> Id b -> Id c Source # (*>) :: Id a -> Id b -> Id b Source # (<*) :: Id a -> Id b -> Id a Source #
Applicative Vector |
Instance details Defined in Data.Vector.Strict Methods pure :: a -> Vector a Source # (<*>) :: Vector (a -> b) -> Vector a -> Vector b Source # liftA2 :: (a -> b -> c) -> Vector a -> Vector b -> Vector c Source # (*>) :: Vector a -> Vector b -> Vector b Source # (<*) :: Vector a -> Vector b -> Vector a Source #
Applicative Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods pure :: a -> Maybe a Source # (<*>) :: Maybe (a -> b) -> Maybe a -> Maybe b Source # liftA2 :: (a -> b -> c) -> Maybe a -> Maybe b -> Maybe c Source # (*>) :: Maybe a -> Maybe b -> Maybe b Source # (<*) :: Maybe a -> Maybe b -> Maybe a Source #
Applicative Solo | Since: base-4.15
Instance details Defined in GHC.Internal.Base Methods pure :: a -> Solo a Source # (<*>) :: Solo (a -> b) -> Solo a -> Solo b Source # liftA2 :: (a -> b -> c) -> Solo a -> Solo b -> Solo c Source # (*>) :: Solo a -> Solo b -> Solo b Source # (<*) :: Solo a -> Solo b -> Solo a Source #
Applicative [] | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods pure :: a -> [a] Source # (<*>) :: [a -> b] -> [a] -> [b] Source # liftA2 :: (a -> b -> c) -> [a] -> [b] -> [c] Source # (*>) :: [a] -> [b] -> [b] Source # (<*) :: [a] -> [b] -> [a] Source #
Representable f => Applicative (Co f) |
Instance details Defined in Data.Functor.Rep Methods pure :: a -> Co f a Source # (<*>) :: Co f (a -> b) -> Co f a -> Co f b Source # liftA2 :: (a -> b -> c) -> Co f a -> Co f b -> Co f c Source # (*>) :: Co f a -> Co f b -> Co f b Source # (<*) :: Co f a -> Co f b -> Co f a Source #
Applicative (ConcurrentlyE e) |

Instance details

Defined in Control.Concurrent.Async.Internal

Methods

pure :: a -> ConcurrentlyE e a Source #

(<*>) :: ConcurrentlyE e (a -> b) -> ConcurrentlyE e a -> ConcurrentlyE e b Source #

liftA2 :: (a -> b -> c) -> ConcurrentlyE e a -> ConcurrentlyE e b -> ConcurrentlyE e c Source #

(*>) :: ConcurrentlyE e a -> ConcurrentlyE e b -> ConcurrentlyE e b Source #

(<*) :: ConcurrentlyE e a -> ConcurrentlyE e b -> ConcurrentlyE e a Source #

Monad m => Applicative (WrappedMonad m) | Since: base-2.1

Instance details

Defined in Control.Applicative

Methods

pure :: a -> WrappedMonad m a Source #

(<*>) :: WrappedMonad m (a -> b) -> WrappedMonad m a -> WrappedMonad m b Source #

liftA2 :: (a -> b -> c) -> WrappedMonad m a -> WrappedMonad m b -> WrappedMonad m c Source #

(*>) :: WrappedMonad m a -> WrappedMonad m b -> WrappedMonad m b Source #

(<*) :: WrappedMonad m a -> WrappedMonad m b -> WrappedMonad m a Source #

Applicative (SetM s) |
Instance details Defined in Data.Graph Methods pure :: a -> SetM s a Source # (<*>) :: SetM s (a -> b) -> SetM s a -> SetM s b Source # liftA2 :: (a -> b -> c) -> SetM s a -> SetM s b -> SetM s c Source # (*>) :: SetM s a -> SetM s b -> SetM s b Source # (<*) :: SetM s a -> SetM s b -> SetM s a Source #
Alternative f => Applicative (Cofree f) |
Instance details Defined in Control.Comonad.Cofree Methods pure :: a -> Cofree f a Source # (<*>) :: Cofree f (a -> b) -> Cofree f a -> Cofree f b Source # liftA2 :: (a -> b -> c) -> Cofree f a -> Cofree f b -> Cofree f c Source # (*>) :: Cofree f a -> Cofree f b -> Cofree f b Source # (<*) :: Cofree f a -> Cofree f b -> Cofree f a Source #
Functor f => Applicative (Free f) |
Instance details Defined in Control.Monad.Free Methods pure :: a -> Free f a Source # (<*>) :: Free f (a -> b) -> Free f a -> Free f b Source # liftA2 :: (a -> b -> c) -> Free f a -> Free f b -> Free f c Source # (*>) :: Free f a -> Free f b -> Free f b Source # (<*) :: Free f a -> Free f b -> Free f a Source #
Arrow a => Applicative (ArrowMonad a) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Control.Arrow

Methods

pure :: a0 -> ArrowMonad a a0 Source #

(<*>) :: ArrowMonad a (a0 -> b) -> ArrowMonad a a0 -> ArrowMonad a b Source #

liftA2 :: (a0 -> b -> c) -> ArrowMonad a a0 -> ArrowMonad a b -> ArrowMonad a c Source #

(*>) :: ArrowMonad a a0 -> ArrowMonad a b -> ArrowMonad a b Source #

(<*) :: ArrowMonad a a0 -> ArrowMonad a b -> ArrowMonad a a0 Source #

Applicative (Either e) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods pure :: a -> Either e a Source # (<*>) :: Either e (a -> b) -> Either e a -> Either e b Source # liftA2 :: (a -> b -> c) -> Either e a -> Either e b -> Either e c Source # (*>) :: Either e a -> Either e b -> Either e b Source # (<*) :: Either e a -> Either e b -> Either e a Source #
Applicative (U1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods pure :: a -> U1 a Source # (<*>) :: U1 (a -> b) -> U1 a -> U1 b Source # liftA2 :: (a -> b -> c) -> U1 a -> U1 b -> U1 c Source # (*>) :: U1 a -> U1 b -> U1 b Source # (<*) :: U1 a -> U1 b -> U1 a Source #
Applicative (ST s) | Since: base-4.4.0.0
Instance details Defined in GHC.Internal.ST Methods pure :: a -> ST s a Source # (<*>) :: ST s (a -> b) -> ST s a -> ST s b Source # liftA2 :: (a -> b -> c) -> ST s a -> ST s b -> ST s c Source # (*>) :: ST s a -> ST s b -> ST s b Source # (<*) :: ST s a -> ST s b -> ST s a Source #
Applicative (StateL s) |
Instance details Defined in Data.Key Methods pure :: a -> StateL s a Source # (<*>) :: StateL s (a -> b) -> StateL s a -> StateL s b Source # liftA2 :: (a -> b -> c) -> StateL s a -> StateL s b -> StateL s c Source # (*>) :: StateL s a -> StateL s b -> StateL s b Source # (<*) :: StateL s a -> StateL s b -> StateL s a Source #
Applicative (StateR s) |
Instance details Defined in Data.Key Methods pure :: a -> StateR s a Source # (<*>) :: StateR s (a -> b) -> StateR s a -> StateR s b Source # liftA2 :: (a -> b -> c) -> StateR s a -> StateR s b -> StateR s c Source # (*>) :: StateR s a -> StateR s b -> StateR s b Source # (<*) :: StateR s a -> StateR s b -> StateR s a Source #
Applicative f => Applicative (WrappedPoly f) |

Instance details

Defined in Data.MonoTraversable

Methods

pure :: a -> WrappedPoly f a Source #

(<*>) :: WrappedPoly f (a -> b) -> WrappedPoly f a -> WrappedPoly f b Source #

liftA2 :: (a -> b -> c) -> WrappedPoly f a -> WrappedPoly f b -> WrappedPoly f c Source #

(*>) :: WrappedPoly f a -> WrappedPoly f b -> WrappedPoly f b Source #

(<*) :: WrappedPoly f a -> WrappedPoly f b -> WrappedPoly f a Source #

Applicative (IParser t) |
Instance details Defined in Data.Text.Internal.Read Methods pure :: a -> IParser t a Source # (<*>) :: IParser t (a -> b) -> IParser t a -> IParser t b Source # liftA2 :: (a -> b -> c) -> IParser t a -> IParser t b -> IParser t c Source # (*>) :: IParser t a -> IParser t b -> IParser t b Source # (<*) :: IParser t a -> IParser t b -> IParser t a Source #
Applicative f => Applicative (Lift f) | A combination is `Pure` only if both parts are.
Instance details Defined in Control.Applicative.Lift Methods pure :: a -> Lift f a Source # (<*>) :: Lift f (a -> b) -> Lift f a -> Lift f b Source # liftA2 :: (a -> b -> c) -> Lift f a -> Lift f b -> Lift f c Source # (*>) :: Lift f a -> Lift f b -> Lift f b Source # (<*) :: Lift f a -> Lift f b -> Lift f a Source #
(Functor m, Monad m) => Applicative (MaybeT m) |
Instance details Defined in Control.Monad.Trans.Maybe Methods pure :: a -> MaybeT m a Source # (<*>) :: MaybeT m (a -> b) -> MaybeT m a -> MaybeT m b Source # liftA2 :: (a -> b -> c) -> MaybeT m a -> MaybeT m b -> MaybeT m c Source # (*>) :: MaybeT m a -> MaybeT m b -> MaybeT m b Source # (<*) :: MaybeT m a -> MaybeT m b -> MaybeT m a Source #
MonadUnliftIO m => Applicative (Conc m) | Since: unliftio-0.2.9.0
Instance details Defined in UnliftIO.Internals.Async Methods pure :: a -> Conc m a Source # (<*>) :: Conc m (a -> b) -> Conc m a -> Conc m b Source # liftA2 :: (a -> b -> c) -> Conc m a -> Conc m b -> Conc m c Source # (*>) :: Conc m a -> Conc m b -> Conc m b Source # (<*) :: Conc m a -> Conc m b -> Conc m a Source #
MonadUnliftIO m => Applicative (Concurrently m) | Since: unliftio-0.1.0.0

Instance details

Defined in UnliftIO.Internals.Async

Methods

pure :: a -> Concurrently m a Source #

(<*>) :: Concurrently m (a -> b) -> Concurrently m a -> Concurrently m b Source #

liftA2 :: (a -> b -> c) -> Concurrently m a -> Concurrently m b -> Concurrently m c Source #

(*>) :: Concurrently m a -> Concurrently m b -> Concurrently m b Source #

(<*) :: Concurrently m a -> Concurrently m b -> Concurrently m a Source #

Monoid a => Applicative ((,) a)

For tuples, the `Monoid` constraint on `a` determines how the first values merge. For example, `String`s concatenate:

    ("hello ", (+15)) <*> ("world!", 2002)
    ("hello world!",2017)

Since: base-2.1

Instance details Defined in GHC.Internal.Base Methods pure :: a0 -> (a, a0) Source # (<*>) :: (a, a0 -> b) -> (a, a0) -> (a, b) Source # liftA2 :: (a0 -> b -> c) -> (a, a0) -> (a, b) -> (a, c) Source # (*>) :: (a, a0) -> (a, b) -> (a, b) Source # (<*) :: (a, a0) -> (a, b) -> (a, a0) Source #
Arrow a => Applicative (WrappedArrow a b) | Since: base-2.1

Instance details

Defined in Control.Applicative

Methods

pure :: a0 -> WrappedArrow a b a0 Source #

(<*>) :: WrappedArrow a b (a0 -> b0) -> WrappedArrow a b a0 -> WrappedArrow a b b0 Source #

liftA2 :: (a0 -> b0 -> c) -> WrappedArrow a b a0 -> WrappedArrow a b b0 -> WrappedArrow a b c Source #

(*>) :: WrappedArrow a b a0 -> WrappedArrow a b b0 -> WrappedArrow a b b0 Source #

(<*) :: WrappedArrow a b a0 -> WrappedArrow a b b0 -> WrappedArrow a b a0 Source #

Applicative (Mag a b) |
Instance details Defined in Data.Biapplicative Methods pure :: a0 -> Mag a b a0 Source # (<*>) :: Mag a b (a0 -> b0) -> Mag a b a0 -> Mag a b b0 Source # liftA2 :: (a0 -> b0 -> c) -> Mag a b a0 -> Mag a b b0 -> Mag a b c Source # (*>) :: Mag a b a0 -> Mag a b b0 -> Mag a b b0 Source # (<*) :: Mag a b a0 -> Mag a b b0 -> Mag a b a0 Source #
Applicative (bi a) => Applicative (Biap bi a) |
Instance details Defined in Data.Bifunctor.Biap Methods pure :: a0 -> Biap bi a a0 Source # (<*>) :: Biap bi a (a0 -> b) -> Biap bi a a0 -> Biap bi a b Source # liftA2 :: (a0 -> b -> c) -> Biap bi a a0 -> Biap bi a b -> Biap bi a c Source # (*>) :: Biap bi a a0 -> Biap bi a b -> Biap bi a b Source # (<*) :: Biap bi a a0 -> Biap bi a b -> Biap bi a a0 Source #
Biapplicative p => Applicative (Fix p) |
Instance details Defined in Data.Bifunctor.Fix Methods pure :: a -> Fix p a Source # (<*>) :: Fix p (a -> b) -> Fix p a -> Fix p b Source # liftA2 :: (a -> b -> c) -> Fix p a -> Fix p b -> Fix p c Source # (*>) :: Fix p a -> Fix p b -> Fix p b Source # (<*) :: Fix p a -> Fix p b -> Fix p a Source #
Biapplicative p => Applicative (Join p) |
Instance details Defined in Data.Bifunctor.Join Methods pure :: a -> Join p a Source # (<*>) :: Join p (a -> b) -> Join p a -> Join p b Source # liftA2 :: (a -> b -> c) -> Join p a -> Join p b -> Join p c Source # (*>) :: Join p a -> Join p b -> Join p b Source # (<*) :: Join p a -> Join p b -> Join p a Source #
(Applicative f, Monad f) => Applicative (WhenMissing f x) | Equivalent to `ReaderT k (ReaderT x (MaybeT f))`. Since: containers-0.5.9

Instance details

Defined in Data.IntMap.Internal

Methods

pure :: a -> WhenMissing f x a Source #

(<*>) :: WhenMissing f x (a -> b) -> WhenMissing f x a -> WhenMissing f x b Source #

liftA2 :: (a -> b -> c) -> WhenMissing f x a -> WhenMissing f x b -> WhenMissing f x c Source #

(*>) :: WhenMissing f x a -> WhenMissing f x b -> WhenMissing f x b Source #

(<*) :: WhenMissing f x a -> WhenMissing f x b -> WhenMissing f x a Source #

(Functor f, Monad m) => Applicative (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods pure :: a -> FreeT f m a Source # (<*>) :: FreeT f m (a -> b) -> FreeT f m a -> FreeT f m b Source # liftA2 :: (a -> b -> c) -> FreeT f m a -> FreeT f m b -> FreeT f m c Source # (*>) :: FreeT f m a -> FreeT f m b -> FreeT f m b Source # (<*) :: FreeT f m a -> FreeT f m b -> FreeT f m a Source #
Applicative m => Applicative (Kleisli m a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods pure :: a0 -> Kleisli m a a0 Source # (<*>) :: Kleisli m a (a0 -> b) -> Kleisli m a a0 -> Kleisli m a b Source # liftA2 :: (a0 -> b -> c) -> Kleisli m a a0 -> Kleisli m a b -> Kleisli m a c Source # (*>) :: Kleisli m a a0 -> Kleisli m a b -> Kleisli m a b Source # (<*) :: Kleisli m a a0 -> Kleisli m a b -> Kleisli m a a0 Source #
(Generic1 f, Applicative (Rep1 f)) => Applicative (Generically1 f) | Since: base-4.17.0.0

Instance details

Defined in GHC.Internal.Generics

Methods

pure :: a -> Generically1 f a Source #

(<*>) :: Generically1 f (a -> b) -> Generically1 f a -> Generically1 f b Source #

liftA2 :: (a -> b -> c) -> Generically1 f a -> Generically1 f b -> Generically1 f c Source #

(*>) :: Generically1 f a -> Generically1 f b -> Generically1 f b Source #

(<*) :: Generically1 f a -> Generically1 f b -> Generically1 f a Source #

Applicative f => Applicative (Rec1 f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods pure :: a -> Rec1 f a Source # (<*>) :: Rec1 f (a -> b) -> Rec1 f a -> Rec1 f b Source # liftA2 :: (a -> b -> c) -> Rec1 f a -> Rec1 f b -> Rec1 f c Source # (*>) :: Rec1 f a -> Rec1 f b -> Rec1 f b Source # (<*) :: Rec1 f a -> Rec1 f b -> Rec1 f a Source #
(Applicative f, Applicative g) => Applicative (Day f g) |
Instance details Defined in Data.Functor.Day Methods pure :: a -> Day f g a Source # (<*>) :: Day f g (a -> b) -> Day f g a -> Day f g b Source # liftA2 :: (a -> b -> c) -> Day f g a -> Day f g b -> Day f g c Source # (*>) :: Day f g a -> Day f g b -> Day f g b Source # (<*) :: Day f g a -> Day f g b -> Day f g a Source #
Applicative (t m) => Applicative (LiftingAccum t m) | Since: mtl-2.3

Instance details

Defined in Control.Monad.Accum

Methods

pure :: a -> LiftingAccum t m a Source #

(<*>) :: LiftingAccum t m (a -> b) -> LiftingAccum t m a -> LiftingAccum t m b Source #

liftA2 :: (a -> b -> c) -> LiftingAccum t m a -> LiftingAccum t m b -> LiftingAccum t m c Source #

(*>) :: LiftingAccum t m a -> LiftingAccum t m b -> LiftingAccum t m b Source #

(<*) :: LiftingAccum t m a -> LiftingAccum t m b -> LiftingAccum t m a Source #

Applicative (t m) => Applicative (LiftingSelect t m) | Since: mtl-2.3

Instance details

Defined in Control.Monad.Select

Methods

pure :: a -> LiftingSelect t m a Source #

(<*>) :: LiftingSelect t m (a -> b) -> LiftingSelect t m a -> LiftingSelect t m b Source #

liftA2 :: (a -> b -> c) -> LiftingSelect t m a -> LiftingSelect t m b -> LiftingSelect t m c Source #

(*>) :: LiftingSelect t m a -> LiftingSelect t m b -> LiftingSelect t m b Source #

(<*) :: LiftingSelect t m a -> LiftingSelect t m b -> LiftingSelect t m a Source #

(Applicative (Rep p), Representable p) => Applicative (Prep p) |
Instance details Defined in Data.Profunctor.Rep Methods pure :: a -> Prep p a Source # (<*>) :: Prep p (a -> b) -> Prep p a -> Prep p b Source # liftA2 :: (a -> b -> c) -> Prep p a -> Prep p b -> Prep p c Source # (*>) :: Prep p a -> Prep p b -> Prep p b Source # (<*) :: Prep p a -> Prep p b -> Prep p a Source #
Applicative (Tagged s) |
Instance details Defined in Data.Tagged Methods pure :: a -> Tagged s a Source # (<*>) :: Tagged s (a -> b) -> Tagged s a -> Tagged s b Source # liftA2 :: (a -> b -> c) -> Tagged s a -> Tagged s b -> Tagged s c Source # (*>) :: Tagged s a -> Tagged s b -> Tagged s b Source # (<*) :: Tagged s a -> Tagged s b -> Tagged s a Source #
Applicative f => Applicative (Backwards f) | Apply `f`-actions in the reverse order.
Instance details Defined in Control.Applicative.Backwards Methods pure :: a -> Backwards f a Source # (<*>) :: Backwards f (a -> b) -> Backwards f a -> Backwards f b Source # liftA2 :: (a -> b -> c) -> Backwards f a -> Backwards f b -> Backwards f c Source # (*>) :: Backwards f a -> Backwards f b -> Backwards f b Source # (<*) :: Backwards f a -> Backwards f b -> Backwards f a Source #
(Monoid w, Functor m, Monad m) => Applicative (AccumT w m) |
Instance details Defined in Control.Monad.Trans.Accum Methods pure :: a -> AccumT w m a Source # (<*>) :: AccumT w m (a -> b) -> AccumT w m a -> AccumT w m b Source # liftA2 :: (a -> b -> c) -> AccumT w m a -> AccumT w m b -> AccumT w m c Source # (*>) :: AccumT w m a -> AccumT w m b -> AccumT w m b Source # (<*) :: AccumT w m a -> AccumT w m b -> AccumT w m a Source #
(Functor m, Monad m) => Applicative (ExceptT e m) |
Instance details Defined in Control.Monad.Trans.Except Methods pure :: a -> ExceptT e m a Source # (<*>) :: ExceptT e m (a -> b) -> ExceptT e m a -> ExceptT e m b Source # liftA2 :: (a -> b -> c) -> ExceptT e m a -> ExceptT e m b -> ExceptT e m c Source # (*>) :: ExceptT e m a -> ExceptT e m b -> ExceptT e m b Source # (<*) :: ExceptT e m a -> ExceptT e m b -> ExceptT e m a Source #
Applicative m => Applicative (IdentityT m) |
Instance details Defined in Control.Monad.Trans.Identity Methods pure :: a -> IdentityT m a Source # (<*>) :: IdentityT m (a -> b) -> IdentityT m a -> IdentityT m b Source # liftA2 :: (a -> b -> c) -> IdentityT m a -> IdentityT m b -> IdentityT m c Source # (*>) :: IdentityT m a -> IdentityT m b -> IdentityT m b Source # (<*) :: IdentityT m a -> IdentityT m b -> IdentityT m a Source #
Applicative m => Applicative (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods pure :: a -> ReaderT r m a Source # (<*>) :: ReaderT r m (a -> b) -> ReaderT r m a -> ReaderT r m b Source # liftA2 :: (a -> b -> c) -> ReaderT r m a -> ReaderT r m b -> ReaderT r m c Source # (*>) :: ReaderT r m a -> ReaderT r m b -> ReaderT r m b Source # (<*) :: ReaderT r m a -> ReaderT r m b -> ReaderT r m a Source #
(Functor m, Monad m) => Applicative (SelectT r m) |
Instance details Defined in Control.Monad.Trans.Select Methods pure :: a -> SelectT r m a Source # (<*>) :: SelectT r m (a -> b) -> SelectT r m a -> SelectT r m b Source # liftA2 :: (a -> b -> c) -> SelectT r m a -> SelectT r m b -> SelectT r m c Source # (*>) :: SelectT r m a -> SelectT r m b -> SelectT r m b Source # (<*) :: SelectT r m a -> SelectT r m b -> SelectT r m a Source #
(Functor m, Monad m) => Applicative (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Lazy Methods pure :: a -> StateT s m a Source # (<*>) :: StateT s m (a -> b) -> StateT s m a -> StateT s m b Source # liftA2 :: (a -> b -> c) -> StateT s m a -> StateT s m b -> StateT s m c Source # (*>) :: StateT s m a -> StateT s m b -> StateT s m b Source # (<*) :: StateT s m a -> StateT s m b -> StateT s m a Source #
(Functor m, Monad m) => Applicative (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Strict Methods pure :: a -> StateT s m a Source # (<*>) :: StateT s m (a -> b) -> StateT s m a -> StateT s m b Source # liftA2 :: (a -> b -> c) -> StateT s m a -> StateT s m b -> StateT s m c Source # (*>) :: StateT s m a -> StateT s m b -> StateT s m b Source # (<*) :: StateT s m a -> StateT s m b -> StateT s m a Source #
(Functor m, Monad m) => Applicative (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.CPS Methods pure :: a -> WriterT w m a Source # (<*>) :: WriterT w m (a -> b) -> WriterT w m a -> WriterT w m b Source # liftA2 :: (a -> b -> c) -> WriterT w m a -> WriterT w m b -> WriterT w m c Source # (*>) :: WriterT w m a -> WriterT w m b -> WriterT w m b Source # (<*) :: WriterT w m a -> WriterT w m b -> WriterT w m a Source #
(Monoid w, Applicative m) => Applicative (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods pure :: a -> WriterT w m a Source # (<*>) :: WriterT w m (a -> b) -> WriterT w m a -> WriterT w m b Source # liftA2 :: (a -> b -> c) -> WriterT w m a -> WriterT w m b -> WriterT w m c Source # (*>) :: WriterT w m a -> WriterT w m b -> WriterT w m b Source # (<*) :: WriterT w m a -> WriterT w m b -> WriterT w m a Source #
(Monoid w, Applicative m) => Applicative (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods pure :: a -> WriterT w m a Source # (<*>) :: WriterT w m (a -> b) -> WriterT w m a -> WriterT w m b Source # liftA2 :: (a -> b -> c) -> WriterT w m a -> WriterT w m b -> WriterT w m c Source # (*>) :: WriterT w m a -> WriterT w m b -> WriterT w m b Source # (<*) :: WriterT w m a -> WriterT w m b -> WriterT w m a Source #
Monoid a => Applicative (Constant a :: Type -> Type) |
Instance details Defined in Data.Functor.Constant Methods pure :: a0 -> Constant a a0 Source # (<*>) :: Constant a (a0 -> b) -> Constant a a0 -> Constant a b Source # liftA2 :: (a0 -> b -> c) -> Constant a a0 -> Constant a b -> Constant a c Source # (*>) :: Constant a a0 -> Constant a b -> Constant a b Source # (<*) :: Constant a a0 -> Constant a b -> Constant a a0 Source #
Applicative f => Applicative (Reverse f) | Derived instance.
Instance details Defined in Data.Functor.Reverse Methods pure :: a -> Reverse f a Source # (<*>) :: Reverse f (a -> b) -> Reverse f a -> Reverse f b Source # liftA2 :: (a -> b -> c) -> Reverse f a -> Reverse f b -> Reverse f c Source # (*>) :: Reverse f a -> Reverse f b -> Reverse f b Source # (<*) :: Reverse f a -> Reverse f b -> Reverse f a Source #
(Monoid a, Monoid b) => Applicative ((,,) a b) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Base Methods pure :: a0 -> (a, b, a0) Source # (<*>) :: (a, b, a0 -> b0) -> (a, b, a0) -> (a, b, b0) Source # liftA2 :: (a0 -> b0 -> c) -> (a, b, a0) -> (a, b, b0) -> (a, b, c) Source # (*>) :: (a, b, a0) -> (a, b, b0) -> (a, b, b0) Source # (<*) :: (a, b, a0) -> (a, b, b0) -> (a, b, a0) Source #
(Applicative f, Applicative g) => Applicative (Product f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Product Methods pure :: a -> Product f g a Source # (<*>) :: Product f g (a -> b) -> Product f g a -> Product f g b Source # liftA2 :: (a -> b -> c) -> Product f g a -> Product f g b -> Product f g c Source # (*>) :: Product f g a -> Product f g b -> Product f g b Source # (<*) :: Product f g a -> Product f g b -> Product f g a Source #
(Monad f, Applicative f) => Applicative (WhenMatched f x y) | Equivalent to `ReaderT Key (ReaderT x (ReaderT y (MaybeT f)))` Since: containers-0.5.9

Instance details

Defined in Data.IntMap.Internal

Methods

pure :: a -> WhenMatched f x y a Source #

(<*>) :: WhenMatched f x y (a -> b) -> WhenMatched f x y a -> WhenMatched f x y b Source #

liftA2 :: (a -> b -> c) -> WhenMatched f x y a -> WhenMatched f x y b -> WhenMatched f x y c Source #

(*>) :: WhenMatched f x y a -> WhenMatched f x y b -> WhenMatched f x y b Source #

(<*) :: WhenMatched f x y a -> WhenMatched f x y b -> WhenMatched f x y a Source #

(Applicative f, Monad f) => Applicative (WhenMissing f k x) | Equivalent to `ReaderT k (ReaderT x (MaybeT f))` . Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

pure :: a -> WhenMissing f k x a Source #

(<*>) :: WhenMissing f k x (a -> b) -> WhenMissing f k x a -> WhenMissing f k x b Source #

liftA2 :: (a -> b -> c) -> WhenMissing f k x a -> WhenMissing f k x b -> WhenMissing f k x c Source #

(*>) :: WhenMissing f k x a -> WhenMissing f k x b -> WhenMissing f k x b Source #

(<*) :: WhenMissing f k x a -> WhenMissing f k x b -> WhenMissing f k x a Source #

(Applicative f, Applicative g) => Applicative (f :*: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods pure :: a -> (f :*: g) a Source # (<*>) :: (f :*: g) (a -> b) -> (f :*: g) a -> (f :*: g) b Source # liftA2 :: (a -> b -> c) -> (f :*: g) a -> (f :*: g) b -> (f :*: g) c Source # (*>) :: (f :*: g) a -> (f :*: g) b -> (f :*: g) b Source # (<*) :: (f :*: g) a -> (f :*: g) b -> (f :*: g) a Source #
Monoid c => Applicative (K1 i c :: Type -> Type) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods pure :: a -> K1 i c a Source # (<*>) :: K1 i c (a -> b) -> K1 i c a -> K1 i c b Source # liftA2 :: (a -> b -> c0) -> K1 i c a -> K1 i c b -> K1 i c c0 Source # (*>) :: K1 i c a -> K1 i c b -> K1 i c b Source # (<*) :: K1 i c a -> K1 i c b -> K1 i c a Source #
Applicative (ContT r m) |
Instance details Defined in Control.Monad.Trans.Cont Methods pure :: a -> ContT r m a Source # (<*>) :: ContT r m (a -> b) -> ContT r m a -> ContT r m b Source # liftA2 :: (a -> b -> c) -> ContT r m a -> ContT r m b -> ContT r m c Source # (*>) :: ContT r m a -> ContT r m b -> ContT r m b Source # (<*) :: ContT r m a -> ContT r m b -> ContT r m a Source #
(Monoid a, Monoid b, Monoid c) => Applicative ((,,,) a b c) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Base Methods pure :: a0 -> (a, b, c, a0) Source # (<*>) :: (a, b, c, a0 -> b0) -> (a, b, c, a0) -> (a, b, c, b0) Source # liftA2 :: (a0 -> b0 -> c0) -> (a, b, c, a0) -> (a, b, c, b0) -> (a, b, c, c0) Source # (*>) :: (a, b, c, a0) -> (a, b, c, b0) -> (a, b, c, b0) Source # (<*) :: (a, b, c, a0) -> (a, b, c, b0) -> (a, b, c, a0) Source #
Applicative ((->) r) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods pure :: a -> r -> a Source # (<*>) :: (r -> (a -> b)) -> (r -> a) -> r -> b Source # liftA2 :: (a -> b -> c) -> (r -> a) -> (r -> b) -> r -> c Source # (*>) :: (r -> a) -> (r -> b) -> r -> b Source # (<*) :: (r -> a) -> (r -> b) -> r -> a Source #
(Applicative f, Applicative g) => Applicative (Compose f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Compose Methods pure :: a -> Compose f g a Source # (<*>) :: Compose f g (a -> b) -> Compose f g a -> Compose f g b Source # liftA2 :: (a -> b -> c) -> Compose f g a -> Compose f g b -> Compose f g c Source # (*>) :: Compose f g a -> Compose f g b -> Compose f g b Source # (<*) :: Compose f g a -> Compose f g b -> Compose f g a Source #
(Monad f, Applicative f) => Applicative (WhenMatched f k x y) | Equivalent to `ReaderT k (ReaderT x (ReaderT y (MaybeT f)))` Since: containers-0.5.9

Instance details

Defined in Data.Map.Internal

Methods

pure :: a -> WhenMatched f k x y a Source #

(<*>) :: WhenMatched f k x y (a -> b) -> WhenMatched f k x y a -> WhenMatched f k x y b Source #

liftA2 :: (a -> b -> c) -> WhenMatched f k x y a -> WhenMatched f k x y b -> WhenMatched f k x y c Source #

(*>) :: WhenMatched f k x y a -> WhenMatched f k x y b -> WhenMatched f k x y b Source #

(<*) :: WhenMatched f k x y a -> WhenMatched f k x y b -> WhenMatched f k x y a Source #

(Applicative f, Applicative g) => Applicative (f :.: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods pure :: a -> (f :.: g) a Source # (<*>) :: (f :.: g) (a -> b) -> (f :.: g) a -> (f :.: g) b Source # liftA2 :: (a -> b -> c) -> (f :.: g) a -> (f :.: g) b -> (f :.: g) c Source # (*>) :: (f :.: g) a -> (f :.: g) b -> (f :.: g) b Source # (<*) :: (f :.: g) a -> (f :.: g) b -> (f :.: g) a Source #
Applicative f => Applicative (M1 i c f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods pure :: a -> M1 i c f a Source # (<*>) :: M1 i c f (a -> b) -> M1 i c f a -> M1 i c f b Source # liftA2 :: (a -> b -> c0) -> M1 i c f a -> M1 i c f b -> M1 i c f c0 Source # (*>) :: M1 i c f a -> M1 i c f b -> M1 i c f b Source # (<*) :: M1 i c f a -> M1 i c f b -> M1 i c f a Source #
(Functor m, Monad m) => Applicative (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.CPS Methods pure :: a -> RWST r w s m a Source # (<*>) :: RWST r w s m (a -> b) -> RWST r w s m a -> RWST r w s m b Source # liftA2 :: (a -> b -> c) -> RWST r w s m a -> RWST r w s m b -> RWST r w s m c Source # (*>) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m b Source # (<*) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m a Source #
(Monoid w, Functor m, Monad m) => Applicative (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Lazy Methods pure :: a -> RWST r w s m a Source # (<*>) :: RWST r w s m (a -> b) -> RWST r w s m a -> RWST r w s m b Source # liftA2 :: (a -> b -> c) -> RWST r w s m a -> RWST r w s m b -> RWST r w s m c Source # (*>) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m b Source # (<*) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m a Source #
(Monoid w, Functor m, Monad m) => Applicative (RWST r w s m) |

Instance details

Defined in Control.Monad.Trans.RWS.Strict

Methods

pure :: a -> RWST r w s m a Source #

(<*>) :: RWST r w s m (a -> b) -> RWST r w s m a -> RWST r w s m b Source #

liftA2 :: (a -> b -> c) -> RWST r w s m a -> RWST r w s m b -> RWST r w s m c Source #

(*>) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m b Source #

(<*) :: RWST r w s m a -> RWST r w s m b -> RWST r w s m a Source #

class Bounded a where Source #

The `Bounded` class is used to name the upper and lower limits of a type. `Ord` is not a superclass of `Bounded` since types that are not totally ordered may also have upper and lower bounds.

The `Bounded` class may be derived for any enumeration type; `minBound` is the first constructor listed in the `data` declaration and `maxBound` is the last. `Bounded` may also be derived for single-constructor datatypes whose constituent types are in `Bounded`.

Methods

minBound :: a Source #

maxBound :: a Source #

#### Instances

Instances details

Bounded CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CBool Source # maxBound :: CBool Source #
Bounded CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CChar Source # maxBound :: CChar Source #
Bounded CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CInt Source # maxBound :: CInt Source #
Bounded CIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CIntMax Source # maxBound :: CIntMax Source #
Bounded CIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CIntPtr Source # maxBound :: CIntPtr Source #
Bounded CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CLLong Source # maxBound :: CLLong Source #
Bounded CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CLong Source # maxBound :: CLong Source #
Bounded CPtrdiff |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CPtrdiff Source # maxBound :: CPtrdiff Source #
Bounded CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CSChar Source # maxBound :: CSChar Source #
Bounded CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CShort Source # maxBound :: CShort Source #
Bounded CSigAtomic |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CSigAtomic Source # maxBound :: CSigAtomic Source #
Bounded CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CSize Source # maxBound :: CSize Source #
Bounded CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CUChar Source # maxBound :: CUChar Source #
Bounded CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CUInt Source # maxBound :: CUInt Source #
Bounded CUIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CUIntMax Source # maxBound :: CUIntMax Source #
Bounded CUIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CUIntPtr Source # maxBound :: CUIntPtr Source #
Bounded CULLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CULLong Source # maxBound :: CULLong Source #
Bounded CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CULong Source # maxBound :: CULong Source #
Bounded CUShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CUShort Source # maxBound :: CUShort Source #
Bounded CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods minBound :: CWchar Source # maxBound :: CWchar Source #
Bounded Associativity | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods minBound :: Associativity Source # maxBound :: Associativity Source #
Bounded DecidedStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods minBound :: DecidedStrictness Source # maxBound :: DecidedStrictness Source #
Bounded SourceStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods minBound :: SourceStrictness Source # maxBound :: SourceStrictness Source #
Bounded SourceUnpackedness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods minBound :: SourceUnpackedness Source # maxBound :: SourceUnpackedness Source #
Bounded Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods minBound :: Int16 Source # maxBound :: Int16 Source #
Bounded Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods minBound :: Int32 Source # maxBound :: Int32 Source #
Bounded Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods minBound :: Int64 Source # maxBound :: Int64 Source #
Bounded Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods minBound :: Int8 Source # maxBound :: Int8 Source #
Bounded GeneralCategory | Since: base-2.1
Instance details Defined in GHC.Internal.Unicode Methods minBound :: GeneralCategory Source # maxBound :: GeneralCategory Source #
Bounded Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods minBound :: Word16 Source # maxBound :: Word16 Source #
Bounded Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods minBound :: Word32 Source # maxBound :: Word32 Source #
Bounded Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods minBound :: Word64 Source # maxBound :: Word64 Source #
Bounded Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods minBound :: Word8 Source # maxBound :: Word8 Source #
Bounded Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Ordering Source # maxBound :: Ordering Source #
Bounded I8 |
Instance details Defined in Data.Text.Foreign Methods minBound :: I8 Source # maxBound :: I8 Source #
Bounded FPFormat |
Instance details Defined in Data.Text.Lazy.Builder.RealFloat Methods minBound :: FPFormat Source # maxBound :: FPFormat Source #
Bounded QuarterOfYear |
Instance details Defined in Data.Time.Calendar.Quarter Methods minBound :: QuarterOfYear Source # maxBound :: QuarterOfYear Source #
Bounded () | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: () Source # maxBound :: () Source #
Bounded Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Bool Source # maxBound :: Bool Source #
Bounded Char | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Char Source # maxBound :: Char Source #
Bounded Int | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Int Source # maxBound :: Int Source #
Bounded Levity | Since: base-4.16.0.0
Instance details Defined in GHC.Internal.Enum Methods minBound :: Levity Source # maxBound :: Levity Source #
Bounded VecCount | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Enum Methods minBound :: VecCount Source # maxBound :: VecCount Source #
Bounded VecElem | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Enum Methods minBound :: VecElem Source # maxBound :: VecElem Source #
Bounded Word | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: Word Source # maxBound :: Word Source #
Bounded a => Bounded (First a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods minBound :: First a Source # maxBound :: First a Source #
Bounded a => Bounded (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods minBound :: Last a Source # maxBound :: Last a Source #
Bounded a => Bounded (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods minBound :: Max a Source # maxBound :: Max a Source #
Bounded a => Bounded (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods minBound :: Min a Source # maxBound :: Min a Source #
Bounded m => Bounded (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods minBound :: WrappedMonoid m Source # maxBound :: WrappedMonoid m Source #
Bounded a => Bounded (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods minBound :: Identity a Source # maxBound :: Identity a Source #
Bounded a => Bounded (Down a) | Swaps ``minBound`` and ``maxBound`` of the underlying type. Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods minBound :: Down a Source # maxBound :: Down a Source #
Bounded a => Bounded (Solo a) |
Instance details Defined in GHC.Internal.Enum Methods minBound :: Solo a Source # maxBound :: Solo a Source #
(Bounded a, Bounded b) => Bounded (a, b) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b) Source # maxBound :: (a, b) Source #
(Biapplicative bi, Bounded a, Bounded b) => Bounded (Biap bi a b) |
Instance details Defined in Data.Bifunctor.Biap Methods minBound :: Biap bi a b Source # maxBound :: Biap bi a b Source #
Bounded b => Bounded (Tagged s b) |
Instance details Defined in Data.Tagged Methods minBound :: Tagged s b Source # maxBound :: Tagged s b Source #
(Bounded a, Bounded b, Bounded c) => Bounded (a, b, c) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c) Source # maxBound :: (a, b, c) Source #
(Bounded a, Bounded b, Bounded c, Bounded d) => Bounded (a, b, c, d) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d) Source # maxBound :: (a, b, c, d) Source #
Bounded (f (g a)) => Bounded (Compose f g a) | Since: base-4.19.0.0
Instance details Defined in Data.Functor.Compose Methods minBound :: Compose f g a Source # maxBound :: Compose f g a Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e) => Bounded (a, b, c, d, e) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e) Source # maxBound :: (a, b, c, d, e) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f) => Bounded (a, b, c, d, e, f) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f) Source # maxBound :: (a, b, c, d, e, f) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g) => Bounded (a, b, c, d, e, f, g) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g) Source # maxBound :: (a, b, c, d, e, f, g) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h) => Bounded (a, b, c, d, e, f, g, h) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g, h) Source # maxBound :: (a, b, c, d, e, f, g, h) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i) => Bounded (a, b, c, d, e, f, g, h, i) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g, h, i) Source # maxBound :: (a, b, c, d, e, f, g, h, i) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j) => Bounded (a, b, c, d, e, f, g, h, i, j) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g, h, i, j) Source # maxBound :: (a, b, c, d, e, f, g, h, i, j) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k) => Bounded (a, b, c, d, e, f, g, h, i, j, k) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g, h, i, j, k) Source # maxBound :: (a, b, c, d, e, f, g, h, i, j, k) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g, h, i, j, k, l) Source # maxBound :: (a, b, c, d, e, f, g, h, i, j, k, l) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m) Source # maxBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m, Bounded n) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m, n) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source # maxBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source #
(Bounded a, Bounded b, Bounded c, Bounded d, Bounded e, Bounded f, Bounded g, Bounded h, Bounded i, Bounded j, Bounded k, Bounded l, Bounded m, Bounded n, Bounded o) => Bounded (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) | Since: base-2.1
Instance details Defined in GHC.Internal.Enum Methods minBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source # maxBound :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source #

class Fractional a => Floating a where Source #

Trigonometric and hyperbolic functions and related functions.

The Haskell Report defines no laws for `Floating`. However, `(`+`)`, `(`*`)` and `exp` are customarily expected to define an exponential field and have the following properties:

- `exp (a + b)` = `exp a * exp b`
- `exp (fromInteger 0)` = `fromInteger 1`

Minimal complete definition

pi, exp, log, sin, cos, asin, acos, atan, sinh, cosh, asinh, acosh, atanh

Methods

pi :: a Source #

exp :: a -> a Source #

log :: a -> a Source #

sqrt :: a -> a Source #

(**) :: a -> a -> a infixr 8 Source #

logBase :: a -> a -> a Source #

sin :: a -> a Source #

cos :: a -> a Source #

tan :: a -> a Source #

asin :: a -> a Source #

acos :: a -> a Source #

atan :: a -> a Source #

sinh :: a -> a Source #

cosh :: a -> a Source #

tanh :: a -> a Source #

asinh :: a -> a Source #

acosh :: a -> a Source #

atanh :: a -> a Source #

#### Instances

Instances details

Floating CDouble |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

pi :: CDouble Source #

exp :: CDouble -> CDouble Source #

log :: CDouble -> CDouble Source #

sqrt :: CDouble -> CDouble Source #

(**) :: CDouble -> CDouble -> CDouble Source #

logBase :: CDouble -> CDouble -> CDouble Source #

sin :: CDouble -> CDouble Source #

cos :: CDouble -> CDouble Source #

tan :: CDouble -> CDouble Source #

asin :: CDouble -> CDouble Source #

acos :: CDouble -> CDouble Source #

atan :: CDouble -> CDouble Source #

sinh :: CDouble -> CDouble Source #

cosh :: CDouble -> CDouble Source #

tanh :: CDouble -> CDouble Source #

asinh :: CDouble -> CDouble Source #

acosh :: CDouble -> CDouble Source #

atanh :: CDouble -> CDouble Source #

log1p :: CDouble -> CDouble Source #

expm1 :: CDouble -> CDouble Source #

log1pexp :: CDouble -> CDouble Source #

log1mexp :: CDouble -> CDouble Source #

Floating CFloat |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

pi :: CFloat Source #

exp :: CFloat -> CFloat Source #

log :: CFloat -> CFloat Source #

sqrt :: CFloat -> CFloat Source #

(**) :: CFloat -> CFloat -> CFloat Source #

logBase :: CFloat -> CFloat -> CFloat Source #

sin :: CFloat -> CFloat Source #

cos :: CFloat -> CFloat Source #

tan :: CFloat -> CFloat Source #

asin :: CFloat -> CFloat Source #

acos :: CFloat -> CFloat Source #

atan :: CFloat -> CFloat Source #

sinh :: CFloat -> CFloat Source #

cosh :: CFloat -> CFloat Source #

tanh :: CFloat -> CFloat Source #

asinh :: CFloat -> CFloat Source #

acosh :: CFloat -> CFloat Source #

atanh :: CFloat -> CFloat Source #

log1p :: CFloat -> CFloat Source #

expm1 :: CFloat -> CFloat Source #

log1pexp :: CFloat -> CFloat Source #

log1mexp :: CFloat -> CFloat Source #

Floating Double | Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

pi :: Double Source #

exp :: Double -> Double Source #

log :: Double -> Double Source #

sqrt :: Double -> Double Source #

(**) :: Double -> Double -> Double Source #

logBase :: Double -> Double -> Double Source #

sin :: Double -> Double Source #

cos :: Double -> Double Source #

tan :: Double -> Double Source #

asin :: Double -> Double Source #

acos :: Double -> Double Source #

atan :: Double -> Double Source #

sinh :: Double -> Double Source #

cosh :: Double -> Double Source #

tanh :: Double -> Double Source #

asinh :: Double -> Double Source #

acosh :: Double -> Double Source #

atanh :: Double -> Double Source #

log1p :: Double -> Double Source #

expm1 :: Double -> Double Source #

log1pexp :: Double -> Double Source #

log1mexp :: Double -> Double Source #

Floating Float | Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

pi :: Float Source #

exp :: Float -> Float Source #

log :: Float -> Float Source #

sqrt :: Float -> Float Source #

(**) :: Float -> Float -> Float Source #

logBase :: Float -> Float -> Float Source #

sin :: Float -> Float Source #

cos :: Float -> Float Source #

tan :: Float -> Float Source #

asin :: Float -> Float Source #

acos :: Float -> Float Source #

atan :: Float -> Float Source #

sinh :: Float -> Float Source #

cosh :: Float -> Float Source #

tanh :: Float -> Float Source #

asinh :: Float -> Float Source #

acosh :: Float -> Float Source #

atanh :: Float -> Float Source #

log1p :: Float -> Float Source #

expm1 :: Float -> Float Source #

log1pexp :: Float -> Float Source #

log1mexp :: Float -> Float Source #

RealFloat a => Floating (Complex a) | Since: base-2.1

Instance details

Defined in Data.Complex

Methods

pi :: Complex a Source #

exp :: Complex a -> Complex a Source #

log :: Complex a -> Complex a Source #

sqrt :: Complex a -> Complex a Source #

(**) :: Complex a -> Complex a -> Complex a Source #

logBase :: Complex a -> Complex a -> Complex a Source #

sin :: Complex a -> Complex a Source #

cos :: Complex a -> Complex a Source #

tan :: Complex a -> Complex a Source #

asin :: Complex a -> Complex a Source #

acos :: Complex a -> Complex a Source #

atan :: Complex a -> Complex a Source #

sinh :: Complex a -> Complex a Source #

cosh :: Complex a -> Complex a Source #

tanh :: Complex a -> Complex a Source #

asinh :: Complex a -> Complex a Source #

acosh :: Complex a -> Complex a Source #

atanh :: Complex a -> Complex a Source #

log1p :: Complex a -> Complex a Source #

expm1 :: Complex a -> Complex a Source #

log1pexp :: Complex a -> Complex a Source #

log1mexp :: Complex a -> Complex a Source #

Floating a => Floating (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

pi :: Identity a Source #

exp :: Identity a -> Identity a Source #

log :: Identity a -> Identity a Source #

sqrt :: Identity a -> Identity a Source #

(**) :: Identity a -> Identity a -> Identity a Source #

logBase :: Identity a -> Identity a -> Identity a Source #

sin :: Identity a -> Identity a Source #

cos :: Identity a -> Identity a Source #

tan :: Identity a -> Identity a Source #

asin :: Identity a -> Identity a Source #

acos :: Identity a -> Identity a Source #

atan :: Identity a -> Identity a Source #

sinh :: Identity a -> Identity a Source #

cosh :: Identity a -> Identity a Source #

tanh :: Identity a -> Identity a Source #

asinh :: Identity a -> Identity a Source #

acosh :: Identity a -> Identity a Source #

atanh :: Identity a -> Identity a Source #

log1p :: Identity a -> Identity a Source #

expm1 :: Identity a -> Identity a Source #

log1pexp :: Identity a -> Identity a Source #

log1mexp :: Identity a -> Identity a Source #

Floating a => Floating (Down a) | Since: base-4.14.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

pi :: Down a Source #

exp :: Down a -> Down a Source #

log :: Down a -> Down a Source #

sqrt :: Down a -> Down a Source #

(**) :: Down a -> Down a -> Down a Source #

logBase :: Down a -> Down a -> Down a Source #

sin :: Down a -> Down a Source #

cos :: Down a -> Down a Source #

tan :: Down a -> Down a Source #

asin :: Down a -> Down a Source #

acos :: Down a -> Down a Source #

atan :: Down a -> Down a Source #

sinh :: Down a -> Down a Source #

cosh :: Down a -> Down a Source #

tanh :: Down a -> Down a Source #

asinh :: Down a -> Down a Source #

acosh :: Down a -> Down a Source #

atanh :: Down a -> Down a Source #

log1p :: Down a -> Down a Source #

expm1 :: Down a -> Down a Source #

log1pexp :: Down a -> Down a Source #

log1mexp :: Down a -> Down a Source #

Floating a => Floating (Op a b) |

Instance details

Defined in Data.Functor.Contravariant

Methods

pi :: Op a b Source #

exp :: Op a b -> Op a b Source #

log :: Op a b -> Op a b Source #

sqrt :: Op a b -> Op a b Source #

(**) :: Op a b -> Op a b -> Op a b Source #

logBase :: Op a b -> Op a b -> Op a b Source #

sin :: Op a b -> Op a b Source #

cos :: Op a b -> Op a b Source #

tan :: Op a b -> Op a b Source #

asin :: Op a b -> Op a b Source #

acos :: Op a b -> Op a b Source #

atan :: Op a b -> Op a b Source #

sinh :: Op a b -> Op a b Source #

cosh :: Op a b -> Op a b Source #

tanh :: Op a b -> Op a b Source #

asinh :: Op a b -> Op a b Source #

acosh :: Op a b -> Op a b Source #

atanh :: Op a b -> Op a b Source #

log1p :: Op a b -> Op a b Source #

expm1 :: Op a b -> Op a b Source #

log1pexp :: Op a b -> Op a b Source #

log1mexp :: Op a b -> Op a b Source #

Floating a => Floating (Tagged s a) |

Instance details

Defined in Data.Tagged

Methods

pi :: Tagged s a Source #

exp :: Tagged s a -> Tagged s a Source #

log :: Tagged s a -> Tagged s a Source #

sqrt :: Tagged s a -> Tagged s a Source #

(**) :: Tagged s a -> Tagged s a -> Tagged s a Source #

logBase :: Tagged s a -> Tagged s a -> Tagged s a Source #

sin :: Tagged s a -> Tagged s a Source #

cos :: Tagged s a -> Tagged s a Source #

tan :: Tagged s a -> Tagged s a Source #

asin :: Tagged s a -> Tagged s a Source #

acos :: Tagged s a -> Tagged s a Source #

atan :: Tagged s a -> Tagged s a Source #

sinh :: Tagged s a -> Tagged s a Source #

cosh :: Tagged s a -> Tagged s a Source #

tanh :: Tagged s a -> Tagged s a Source #

asinh :: Tagged s a -> Tagged s a Source #

acosh :: Tagged s a -> Tagged s a Source #

atanh :: Tagged s a -> Tagged s a Source #

log1p :: Tagged s a -> Tagged s a Source #

expm1 :: Tagged s a -> Tagged s a Source #

log1pexp :: Tagged s a -> Tagged s a Source #

log1mexp :: Tagged s a -> Tagged s a Source #

Floating (f (g a)) => Floating (Compose f g a) | Since: base-4.20.0.0

Instance details

Defined in Data.Functor.Compose

Methods

pi :: Compose f g a Source #

exp :: Compose f g a -> Compose f g a Source #

log :: Compose f g a -> Compose f g a Source #

sqrt :: Compose f g a -> Compose f g a Source #

(**) :: Compose f g a -> Compose f g a -> Compose f g a Source #

logBase :: Compose f g a -> Compose f g a -> Compose f g a Source #

sin :: Compose f g a -> Compose f g a Source #

cos :: Compose f g a -> Compose f g a Source #

tan :: Compose f g a -> Compose f g a Source #

asin :: Compose f g a -> Compose f g a Source #

acos :: Compose f g a -> Compose f g a Source #

atan :: Compose f g a -> Compose f g a Source #

sinh :: Compose f g a -> Compose f g a Source #

cosh :: Compose f g a -> Compose f g a Source #

tanh :: Compose f g a -> Compose f g a Source #

asinh :: Compose f g a -> Compose f g a Source #

acosh :: Compose f g a -> Compose f g a Source #

atanh :: Compose f g a -> Compose f g a Source #

log1p :: Compose f g a -> Compose f g a Source #

expm1 :: Compose f g a -> Compose f g a Source #

log1pexp :: Compose f g a -> Compose f g a Source #

log1mexp :: Compose f g a -> Compose f g a Source #

class Read a Source #

Parsing of `String`s, producing values.

Derived instances of `Read` make the following assumptions, which derived instances of `Show` obey:

- If the constructor is defined to be an infix operator, then the derived `Read` instance will parse only infix applications of the constructor (not the prefix form).
- Associativity is not used to reduce the occurrence of parentheses, although precedence may be.
- If the constructor is defined using record syntax, the derived `Read` will parse only the record-syntax form, and furthermore, the fields must be given in the same order as the original declaration.
- The derived `Read` instance allows arbitrary Haskell whitespace between tokens of the input string. Extra parentheses are also allowed.

For example, given the declarations

    infixr 5 :^:
    data Tree a =  Leaf a  |  Tree a :^: Tree a

the derived instance of `Read` in Haskell 2010 is equivalent to

    instance (Read a) => Read (Tree a) where

            readsPrec d r =  readParen (d > app_prec)
                             (\r -> [(Leaf m,t) |
                                     ("Leaf",s) <- lex r,
                                     (m,t) <- readsPrec (app_prec+1) s]) r

                          ++ readParen (d > up_prec)
                             (\r -> [(u:^:v,w) |
                                     (u,s) <- readsPrec (up_prec+1) r,
                                     (":^:",t) <- lex s,
                                     (v,w) <- readsPrec (up_prec+1) t]) r

              where app_prec = 10
                    up_prec = 5

Note that right-associativity of `:^:` is unused.

The derived instance in GHC is equivalent to

    instance (Read a) => Read (Tree a) where

            readPrec = parens $ (prec app_prec $ do
                                     Ident "Leaf" <- lexP
                                     m <- step readPrec
                                     return (Leaf m))

                         +++ (prec up_prec $ do
                                     u <- step readPrec
                                     Symbol ":^:" <- lexP
                                     v <- step readPrec
                                     return (u :^: v))

              where app_prec = 10
                    up_prec = 5

            readListPrec = readListPrecDefault

Why do both `readsPrec` and `readPrec` exist, and why does GHC opt to implement `readPrec` in derived `Read` instances instead of `readsPrec`? The reason is that `readsPrec` is based on the `ReadS` type, and although `ReadS` is mentioned in the Haskell 2010 Report, it is not a very efficient parser data structure.

`readPrec`, on the other hand, is based on a much more efficient `ReadPrec` datatype (a.k.a "new-style parsers"), but its definition relies on the use of the `RankNTypes` language extension. Therefore, `readPrec` (and its cousin, `readListPrec`) are marked as GHC-only. Nevertheless, it is recommended to use `readPrec` instead of `readsPrec` whenever possible for the efficiency improvements it brings.

As mentioned above, derived `Read` instances in GHC will implement `readPrec` instead of `readsPrec`. The default implementations of `readsPrec` (and its cousin, `readList`) will simply use `readPrec` under the hood. If you are writing a `Read` instance by hand, it is recommended to write it like so:

    instance Read T where
      readPrec     = ...
      readListPrec = readListPrecDefault

Minimal complete definition

readsPrec | readPrec

#### Instances

Instances details

Read Options |
Instance details Defined in Data.Bifunctor.TH Methods readsPrec :: Int -> ReadS Options Source # readList :: ReadS [Options] Source # readPrec :: ReadPrec Options Source # readListPrec :: ReadPrec [Options] Source #
Read ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods readsPrec :: Int -> ReadS ByteString Source # readList :: ReadS [ByteString] Source # readPrec :: ReadPrec ByteString Source # readListPrec :: ReadPrec [ByteString] Source #
Read ByteString |
Instance details Defined in Data.ByteString.Lazy.Internal Methods readsPrec :: Int -> ReadS ByteString Source # readList :: ReadS [ByteString] Source # readPrec :: ReadPrec ByteString Source # readListPrec :: ReadPrec [ByteString] Source #
Read ShortByteString |
Instance details Defined in Data.ByteString.Short.Internal Methods readsPrec :: Int -> ReadS ShortByteString Source # readList :: ReadS [ShortByteString] Source # readPrec :: ReadPrec ShortByteString Source # readListPrec :: ReadPrec [ShortByteString] Source #
Read IntSet |
Instance details Defined in Data.IntSet.Internal Methods readsPrec :: Int -> ReadS IntSet Source # readList :: ReadS [IntSet] Source # readPrec :: ReadPrec IntSet Source # readListPrec :: ReadPrec [IntSet] Source #
Read Void | Reading a `Void` value is always a parse error, considering `Void` as a data type with no constructors. Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Void Source # readList :: ReadS [Void] Source # readPrec :: ReadPrec Void Source # readListPrec :: ReadPrec [Void] Source #
Read Version | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Version Methods readsPrec :: Int -> ReadS Version Source # readList :: ReadS [Version] Source # readPrec :: ReadPrec Version Source # readListPrec :: ReadPrec [Version] Source #
Read CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CBool Source # readList :: ReadS [CBool] Source # readPrec :: ReadPrec CBool Source # readListPrec :: ReadPrec [CBool] Source #
Read CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CChar Source # readList :: ReadS [CChar] Source # readPrec :: ReadPrec CChar Source # readListPrec :: ReadPrec [CChar] Source #
Read CClock |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CClock Source # readList :: ReadS [CClock] Source # readPrec :: ReadPrec CClock Source # readListPrec :: ReadPrec [CClock] Source #
Read CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CDouble Source # readList :: ReadS [CDouble] Source # readPrec :: ReadPrec CDouble Source # readListPrec :: ReadPrec [CDouble] Source #
Read CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CFloat Source # readList :: ReadS [CFloat] Source # readPrec :: ReadPrec CFloat Source # readListPrec :: ReadPrec [CFloat] Source #
Read CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CInt Source # readList :: ReadS [CInt] Source # readPrec :: ReadPrec CInt Source # readListPrec :: ReadPrec [CInt] Source #
Read CIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CIntMax Source # readList :: ReadS [CIntMax] Source # readPrec :: ReadPrec CIntMax Source # readListPrec :: ReadPrec [CIntMax] Source #
Read CIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CIntPtr Source # readList :: ReadS [CIntPtr] Source # readPrec :: ReadPrec CIntPtr Source # readListPrec :: ReadPrec [CIntPtr] Source #
Read CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CLLong Source # readList :: ReadS [CLLong] Source # readPrec :: ReadPrec CLLong Source # readListPrec :: ReadPrec [CLLong] Source #
Read CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CLong Source # readList :: ReadS [CLong] Source # readPrec :: ReadPrec CLong Source # readListPrec :: ReadPrec [CLong] Source #
Read CPtrdiff |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CPtrdiff Source # readList :: ReadS [CPtrdiff] Source # readPrec :: ReadPrec CPtrdiff Source # readListPrec :: ReadPrec [CPtrdiff] Source #
Read CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CSChar Source # readList :: ReadS [CSChar] Source # readPrec :: ReadPrec CSChar Source # readListPrec :: ReadPrec [CSChar] Source #
Read CSUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CSUSeconds Source # readList :: ReadS [CSUSeconds] Source # readPrec :: ReadPrec CSUSeconds Source # readListPrec :: ReadPrec [CSUSeconds] Source #
Read CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CShort Source # readList :: ReadS [CShort] Source # readPrec :: ReadPrec CShort Source # readListPrec :: ReadPrec [CShort] Source #
Read CSigAtomic |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CSigAtomic Source # readList :: ReadS [CSigAtomic] Source # readPrec :: ReadPrec CSigAtomic Source # readListPrec :: ReadPrec [CSigAtomic] Source #
Read CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CSize Source # readList :: ReadS [CSize] Source # readPrec :: ReadPrec CSize Source # readListPrec :: ReadPrec [CSize] Source #
Read CTime |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CTime Source # readList :: ReadS [CTime] Source # readPrec :: ReadPrec CTime Source # readListPrec :: ReadPrec [CTime] Source #
Read CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CUChar Source # readList :: ReadS [CUChar] Source # readPrec :: ReadPrec CUChar Source # readListPrec :: ReadPrec [CUChar] Source #
Read CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CUInt Source # readList :: ReadS [CUInt] Source # readPrec :: ReadPrec CUInt Source # readListPrec :: ReadPrec [CUInt] Source #
Read CUIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CUIntMax Source # readList :: ReadS [CUIntMax] Source # readPrec :: ReadPrec CUIntMax Source # readListPrec :: ReadPrec [CUIntMax] Source #
Read CUIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CUIntPtr Source # readList :: ReadS [CUIntPtr] Source # readPrec :: ReadPrec CUIntPtr Source # readListPrec :: ReadPrec [CUIntPtr] Source #
Read CULLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CULLong Source # readList :: ReadS [CULLong] Source # readPrec :: ReadPrec CULLong Source # readListPrec :: ReadPrec [CULLong] Source #
Read CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CULong Source # readList :: ReadS [CULong] Source # readPrec :: ReadPrec CULong Source # readListPrec :: ReadPrec [CULong] Source #
Read CUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CUSeconds Source # readList :: ReadS [CUSeconds] Source # readPrec :: ReadPrec CUSeconds Source # readListPrec :: ReadPrec [CUSeconds] Source #
Read CUShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CUShort Source # readList :: ReadS [CUShort] Source # readPrec :: ReadPrec CUShort Source # readListPrec :: ReadPrec [CUShort] Source #
Read CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods readsPrec :: Int -> ReadS CWchar Source # readList :: ReadS [CWchar] Source # readPrec :: ReadPrec CWchar Source # readListPrec :: ReadPrec [CWchar] Source #
Read Associativity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS Associativity Source # readList :: ReadS [Associativity] Source # readPrec :: ReadPrec Associativity Source # readListPrec :: ReadPrec [Associativity] Source #
Read DecidedStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS DecidedStrictness Source # readList :: ReadS [DecidedStrictness] Source # readPrec :: ReadPrec DecidedStrictness Source # readListPrec :: ReadPrec [DecidedStrictness] Source #
Read Fixity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS Fixity Source # readList :: ReadS [Fixity] Source # readPrec :: ReadPrec Fixity Source # readListPrec :: ReadPrec [Fixity] Source #
Read SourceStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS SourceStrictness Source # readList :: ReadS [SourceStrictness] Source # readPrec :: ReadPrec SourceStrictness Source # readListPrec :: ReadPrec [SourceStrictness] Source #
Read SourceUnpackedness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS SourceUnpackedness Source # readList :: ReadS [SourceUnpackedness] Source # readPrec :: ReadPrec SourceUnpackedness Source # readListPrec :: ReadPrec [SourceUnpackedness] Source #
Read SeekMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Device Methods readsPrec :: Int -> ReadS SeekMode Source # readList :: ReadS [SeekMode] Source # readPrec :: ReadPrec SeekMode Source # readListPrec :: ReadPrec [SeekMode] Source #
Read ExitCode |
Instance details Defined in GHC.Internal.IO.Exception Methods readsPrec :: Int -> ReadS ExitCode Source # readList :: ReadS [ExitCode] Source # readPrec :: ReadPrec ExitCode Source # readListPrec :: ReadPrec [ExitCode] Source #
Read BufferMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods readsPrec :: Int -> ReadS BufferMode Source # readList :: ReadS [BufferMode] Source # readPrec :: ReadPrec BufferMode Source # readListPrec :: ReadPrec [BufferMode] Source #
Read Newline | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods readsPrec :: Int -> ReadS Newline Source # readList :: ReadS [Newline] Source # readPrec :: ReadPrec Newline Source # readListPrec :: ReadPrec [Newline] Source #
Read NewlineMode | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods readsPrec :: Int -> ReadS NewlineMode Source # readList :: ReadS [NewlineMode] Source # readPrec :: ReadPrec NewlineMode Source # readListPrec :: ReadPrec [NewlineMode] Source #
Read IOMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.IOMode Methods readsPrec :: Int -> ReadS IOMode Source # readList :: ReadS [IOMode] Source # readPrec :: ReadPrec IOMode Source # readListPrec :: ReadPrec [IOMode] Source #
Read Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods readsPrec :: Int -> ReadS Int16 Source # readList :: ReadS [Int16] Source # readPrec :: ReadPrec Int16 Source # readListPrec :: ReadPrec [Int16] Source #
Read Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods readsPrec :: Int -> ReadS Int32 Source # readList :: ReadS [Int32] Source # readPrec :: ReadPrec Int32 Source # readListPrec :: ReadPrec [Int32] Source #
Read Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods readsPrec :: Int -> ReadS Int64 Source # readList :: ReadS [Int64] Source # readPrec :: ReadPrec Int64 Source # readListPrec :: ReadPrec [Int64] Source #
Read Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods readsPrec :: Int -> ReadS Int8 Source # readList :: ReadS [Int8] Source # readPrec :: ReadPrec Int8 Source # readListPrec :: ReadPrec [Int8] Source #
Read GCDetails | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Stats Methods readsPrec :: Int -> ReadS GCDetails Source # readList :: ReadS [GCDetails] Source # readPrec :: ReadPrec GCDetails Source # readListPrec :: ReadPrec [GCDetails] Source #
Read RTSStats | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Stats Methods readsPrec :: Int -> ReadS RTSStats Source # readList :: ReadS [RTSStats] Source # readPrec :: ReadPrec RTSStats Source # readListPrec :: ReadPrec [RTSStats] Source #
Read Lexeme | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Lexeme Source # readList :: ReadS [Lexeme] Source # readPrec :: ReadPrec Lexeme Source # readListPrec :: ReadPrec [Lexeme] Source #
Read GeneralCategory | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS GeneralCategory Source # readList :: ReadS [GeneralCategory] Source # readPrec :: ReadPrec GeneralCategory Source # readListPrec :: ReadPrec [GeneralCategory] Source #
Read Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word16 Source # readList :: ReadS [Word16] Source # readPrec :: ReadPrec Word16 Source # readListPrec :: ReadPrec [Word16] Source #
Read Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word32 Source # readList :: ReadS [Word32] Source # readPrec :: ReadPrec Word32 Source # readListPrec :: ReadPrec [Word32] Source #
Read Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word64 Source # readList :: ReadS [Word64] Source # readPrec :: ReadPrec Word64 Source # readListPrec :: ReadPrec [Word64] Source #
Read Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word8 Source # readList :: ReadS [Word8] Source # readPrec :: ReadPrec Word8 Source # readListPrec :: ReadPrec [Word8] Source #
Read Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Ordering Source # readList :: ReadS [Ordering] Source # readPrec :: ReadPrec Ordering Source # readListPrec :: ReadPrec [Ordering] Source #
Read I8 |
Instance details Defined in Data.Text.Foreign Methods readsPrec :: Int -> ReadS I8 Source # readList :: ReadS [I8] Source # readPrec :: ReadPrec I8 Source # readListPrec :: ReadPrec [I8] Source #
Read Text |
Instance details Defined in Data.Text Methods readsPrec :: Int -> ReadS Text Source # readList :: ReadS [Text] Source # readPrec :: ReadPrec Text Source # readListPrec :: ReadPrec [Text] Source #
Read Text |
Instance details Defined in Data.Text.Lazy Methods readsPrec :: Int -> ReadS Text Source # readList :: ReadS [Text] Source # readPrec :: ReadPrec Text Source # readListPrec :: ReadPrec [Text] Source #
Read FPFormat |
Instance details Defined in Data.Text.Lazy.Builder.RealFloat Methods readsPrec :: Int -> ReadS FPFormat Source # readList :: ReadS [FPFormat] Source # readPrec :: ReadPrec FPFormat Source # readListPrec :: ReadPrec [FPFormat] Source #
Read Day |
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS Day Source # readList :: ReadS [Day] Source # readPrec :: ReadPrec Day Source # readListPrec :: ReadPrec [Day] Source #
Read Month | Read as `yyyy-mm`.
Instance details Defined in Data.Time.Calendar.Month Methods readsPrec :: Int -> ReadS Month Source # readList :: ReadS [Month] Source # readPrec :: ReadPrec Month Source # readListPrec :: ReadPrec [Month] Source #
Read Quarter | Read as `yyyy-Qn`.
Instance details Defined in Data.Time.Calendar.Quarter Methods readsPrec :: Int -> ReadS Quarter Source # readList :: ReadS [Quarter] Source # readPrec :: ReadPrec Quarter Source # readListPrec :: ReadPrec [Quarter] Source #
Read QuarterOfYear |
Instance details Defined in Data.Time.Calendar.Quarter Methods readsPrec :: Int -> ReadS QuarterOfYear Source # readList :: ReadS [QuarterOfYear] Source # readPrec :: ReadPrec QuarterOfYear Source # readListPrec :: ReadPrec [QuarterOfYear] Source #
Read DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods readsPrec :: Int -> ReadS DiffTime Source # readList :: ReadS [DiffTime] Source # readPrec :: ReadPrec DiffTime Source # readListPrec :: ReadPrec [DiffTime] Source #
Read UTCTime |
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS UTCTime Source # readList :: ReadS [UTCTime] Source # readPrec :: ReadPrec UTCTime Source # readListPrec :: ReadPrec [UTCTime] Source #
Read UniversalTime |
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS UniversalTime Source # readList :: ReadS [UniversalTime] Source # readPrec :: ReadPrec UniversalTime Source # readListPrec :: ReadPrec [UniversalTime] Source #
Read LocalTime |
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS LocalTime Source # readList :: ReadS [LocalTime] Source # readPrec :: ReadPrec LocalTime Source # readListPrec :: ReadPrec [LocalTime] Source #
Read TimeOfDay |
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS TimeOfDay Source # readList :: ReadS [TimeOfDay] Source # readPrec :: ReadPrec TimeOfDay Source # readListPrec :: ReadPrec [TimeOfDay] Source #
Read TimeZone | This only works for `±HHMM` format, single-letter military time-zones, and these time-zones: "UTC", "UT", "GMT", "EST", "EDT", "CST", "CDT", "MST", "MDT", "PST", "PDT", per RFC 822 section 5.
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS TimeZone Source # readList :: ReadS [TimeZone] Source # readPrec :: ReadPrec TimeZone Source # readListPrec :: ReadPrec [TimeZone] Source #
Read ZonedTime | This only works for a `zonedTimeZone` in `±HHMM` format, single-letter military time-zones, and these time-zones: "UTC", "UT", "GMT", "EST", "EDT", "CST", "CDT", "MST", "MDT", "PST", "PDT", per RFC 822 section 5.
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS ZonedTime Source # readList :: ReadS [ZonedTime] Source # readPrec :: ReadPrec ZonedTime Source # readListPrec :: ReadPrec [ZonedTime] Source #
Read Integer | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Integer Source # readList :: ReadS [Integer] Source # readPrec :: ReadPrec Integer Source # readListPrec :: ReadPrec [Integer] Source #
Read Natural | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Natural Source # readList :: ReadS [Natural] Source # readPrec :: ReadPrec Natural Source # readListPrec :: ReadPrec [Natural] Source #
Read () | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS () Source # readList :: ReadS [()] Source # readPrec :: ReadPrec () Source # readListPrec :: ReadPrec [()] Source #
Read Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Bool Source # readList :: ReadS [Bool] Source # readPrec :: ReadPrec Bool Source # readListPrec :: ReadPrec [Bool] Source #
Read Char | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Char Source # readList :: ReadS [Char] Source # readPrec :: ReadPrec Char Source # readListPrec :: ReadPrec [Char] Source #
Read Double | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Double Source # readList :: ReadS [Double] Source # readPrec :: ReadPrec Double Source # readListPrec :: ReadPrec [Double] Source #
Read Float | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Float Source # readList :: ReadS [Float] Source # readPrec :: ReadPrec Float Source # readListPrec :: ReadPrec [Float] Source #
Read Int | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Int Source # readList :: ReadS [Int] Source # readPrec :: ReadPrec Int Source # readListPrec :: ReadPrec [Int] Source #
Read Word | Since: base-4.5.0.0
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS Word Source # readList :: ReadS [Word] Source # readPrec :: ReadPrec Word Source # readListPrec :: ReadPrec [Word] Source #
Read a => Read (Complex a) | Since: base-2.1
Instance details Defined in Data.Complex Methods readsPrec :: Int -> ReadS (Complex a) Source # readList :: ReadS [Complex a] Source # readPrec :: ReadPrec (Complex a) Source # readListPrec :: ReadPrec [Complex a] Source #
Read a => Read (First a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods readsPrec :: Int -> ReadS (First a) Source # readList :: ReadS [First a] Source # readPrec :: ReadPrec (First a) Source # readListPrec :: ReadPrec [First a] Source #
Read a => Read (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods readsPrec :: Int -> ReadS (Last a) Source # readList :: ReadS [Last a] Source # readPrec :: ReadPrec (Last a) Source # readListPrec :: ReadPrec [Last a] Source #
Read a => Read (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods readsPrec :: Int -> ReadS (Max a) Source # readList :: ReadS [Max a] Source # readPrec :: ReadPrec (Max a) Source # readListPrec :: ReadPrec [Max a] Source #
Read a => Read (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods readsPrec :: Int -> ReadS (Min a) Source # readList :: ReadS [Min a] Source # readPrec :: ReadPrec (Min a) Source # readListPrec :: ReadPrec [Min a] Source #
Read m => Read (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods readsPrec :: Int -> ReadS (WrappedMonoid m) Source # readList :: ReadS [WrappedMonoid m] Source # readPrec :: ReadPrec (WrappedMonoid m) Source # readListPrec :: ReadPrec [WrappedMonoid m] Source #
Read vertex => Read (SCC vertex) | Since: containers-0.5.9
Instance details Defined in Data.Graph Methods readsPrec :: Int -> ReadS (SCC vertex) Source # readList :: ReadS [SCC vertex] Source # readPrec :: ReadPrec (SCC vertex) Source # readListPrec :: ReadPrec [SCC vertex] Source #
Read e => Read (IntMap e) |
Instance details Defined in Data.IntMap.Internal Methods readsPrec :: Int -> ReadS (IntMap e) Source # readList :: ReadS [IntMap e] Source # readPrec :: ReadPrec (IntMap e) Source # readListPrec :: ReadPrec [IntMap e] Source #
Read a => Read (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods readsPrec :: Int -> ReadS (Seq a) Source # readList :: ReadS [Seq a] Source # readPrec :: ReadPrec (Seq a) Source # readListPrec :: ReadPrec [Seq a] Source #
Read a => Read (ViewL a) |
Instance details Defined in Data.Sequence.Internal Methods readsPrec :: Int -> ReadS (ViewL a) Source # readList :: ReadS [ViewL a] Source # readPrec :: ReadPrec (ViewL a) Source # readListPrec :: ReadPrec [ViewL a] Source #
Read a => Read (ViewR a) |
Instance details Defined in Data.Sequence.Internal Methods readsPrec :: Int -> ReadS (ViewR a) Source # readList :: ReadS [ViewR a] Source # readPrec :: ReadPrec (ViewR a) Source # readListPrec :: ReadPrec [ViewR a] Source #
(Read a, Ord a) => Read (Set a) |
Instance details Defined in Data.Set.Internal Methods readsPrec :: Int -> ReadS (Set a) Source # readList :: ReadS [Set a] Source # readPrec :: ReadPrec (Set a) Source # readListPrec :: ReadPrec [Set a] Source #
Read a => Read (Tree a) |
Instance details Defined in Data.Tree Methods readsPrec :: Int -> ReadS (Tree a) Source # readList :: ReadS [Tree a] Source # readPrec :: ReadPrec (Tree a) Source # readListPrec :: ReadPrec [Tree a] Source #
Read a => Read (DList a) |
Instance details Defined in Data.DList.Internal Methods readsPrec :: Int -> ReadS (DList a) Source # readList :: ReadS [DList a] Source # readPrec :: ReadPrec (DList a) Source # readListPrec :: ReadPrec [DList a] Source #
Read a => Read (NonEmpty a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (NonEmpty a) Source # readList :: ReadS [NonEmpty a] Source # readPrec :: ReadPrec (NonEmpty a) Source # readListPrec :: ReadPrec [NonEmpty a] Source #
Read a => Read (Identity a) | This instance would be equivalent to the derived instances of the `Identity` newtype if the `runIdentity` field were removed Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods readsPrec :: Int -> ReadS (Identity a) Source # readList :: ReadS [Identity a] Source # readPrec :: ReadPrec (Identity a) Source # readListPrec :: ReadPrec [Identity a] Source #
Read a => Read (Down a) | This instance would be equivalent to the derived instances of the `Down` newtype if the `getDown` field were removed Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods readsPrec :: Int -> ReadS (Down a) Source # readList :: ReadS [Down a] Source # readPrec :: ReadPrec (Down a) Source # readListPrec :: ReadPrec [Down a] Source #
Read p => Read (Par1 p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS (Par1 p) Source # readList :: ReadS [Par1 p] Source # readPrec :: ReadPrec (Par1 p) Source # readListPrec :: ReadPrec [Par1 p] Source #
(Integral a, Read a) => Read (Ratio a) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (Ratio a) Source # readList :: ReadS [Ratio a] Source # readPrec :: ReadPrec (Ratio a) Source # readListPrec :: ReadPrec [Ratio a] Source #
Read mono => Read (NonNull mono) |
Instance details Defined in Data.NonNull Methods readsPrec :: Int -> ReadS (NonNull mono) Source # readList :: ReadS [NonNull mono] Source # readPrec :: ReadPrec (NonNull mono) Source # readListPrec :: ReadPrec [NonNull mono] Source #
Read a => Read (Array a) |
Instance details Defined in Data.Primitive.Array Methods readsPrec :: Int -> ReadS (Array a) Source # readList :: ReadS [Array a] Source # readPrec :: ReadPrec (Array a) Source # readListPrec :: ReadPrec [Array a] Source #
Read a => Read (SmallArray a) |
Instance details Defined in Data.Primitive.SmallArray Methods readsPrec :: Int -> ReadS (SmallArray a) Source # readList :: ReadS [SmallArray a] Source # readPrec :: ReadPrec (SmallArray a) Source # readListPrec :: ReadPrec [SmallArray a] Source #
(Eq a, Hashable a, Read a) => Read (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods readsPrec :: Int -> ReadS (HashSet a) Source # readList :: ReadS [HashSet a] Source # readPrec :: ReadPrec (HashSet a) Source # readListPrec :: ReadPrec [HashSet a] Source #
Read a => Read (Vector a) |
Instance details Defined in Data.Vector Methods readsPrec :: Int -> ReadS (Vector a) Source # readList :: ReadS [Vector a] Source # readPrec :: ReadPrec (Vector a) Source # readListPrec :: ReadPrec [Vector a] Source #
(Read a, Prim a) => Read (Vector a) |
Instance details Defined in Data.Vector.Primitive Methods readsPrec :: Int -> ReadS (Vector a) Source # readList :: ReadS [Vector a] Source # readPrec :: ReadPrec (Vector a) Source # readListPrec :: ReadPrec [Vector a] Source #
(Read a, Storable a) => Read (Vector a) |
Instance details Defined in Data.Vector.Storable Methods readsPrec :: Int -> ReadS (Vector a) Source # readList :: ReadS [Vector a] Source # readPrec :: ReadPrec (Vector a) Source # readListPrec :: ReadPrec [Vector a] Source #
Read a => Read (Vector a) |
Instance details Defined in Data.Vector.Strict Methods readsPrec :: Int -> ReadS (Vector a) Source # readList :: ReadS [Vector a] Source # readPrec :: ReadPrec (Vector a) Source # readListPrec :: ReadPrec [Vector a] Source #
(Read a, Unbox a) => Read (Vector a) |
Instance details Defined in Data.Vector.Unboxed Methods readsPrec :: Int -> ReadS (Vector a) Source # readList :: ReadS [Vector a] Source # readPrec :: ReadPrec (Vector a) Source # readListPrec :: ReadPrec [Vector a] Source #
Read a => Read (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (Maybe a) Source # readList :: ReadS [Maybe a] Source # readPrec :: ReadPrec (Maybe a) Source # readListPrec :: ReadPrec [Maybe a] Source #
Read a => Read (Solo a) | Since: base-4.15
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (Solo a) Source # readList :: ReadS [Solo a] Source # readPrec :: ReadPrec (Solo a) Source # readListPrec :: ReadPrec [Solo a] Source #
Read a => Read [a] | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS [a] Source # readList :: ReadS [[a]] Source # readPrec :: ReadPrec [a] Source # readListPrec :: ReadPrec [[a]] Source #
HasResolution a => Read (Fixed a) | Since: base-4.3.0.0
Instance details Defined in Data.Fixed Methods readsPrec :: Int -> ReadS (Fixed a) Source # readList :: ReadS [Fixed a] Source # readPrec :: ReadPrec (Fixed a) Source # readListPrec :: ReadPrec [Fixed a] Source #
(Read a, Read b) => Read (Arg a b) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods readsPrec :: Int -> ReadS (Arg a b) Source # readList :: ReadS [Arg a b] Source # readPrec :: ReadPrec (Arg a b) Source # readListPrec :: ReadPrec [Arg a b] Source #
(Ord k, Read k, Read e) => Read (Map k e) |
Instance details Defined in Data.Map.Internal Methods readsPrec :: Int -> ReadS (Map k e) Source # readList :: ReadS [Map k e] Source # readPrec :: ReadPrec (Map k e) Source # readListPrec :: ReadPrec [Map k e] Source #
(Read1 f, Read a) => Read (Cofree f a) |
Instance details Defined in Control.Comonad.Cofree Methods readsPrec :: Int -> ReadS (Cofree f a) Source # readList :: ReadS [Cofree f a] Source # readPrec :: ReadPrec (Cofree f a) Source # readListPrec :: ReadPrec [Cofree f a] Source #
(Read1 f, Read a) => Read (Free f a) |
Instance details Defined in Control.Monad.Free Methods readsPrec :: Int -> ReadS (Free f a) Source # readList :: ReadS [Free f a] Source # readPrec :: ReadPrec (Free f a) Source # readListPrec :: ReadPrec [Free f a] Source #
(Ix a, Read a, Read b) => Read (Array a b) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (Array a b) Source # readList :: ReadS [Array a b] Source # readPrec :: ReadPrec (Array a b) Source # readListPrec :: ReadPrec [Array a b] Source #
(Read a, Read b) => Read (Either a b) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods readsPrec :: Int -> ReadS (Either a b) Source # readList :: ReadS [Either a b] Source # readPrec :: ReadPrec (Either a b) Source # readListPrec :: ReadPrec [Either a b] Source #
Read (U1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS (U1 p) Source # readList :: ReadS [U1 p] Source # readPrec :: ReadPrec (U1 p) Source # readListPrec :: ReadPrec [U1 p] Source #
Read (V1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS (V1 p) Source # readList :: ReadS [V1 p] Source # readPrec :: ReadPrec (V1 p) Source # readListPrec :: ReadPrec [V1 p] Source #
(Read1 f, Read a) => Read (Lift f a) |
Instance details Defined in Control.Applicative.Lift Methods readsPrec :: Int -> ReadS (Lift f a) Source # readList :: ReadS [Lift f a] Source # readPrec :: ReadPrec (Lift f a) Source # readListPrec :: ReadPrec [Lift f a] Source #
(Read1 m, Read a) => Read (MaybeT m a) |
Instance details Defined in Control.Monad.Trans.Maybe Methods readsPrec :: Int -> ReadS (MaybeT m a) Source # readList :: ReadS [MaybeT m a] Source # readPrec :: ReadPrec (MaybeT m a) Source # readListPrec :: ReadPrec [MaybeT m a] Source #
(Eq k, Hashable k, Read k, Read e) => Read (HashMap k e) |
Instance details Defined in Data.HashMap.Internal Methods readsPrec :: Int -> ReadS (HashMap k e) Source # readList :: ReadS [HashMap k e] Source # readPrec :: ReadPrec (HashMap k e) Source # readListPrec :: ReadPrec [HashMap k e] Source #
(Read a, Read b) => Read (a, b) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b) Source # readList :: ReadS [(a, b)] Source # readPrec :: ReadPrec (a, b) Source # readListPrec :: ReadPrec [(a, b)] Source #
Read (bi a b) => Read (Biap bi a b) |
Instance details Defined in Data.Bifunctor.Biap Methods readsPrec :: Int -> ReadS (Biap bi a b) Source # readList :: ReadS [Biap bi a b] Source # readPrec :: ReadPrec (Biap bi a b) Source # readListPrec :: ReadPrec [Biap bi a b] Source #
Read (p (Fix p a) a) => Read (Fix p a) |
Instance details Defined in Data.Bifunctor.Fix Methods readsPrec :: Int -> ReadS (Fix p a) Source # readList :: ReadS [Fix p a] Source # readPrec :: ReadPrec (Fix p a) Source # readListPrec :: ReadPrec [Fix p a] Source #
Read (p a a) => Read (Join p a) |
Instance details Defined in Data.Bifunctor.Join Methods readsPrec :: Int -> ReadS (Join p a) Source # readList :: ReadS [Join p a] Source # readPrec :: ReadPrec (Join p a) Source # readListPrec :: ReadPrec [Join p a] Source #
(Read a, Read (f b)) => Read (FreeF f a b) |
Instance details Defined in Control.Monad.Trans.Free Methods readsPrec :: Int -> ReadS (FreeF f a b) Source # readList :: ReadS [FreeF f a b] Source # readPrec :: ReadPrec (FreeF f a b) Source # readListPrec :: ReadPrec [FreeF f a b] Source #
(Read1 f, Read1 m, Read a) => Read (FreeT f m a) |
Instance details Defined in Control.Monad.Trans.Free Methods readsPrec :: Int -> ReadS (FreeT f m a) Source # readList :: ReadS [FreeT f m a] Source # readPrec :: ReadPrec (FreeT f m a) Source # readListPrec :: ReadPrec [FreeT f m a] Source #
Read (f p) => Read (Rec1 f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS (Rec1 f p) Source # readList :: ReadS [Rec1 f p] Source # readPrec :: ReadPrec (Rec1 f p) Source # readListPrec :: ReadPrec [Rec1 f p] Source #
Read b => Read (Tagged s b) |
Instance details Defined in Data.Tagged Methods readsPrec :: Int -> ReadS (Tagged s b) Source # readList :: ReadS [Tagged s b] Source # readPrec :: ReadPrec (Tagged s b) Source # readListPrec :: ReadPrec [Tagged s b] Source #
(Read1 f, Read a) => Read (Backwards f a) |
Instance details Defined in Control.Applicative.Backwards Methods readsPrec :: Int -> ReadS (Backwards f a) Source # readList :: ReadS [Backwards f a] Source # readPrec :: ReadPrec (Backwards f a) Source # readListPrec :: ReadPrec [Backwards f a] Source #
(Read e, Read1 m, Read a) => Read (ExceptT e m a) |
Instance details Defined in Control.Monad.Trans.Except Methods readsPrec :: Int -> ReadS (ExceptT e m a) Source # readList :: ReadS [ExceptT e m a] Source # readPrec :: ReadPrec (ExceptT e m a) Source # readListPrec :: ReadPrec [ExceptT e m a] Source #
(Read1 f, Read a) => Read (IdentityT f a) |
Instance details Defined in Control.Monad.Trans.Identity Methods readsPrec :: Int -> ReadS (IdentityT f a) Source # readList :: ReadS [IdentityT f a] Source # readPrec :: ReadPrec (IdentityT f a) Source # readListPrec :: ReadPrec [IdentityT f a] Source #
(Read w, Read1 m, Read a) => Read (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods readsPrec :: Int -> ReadS (WriterT w m a) Source # readList :: ReadS [WriterT w m a] Source # readPrec :: ReadPrec (WriterT w m a) Source # readListPrec :: ReadPrec [WriterT w m a] Source #
(Read w, Read1 m, Read a) => Read (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods readsPrec :: Int -> ReadS (WriterT w m a) Source # readList :: ReadS [WriterT w m a] Source # readPrec :: ReadPrec (WriterT w m a) Source # readListPrec :: ReadPrec [WriterT w m a] Source #
Read a => Read (Constant a b) |
Instance details Defined in Data.Functor.Constant Methods readsPrec :: Int -> ReadS (Constant a b) Source # readList :: ReadS [Constant a b] Source # readPrec :: ReadPrec (Constant a b) Source # readListPrec :: ReadPrec [Constant a b] Source #
(Read1 f, Read a) => Read (Reverse f a) |
Instance details Defined in Data.Functor.Reverse Methods readsPrec :: Int -> ReadS (Reverse f a) Source # readList :: ReadS [Reverse f a] Source # readPrec :: ReadPrec (Reverse f a) Source # readListPrec :: ReadPrec [Reverse f a] Source #
(Read a, Read b, Read c) => Read (a, b, c) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c) Source # readList :: ReadS [(a, b, c)] Source # readPrec :: ReadPrec (a, b, c) Source # readListPrec :: ReadPrec [(a, b, c)] Source #
(Read (f a), Read (g a)) => Read (Product f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Product Methods readsPrec :: Int -> ReadS (Product f g a) Source # readList :: ReadS [Product f g a] Source # readPrec :: ReadPrec (Product f g a) Source # readListPrec :: ReadPrec [Product f g a] Source #
(Read (f a), Read (g a)) => Read (Sum f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Sum Methods readsPrec :: Int -> ReadS (Sum f g a) Source # readList :: ReadS [Sum f g a] Source # readPrec :: ReadPrec (Sum f g a) Source # readListPrec :: ReadPrec [Sum f g a] Source #
(Read (f p), Read (g p)) => Read ((f :*: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS ((f :*: g) p) Source # readList :: ReadS [(f :*: g) p] Source # readPrec :: ReadPrec ((f :*: g) p) Source # readListPrec :: ReadPrec [(f :*: g) p] Source #
(Read (f p), Read (g p)) => Read ((f :+: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS ((f :+: g) p) Source # readList :: ReadS [(f :+: g) p] Source # readPrec :: ReadPrec ((f :+: g) p) Source # readListPrec :: ReadPrec [(f :+: g) p] Source #
Read c => Read (K1 i c p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS (K1 i c p) Source # readList :: ReadS [K1 i c p] Source # readPrec :: ReadPrec (K1 i c p) Source # readListPrec :: ReadPrec [K1 i c p] Source #
(Read a, Read b, Read c, Read d) => Read (a, b, c, d) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d) Source # readList :: ReadS [(a, b, c, d)] Source # readPrec :: ReadPrec (a, b, c, d) Source # readListPrec :: ReadPrec [(a, b, c, d)] Source #
Read (f (g a)) => Read (Compose f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Compose Methods readsPrec :: Int -> ReadS (Compose f g a) Source # readList :: ReadS [Compose f g a] Source # readPrec :: ReadPrec (Compose f g a) Source # readListPrec :: ReadPrec [Compose f g a] Source #
Read (f a) => Read (Clown f a b) |
Instance details Defined in Data.Bifunctor.Clown Methods readsPrec :: Int -> ReadS (Clown f a b) Source # readList :: ReadS [Clown f a b] Source # readPrec :: ReadPrec (Clown f a b) Source # readListPrec :: ReadPrec [Clown f a b] Source #
Read (p b a) => Read (Flip p a b) |
Instance details Defined in Data.Bifunctor.Flip Methods readsPrec :: Int -> ReadS (Flip p a b) Source # readList :: ReadS [Flip p a b] Source # readPrec :: ReadPrec (Flip p a b) Source # readListPrec :: ReadPrec [Flip p a b] Source #
Read (g b) => Read (Joker g a b) |
Instance details Defined in Data.Bifunctor.Joker Methods readsPrec :: Int -> ReadS (Joker g a b) Source # readList :: ReadS [Joker g a b] Source # readPrec :: ReadPrec (Joker g a b) Source # readListPrec :: ReadPrec [Joker g a b] Source #
Read (p a b) => Read (WrappedBifunctor p a b) |
Instance details Defined in Data.Bifunctor.Wrapped Methods readsPrec :: Int -> ReadS (WrappedBifunctor p a b) Source # readList :: ReadS [WrappedBifunctor p a b] Source # readPrec :: ReadPrec (WrappedBifunctor p a b) Source # readListPrec :: ReadPrec [WrappedBifunctor p a b] Source #
Read (f (g p)) => Read ((f :.: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS ((f :.: g) p) Source # readList :: ReadS [(f :.: g) p] Source # readPrec :: ReadPrec ((f :.: g) p) Source # readListPrec :: ReadPrec [(f :.: g) p] Source #
Read (f p) => Read (M1 i c f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods readsPrec :: Int -> ReadS (M1 i c f p) Source # readList :: ReadS [M1 i c f p] Source # readPrec :: ReadPrec (M1 i c f p) Source # readListPrec :: ReadPrec [M1 i c f p] Source #
(Read a, Read b, Read c, Read d, Read e) => Read (a, b, c, d, e) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e) Source # readList :: ReadS [(a, b, c, d, e)] Source # readPrec :: ReadPrec (a, b, c, d, e) Source # readListPrec :: ReadPrec [(a, b, c, d, e)] Source #
(Read (f a b), Read (g a b)) => Read (Product f g a b) |
Instance details Defined in Data.Bifunctor.Product Methods readsPrec :: Int -> ReadS (Product f g a b) Source # readList :: ReadS [Product f g a b] Source # readPrec :: ReadPrec (Product f g a b) Source # readListPrec :: ReadPrec [Product f g a b] Source #
(Read (p a b), Read (q a b)) => Read (Sum p q a b) |
Instance details Defined in Data.Bifunctor.Sum Methods readsPrec :: Int -> ReadS (Sum p q a b) Source # readList :: ReadS [Sum p q a b] Source # readPrec :: ReadPrec (Sum p q a b) Source # readListPrec :: ReadPrec [Sum p q a b] Source #
(Read a, Read b, Read c, Read d, Read e, Read f) => Read (a, b, c, d, e, f) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f) Source # readList :: ReadS [(a, b, c, d, e, f)] Source # readPrec :: ReadPrec (a, b, c, d, e, f) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f)] Source #
Read (f (p a b)) => Read (Tannen f p a b) |
Instance details Defined in Data.Bifunctor.Tannen Methods readsPrec :: Int -> ReadS (Tannen f p a b) Source # readList :: ReadS [Tannen f p a b] Source # readPrec :: ReadPrec (Tannen f p a b) Source # readListPrec :: ReadPrec [Tannen f p a b] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g) => Read (a, b, c, d, e, f, g) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g) Source # readList :: ReadS [(a, b, c, d, e, f, g)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g)] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h) => Read (a, b, c, d, e, f, g, h) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h) Source # readList :: ReadS [(a, b, c, d, e, f, g, h)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g, h) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h)] Source #
Read (p (f a) (g b)) => Read (Biff p f g a b) |
Instance details Defined in Data.Bifunctor.Biff Methods readsPrec :: Int -> ReadS (Biff p f g a b) Source # readList :: ReadS [Biff p f g a b] Source # readPrec :: ReadPrec (Biff p f g a b) Source # readListPrec :: ReadPrec [Biff p f g a b] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i) => Read (a, b, c, d, e, f, g, h, i) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i) Source # readList :: ReadS [(a, b, c, d, e, f, g, h, i)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i)] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j) => Read (a, b, c, d, e, f, g, h, i, j) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j) Source # readList :: ReadS [(a, b, c, d, e, f, g, h, i, j)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j)] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k) => Read (a, b, c, d, e, f, g, h, i, j, k) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k) Source # readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k)] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k, Read l) => Read (a, b, c, d, e, f, g, h, i, j, k, l) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k, l) Source # readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k, l)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k, l) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k, l)] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k, Read l, Read m) => Read (a, b, c, d, e, f, g, h, i, j, k, l, m) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k, l, m) Source # readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k, l, m)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k, l, m) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k, l, m)] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k, Read l, Read m, Read n) => Read (a, b, c, d, e, f, g, h, i, j, k, l, m, n) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source # readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] Source #
(Read a, Read b, Read c, Read d, Read e, Read f, Read g, Read h, Read i, Read j, Read k, Read l, Read m, Read n, Read o) => Read (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) | Since: base-2.1
Instance details Defined in GHC.Internal.Read Methods readsPrec :: Int -> ReadS (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source # readList :: ReadS [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] Source # readPrec :: ReadPrec (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source # readListPrec :: ReadPrec [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] Source #

class (RealFrac a, Floating a) => RealFloat a where Source #

Efficient, machine-independent access to the components of a floating-point number.

Minimal complete definition

floatRadix, floatDigits, floatRange, decodeFloat, encodeFloat, isNaN, isInfinite, isDenormalized, isNegativeZero, isIEEE

Methods

floatRadix :: a -> Integer Source #

a constant function, returning the radix of the representation (often `2`)

floatDigits :: a -> Int Source #

a constant function, returning the number of digits of `floatRadix` in the significand

floatRange :: a -> (Int, Int) Source #

a constant function, returning the lowest and highest values the exponent may assume

decodeFloat :: a -> (Integer, Int) Source #

The function `decodeFloat` applied to a real floating-point number returns the significand expressed as an `Integer` and an appropriately scaled exponent (an `Int`). If ``decodeFloat` x` yields `(m,n)`, then `x` is equal in value to `m*b^^n`, where `b` is the floating-point radix, and furthermore, either `m` and `n` are both zero or else `b^(d-1) <= `abs` m < b^d`, where `d` is the value of ``floatDigits` x`. In particular, ``decodeFloat` 0 = (0,0)`. If the type contains a negative zero, also ``decodeFloat` (-0.0) = (0,0)`. The result of ``decodeFloat` x` is unspecified if either of ``isNaN` x` or ``isInfinite` x` is `True`.

encodeFloat :: Integer -> Int -> a Source #

`encodeFloat` performs the inverse of `decodeFloat` in the sense that for finite `x` with the exception of `-0.0`, ``uncurry` `encodeFloat` (`decodeFloat` x) = x`. ``encodeFloat` m n` is one of the two closest representable floating-point numbers to `m*b^^n` (or `±Infinity` if overflow occurs); usually the closer, but if `m` contains too many bits, the result may be rounded in the wrong direction.

exponent :: a -> Int Source #

`exponent` corresponds to the second component of `decodeFloat`. ``exponent` 0 = 0` and for finite nonzero `x`, ``exponent` x = snd (`decodeFloat` x) + `floatDigits` x`. If `x` is a finite floating-point number, it is equal in value to ``significand` x * b ^^ `exponent` x`, where `b` is the floating-point radix. The behaviour is unspecified on infinite or `NaN` values.

significand :: a -> a Source #

The first component of `decodeFloat`, scaled to lie in the open interval (`-1`,`1`), either `0.0` or of absolute value `>= 1/b`, where `b` is the floating-point radix. The behaviour is unspecified on infinite or `NaN` values.

scaleFloat :: Int -> a -> a Source #

multiplies a floating-point number by an integer power of the radix

isNaN :: a -> Bool Source #

`True` if the argument is an IEEE "not-a-number" (NaN) value

isInfinite :: a -> Bool Source #

`True` if the argument is an IEEE infinity or negative infinity

isDenormalized :: a -> Bool Source #

`True` if the argument is too small to be represented in normalized format

isNegativeZero :: a -> Bool Source #

`True` if the argument is an IEEE negative zero

isIEEE :: a -> Bool Source #

`True` if the argument is an IEEE floating point number

atan2 :: a -> a -> a Source #

a version of arctangent taking two real floating-point arguments. For real floating `x` and `y`, ``atan2` y x` computes the angle (from the positive x-axis) of the vector from the origin to the point `(x,y)`. ``atan2` y x` returns a value in the range [`-pi`, `pi`]. It follows the Common Lisp semantics for the origin when signed zeroes are supported. ``atan2` y 1`, with `y` in a type that is `RealFloat`, should return the same value as ``atan` y`. A default definition of `atan2` is provided, but implementors can provide a more accurate implementation.

#### Instances

Instances details

RealFloat CDouble |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

floatRadix :: CDouble -> Integer Source #

floatDigits :: CDouble -> Int Source #

floatRange :: CDouble -> (Int, Int) Source #

decodeFloat :: CDouble -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> CDouble Source #

exponent :: CDouble -> Int Source #

significand :: CDouble -> CDouble Source #

scaleFloat :: Int -> CDouble -> CDouble Source #

isNaN :: CDouble -> Bool Source #

isInfinite :: CDouble -> Bool Source #

isDenormalized :: CDouble -> Bool Source #

isNegativeZero :: CDouble -> Bool Source #

isIEEE :: CDouble -> Bool Source #

atan2 :: CDouble -> CDouble -> CDouble Source #

RealFloat CFloat |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

floatRadix :: CFloat -> Integer Source #

floatDigits :: CFloat -> Int Source #

floatRange :: CFloat -> (Int, Int) Source #

decodeFloat :: CFloat -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> CFloat Source #

exponent :: CFloat -> Int Source #

significand :: CFloat -> CFloat Source #

scaleFloat :: Int -> CFloat -> CFloat Source #

isNaN :: CFloat -> Bool Source #

isInfinite :: CFloat -> Bool Source #

isDenormalized :: CFloat -> Bool Source #

isNegativeZero :: CFloat -> Bool Source #

isIEEE :: CFloat -> Bool Source #

atan2 :: CFloat -> CFloat -> CFloat Source #

RealFloat Double | Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

floatRadix :: Double -> Integer Source #

floatDigits :: Double -> Int Source #

floatRange :: Double -> (Int, Int) Source #

decodeFloat :: Double -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Double Source #

exponent :: Double -> Int Source #

significand :: Double -> Double Source #

scaleFloat :: Int -> Double -> Double Source #

isNaN :: Double -> Bool Source #

isInfinite :: Double -> Bool Source #

isDenormalized :: Double -> Bool Source #

isNegativeZero :: Double -> Bool Source #

isIEEE :: Double -> Bool Source #

atan2 :: Double -> Double -> Double Source #

RealFloat Float | Since: base-2.1

Instance details

Defined in GHC.Internal.Float

Methods

floatRadix :: Float -> Integer Source #

floatDigits :: Float -> Int Source #

floatRange :: Float -> (Int, Int) Source #

decodeFloat :: Float -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Float Source #

exponent :: Float -> Int Source #

significand :: Float -> Float Source #

scaleFloat :: Int -> Float -> Float Source #

isNaN :: Float -> Bool Source #

isInfinite :: Float -> Bool Source #

isDenormalized :: Float -> Bool Source #

isNegativeZero :: Float -> Bool Source #

isIEEE :: Float -> Bool Source #

atan2 :: Float -> Float -> Float Source #

RealFloat a => RealFloat (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

floatRadix :: Identity a -> Integer Source #

floatDigits :: Identity a -> Int Source #

floatRange :: Identity a -> (Int, Int) Source #

decodeFloat :: Identity a -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Identity a Source #

exponent :: Identity a -> Int Source #

significand :: Identity a -> Identity a Source #

scaleFloat :: Int -> Identity a -> Identity a Source #

isNaN :: Identity a -> Bool Source #

isInfinite :: Identity a -> Bool Source #

isDenormalized :: Identity a -> Bool Source #

isNegativeZero :: Identity a -> Bool Source #

isIEEE :: Identity a -> Bool Source #

atan2 :: Identity a -> Identity a -> Identity a Source #

RealFloat a => RealFloat (Down a) | Since: base-4.14.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

floatRadix :: Down a -> Integer Source #

floatDigits :: Down a -> Int Source #

floatRange :: Down a -> (Int, Int) Source #

decodeFloat :: Down a -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Down a Source #

exponent :: Down a -> Int Source #

significand :: Down a -> Down a Source #

scaleFloat :: Int -> Down a -> Down a Source #

isNaN :: Down a -> Bool Source #

isInfinite :: Down a -> Bool Source #

isDenormalized :: Down a -> Bool Source #

isNegativeZero :: Down a -> Bool Source #

isIEEE :: Down a -> Bool Source #

atan2 :: Down a -> Down a -> Down a Source #

RealFloat a => RealFloat (Tagged s a) |

Instance details

Defined in Data.Tagged

Methods

floatRadix :: Tagged s a -> Integer Source #

floatDigits :: Tagged s a -> Int Source #

floatRange :: Tagged s a -> (Int, Int) Source #

decodeFloat :: Tagged s a -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Tagged s a Source #

exponent :: Tagged s a -> Int Source #

significand :: Tagged s a -> Tagged s a Source #

scaleFloat :: Int -> Tagged s a -> Tagged s a Source #

isNaN :: Tagged s a -> Bool Source #

isInfinite :: Tagged s a -> Bool Source #

isDenormalized :: Tagged s a -> Bool Source #

isNegativeZero :: Tagged s a -> Bool Source #

isIEEE :: Tagged s a -> Bool Source #

atan2 :: Tagged s a -> Tagged s a -> Tagged s a Source #

RealFloat (f (g a)) => RealFloat (Compose f g a) | Since: base-4.20.0.0

Instance details

Defined in Data.Functor.Compose

Methods

floatRadix :: Compose f g a -> Integer Source #

floatDigits :: Compose f g a -> Int Source #

floatRange :: Compose f g a -> (Int, Int) Source #

decodeFloat :: Compose f g a -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Compose f g a Source #

exponent :: Compose f g a -> Int Source #

significand :: Compose f g a -> Compose f g a Source #

scaleFloat :: Int -> Compose f g a -> Compose f g a Source #

isNaN :: Compose f g a -> Bool Source #

isInfinite :: Compose f g a -> Bool Source #

isDenormalized :: Compose f g a -> Bool Source #

isNegativeZero :: Compose f g a -> Bool Source #

isIEEE :: Compose f g a -> Bool Source #

atan2 :: Compose f g a -> Compose f g a -> Compose f g a Source #

class (Real a, Fractional a) => RealFrac a where Source #

Extracting components of fractions.

Minimal complete definition

properFraction

Methods

properFraction :: Integral b => a -> (b, a) Source #

The function `properFraction` takes a real fractional number `x` and returns a pair `(n,f)` such that `x = n+f`, and:

- `n` is an integral number with the same sign as `x`; and
- `f` is a fraction with the same type and sign as `x`, and with absolute value less than `1`.

The default definitions of the `ceiling`, `floor`, `truncate` and `round` functions are in terms of `properFraction`.

truncate :: Integral b => a -> b Source #

``truncate` x` returns the integer nearest `x` between zero and `x`

round :: Integral b => a -> b Source #

``round` x` returns the nearest integer to `x`; the even integer if `x` is equidistant between two integers

ceiling :: Integral b => a -> b Source #

``ceiling` x` returns the least integer not less than `x`

floor :: Integral b => a -> b Source #

``floor` x` returns the greatest integer not greater than `x`

#### Instances

Instances details

RealFrac CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods properFraction :: Integral b => CDouble -> (b, CDouble) Source # truncate :: Integral b => CDouble -> b Source # round :: Integral b => CDouble -> b Source # ceiling :: Integral b => CDouble -> b Source # floor :: Integral b => CDouble -> b Source #
RealFrac CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods properFraction :: Integral b => CFloat -> (b, CFloat) Source # truncate :: Integral b => CFloat -> b Source # round :: Integral b => CFloat -> b Source # ceiling :: Integral b => CFloat -> b Source # floor :: Integral b => CFloat -> b Source #
RealFrac DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods properFraction :: Integral b => DiffTime -> (b, DiffTime) Source # truncate :: Integral b => DiffTime -> b Source # round :: Integral b => DiffTime -> b Source # ceiling :: Integral b => DiffTime -> b Source # floor :: Integral b => DiffTime -> b Source #

RealFrac Double

Beware that results for non-finite arguments are garbage:

    >>> [ f x | f <- [round, floor, ceiling], x <- [-1/0, 0/0, 1/0] ] :: [Int]
    [0,0,0,0,0,0,0,0,0]
    >>> map properFraction [-1/0, 0/0, 1/0] :: [(Int, Double)]
    [(0,0.0),(0,0.0),(0,0.0)]

and get even more non-sensical if you ask for `Integer` instead of `Int`.

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods properFraction :: Integral b => Double -> (b, Double) Source # truncate :: Integral b => Double -> b Source # round :: Integral b => Double -> b Source # ceiling :: Integral b => Double -> b Source # floor :: Integral b => Double -> b Source #

RealFrac Float

Beware that results for non-finite arguments are garbage:

    >>> [ f x | f <- [round, floor, ceiling], x <- [-1/0, 0/0, 1/0 :: Float] ] :: [Int]
    [0,0,0,0,0,0,0,0,0]
    >>> map properFraction [-1/0, 0/0, 1/0] :: [(Int, Float)]
    [(0,0.0),(0,0.0),(0,0.0)]

and get even more non-sensical if you ask for `Integer` instead of `Int`.

Since: base-2.1

Instance details Defined in GHC.Internal.Float Methods properFraction :: Integral b => Float -> (b, Float) Source # truncate :: Integral b => Float -> b Source # round :: Integral b => Float -> b Source # ceiling :: Integral b => Float -> b Source # floor :: Integral b => Float -> b Source #
RealFrac a => RealFrac (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods properFraction :: Integral b => Identity a -> (b, Identity a) Source # truncate :: Integral b => Identity a -> b Source # round :: Integral b => Identity a -> b Source # ceiling :: Integral b => Identity a -> b Source # floor :: Integral b => Identity a -> b Source #
RealFrac a => RealFrac (Down a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods properFraction :: Integral b => Down a -> (b, Down a) Source # truncate :: Integral b => Down a -> b Source # round :: Integral b => Down a -> b Source # ceiling :: Integral b => Down a -> b Source # floor :: Integral b => Down a -> b Source #
Integral a => RealFrac (Ratio a) | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods properFraction :: Integral b => Ratio a -> (b, Ratio a) Source # truncate :: Integral b => Ratio a -> b Source # round :: Integral b => Ratio a -> b Source # ceiling :: Integral b => Ratio a -> b Source # floor :: Integral b => Ratio a -> b Source #
HasResolution a => RealFrac (Fixed a) | Since: base-2.1
Instance details Defined in Data.Fixed Methods properFraction :: Integral b => Fixed a -> (b, Fixed a) Source # truncate :: Integral b => Fixed a -> b Source # round :: Integral b => Fixed a -> b Source # ceiling :: Integral b => Fixed a -> b Source # floor :: Integral b => Fixed a -> b Source #
RealFrac a => RealFrac (Tagged s a) |
Instance details Defined in Data.Tagged Methods properFraction :: Integral b => Tagged s a -> (b, Tagged s a) Source # truncate :: Integral b => Tagged s a -> b Source # round :: Integral b => Tagged s a -> b Source # ceiling :: Integral b => Tagged s a -> b Source # floor :: Integral b => Tagged s a -> b Source #
RealFrac (f (g a)) => RealFrac (Compose f g a) | Since: base-4.20.0.0
Instance details Defined in Data.Functor.Compose Methods properFraction :: Integral b => Compose f g a -> (b, Compose f g a) Source # truncate :: Integral b => Compose f g a -> b Source # round :: Integral b => Compose f g a -> b Source # ceiling :: Integral b => Compose f g a -> b Source # floor :: Integral b => Compose f g a -> b Source #

class Show a Source #

Conversion of values to readable `String`s.

Derived instances of `Show` have the following properties, which are compatible with derived instances of `Read`:

- The result of `show` is a syntactically correct Haskell expression containing only constants, given the fixity declarations in force at the point where the type is declared. It contains only the constructor names defined in the data type, parentheses, and spaces. When labelled constructor fields are used, braces, commas, field names, and equal signs are also used.
- If the constructor is defined to be an infix operator, then `showsPrec` will produce infix applications of the constructor.
- the representation will be enclosed in parentheses if the precedence of the top-level constructor in `x` is less than `d` (associativity is ignored). Thus, if `d` is `0` then the result is never surrounded in parentheses; if `d` is `11` it is always surrounded in parentheses, unless it is an atomic expression.
- If the constructor is defined using record syntax, then `show` will produce the record-syntax form, with the fields given in the same order as the original declaration.

For example, given the declarations

    infixr 5 :^:
    data Tree a =  Leaf a  |  Tree a :^: Tree a

the derived instance of `Show` is equivalent to

    instance (Show a) => Show (Tree a) where

           showsPrec d (Leaf m) = showParen (d > app_prec) $
                showString "Leaf " . showsPrec (app_prec+1) m
             where app_prec = 10

           showsPrec d (u :^: v) = showParen (d > up_prec) $
                showsPrec (up_prec+1) u .
                showString " :^: "      .
                showsPrec (up_prec+1) v
             where up_prec = 5

Note that right-associativity of `:^:` is ignored. For example,

- ``show` (Leaf 1 :^: Leaf 2 :^: Leaf 3)` produces the string `"Leaf 1 :^: (Leaf 2 :^: Leaf 3)"`.

Minimal complete definition

showsPrec | show

#### Instances

Instances details

Show AsyncCancelled |
Instance details Defined in Control.Concurrent.Async.Internal Methods showsPrec :: Int -> AsyncCancelled -> ShowS Source # show :: AsyncCancelled -> String Source # showList :: [AsyncCancelled] -> ShowS Source #
Show ExceptionInLinkedThread |
Instance details Defined in Control.Concurrent.Async.Internal Methods showsPrec :: Int -> ExceptionInLinkedThread -> ShowS Source # show :: ExceptionInLinkedThread -> String Source # showList :: [ExceptionInLinkedThread] -> ShowS Source #
Show ByteArray | Since: base-4.17.0.0
Instance details Defined in Data.Array.Byte Methods showsPrec :: Int -> ByteArray -> ShowS Source # show :: ByteArray -> String Source # showList :: [ByteArray] -> ShowS Source #
Show Timeout | Since: base-4.0
Instance details Defined in System.Timeout Methods showsPrec :: Int -> Timeout -> ShowS Source # show :: Timeout -> String Source # showList :: [Timeout] -> ShowS Source #
Show Options |
Instance details Defined in Data.Bifunctor.TH Methods showsPrec :: Int -> Options -> ShowS Source # show :: Options -> String Source # showList :: [Options] -> ShowS Source #
Show Builder | Since: bytestring-0.11.1.0
Instance details Defined in Data.ByteString.Builder Methods showsPrec :: Int -> Builder -> ShowS Source # show :: Builder -> String Source # showList :: [Builder] -> ShowS Source #
Show FormatMode |
Instance details Defined in Data.ByteString.Builder.RealFloat Methods showsPrec :: Int -> FormatMode -> ShowS Source # show :: FormatMode -> String Source # showList :: [FormatMode] -> ShowS Source #
Show ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods showsPrec :: Int -> ByteString -> ShowS Source # show :: ByteString -> String Source # showList :: [ByteString] -> ShowS Source #
Show SizeOverflowException |
Instance details Defined in Data.ByteString.Internal.Type Methods showsPrec :: Int -> SizeOverflowException -> ShowS Source # show :: SizeOverflowException -> String Source # showList :: [SizeOverflowException] -> ShowS Source #
Show ByteString |
Instance details Defined in Data.ByteString.Lazy.Internal Methods showsPrec :: Int -> ByteString -> ShowS Source # show :: ByteString -> String Source # showList :: [ByteString] -> ShowS Source #
Show ShortByteString |
Instance details Defined in Data.ByteString.Short.Internal Methods showsPrec :: Int -> ShortByteString -> ShowS Source # show :: ShortByteString -> String Source # showList :: [ShortByteString] -> ShowS Source #
Show IntSet |
Instance details Defined in Data.IntSet.Internal Methods showsPrec :: Int -> IntSet -> ShowS Source # show :: IntSet -> String Source # showList :: [IntSet] -> ShowS Source #
Show BitQueue |
Instance details Defined in Utils.Containers.Internal.BitQueue Methods showsPrec :: Int -> BitQueue -> ShowS Source # show :: BitQueue -> String Source # showList :: [BitQueue] -> ShowS Source #
Show BitQueueB |
Instance details Defined in Utils.Containers.Internal.BitQueue Methods showsPrec :: Int -> BitQueueB -> ShowS Source # show :: BitQueueB -> String Source # showList :: [BitQueueB] -> ShowS Source #
Show Void | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Void -> ShowS Source # show :: Void -> String Source # showList :: [Void] -> ShowS Source #
Show BlockReason | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods showsPrec :: Int -> BlockReason -> ShowS Source # show :: BlockReason -> String Source # showList :: [BlockReason] -> ShowS Source #
Show ThreadId | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods showsPrec :: Int -> ThreadId -> ShowS Source # show :: ThreadId -> String Source # showList :: [ThreadId] -> ShowS Source #
Show ThreadStatus | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods showsPrec :: Int -> ThreadStatus -> ShowS Source # show :: ThreadStatus -> String Source # showList :: [ThreadStatus] -> ShowS Source #
Show SomeTypeRep | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Data.Typeable.Internal Methods showsPrec :: Int -> SomeTypeRep -> ShowS Source # show :: SomeTypeRep -> String Source # showList :: [SomeTypeRep] -> ShowS Source #
Show Version | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Version Methods showsPrec :: Int -> Version -> ShowS Source # show :: Version -> String Source # showList :: [Version] -> ShowS Source #
Show ArithException | Since: base-4.0.0.0
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> ArithException -> ShowS Source # show :: ArithException -> String Source # showList :: [ArithException] -> ShowS Source #
Show SomeException | Since: ghc-internal-3.0
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> SomeException -> ShowS Source # show :: SomeException -> String Source # showList :: [SomeException] -> ShowS Source #
Show CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CBool -> ShowS Source # show :: CBool -> String Source # showList :: [CBool] -> ShowS Source #
Show CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CChar -> ShowS Source # show :: CChar -> String Source # showList :: [CChar] -> ShowS Source #
Show CClock |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CClock -> ShowS Source # show :: CClock -> String Source # showList :: [CClock] -> ShowS Source #
Show CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CDouble -> ShowS Source # show :: CDouble -> String Source # showList :: [CDouble] -> ShowS Source #
Show CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CFloat -> ShowS Source # show :: CFloat -> String Source # showList :: [CFloat] -> ShowS Source #
Show CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CInt -> ShowS Source # show :: CInt -> String Source # showList :: [CInt] -> ShowS Source #
Show CIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CIntMax -> ShowS Source # show :: CIntMax -> String Source # showList :: [CIntMax] -> ShowS Source #
Show CIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CIntPtr -> ShowS Source # show :: CIntPtr -> String Source # showList :: [CIntPtr] -> ShowS Source #
Show CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CLLong -> ShowS Source # show :: CLLong -> String Source # showList :: [CLLong] -> ShowS Source #
Show CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CLong -> ShowS Source # show :: CLong -> String Source # showList :: [CLong] -> ShowS Source #
Show CPtrdiff |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CPtrdiff -> ShowS Source # show :: CPtrdiff -> String Source # showList :: [CPtrdiff] -> ShowS Source #
Show CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CSChar -> ShowS Source # show :: CSChar -> String Source # showList :: [CSChar] -> ShowS Source #
Show CSUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CSUSeconds -> ShowS Source # show :: CSUSeconds -> String Source # showList :: [CSUSeconds] -> ShowS Source #
Show CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CShort -> ShowS Source # show :: CShort -> String Source # showList :: [CShort] -> ShowS Source #
Show CSigAtomic |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CSigAtomic -> ShowS Source # show :: CSigAtomic -> String Source # showList :: [CSigAtomic] -> ShowS Source #
Show CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CSize -> ShowS Source # show :: CSize -> String Source # showList :: [CSize] -> ShowS Source #
Show CTime |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CTime -> ShowS Source # show :: CTime -> String Source # showList :: [CTime] -> ShowS Source #
Show CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUChar -> ShowS Source # show :: CUChar -> String Source # showList :: [CUChar] -> ShowS Source #
Show CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUInt -> ShowS Source # show :: CUInt -> String Source # showList :: [CUInt] -> ShowS Source #
Show CUIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUIntMax -> ShowS Source # show :: CUIntMax -> String Source # showList :: [CUIntMax] -> ShowS Source #
Show CUIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUIntPtr -> ShowS Source # show :: CUIntPtr -> String Source # showList :: [CUIntPtr] -> ShowS Source #
Show CULLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CULLong -> ShowS Source # show :: CULLong -> String Source # showList :: [CULLong] -> ShowS Source #
Show CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CULong -> ShowS Source # show :: CULong -> String Source # showList :: [CULong] -> ShowS Source #
Show CUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUSeconds -> ShowS Source # show :: CUSeconds -> String Source # showList :: [CUSeconds] -> ShowS Source #
Show CUShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUShort -> ShowS Source # show :: CUShort -> String Source # showList :: [CUShort] -> ShowS Source #
Show CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CWchar -> ShowS Source # show :: CWchar -> String Source # showList :: [CWchar] -> ShowS Source #
Show Associativity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Associativity -> ShowS Source # show :: Associativity -> String Source # showList :: [Associativity] -> ShowS Source #
Show DecidedStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> DecidedStrictness -> ShowS Source # show :: DecidedStrictness -> String Source # showList :: [DecidedStrictness] -> ShowS Source #
Show Fixity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Fixity -> ShowS Source # show :: Fixity -> String Source # showList :: [Fixity] -> ShowS Source #
Show SourceStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> SourceStrictness -> ShowS Source # show :: SourceStrictness -> String Source # showList :: [SourceStrictness] -> ShowS Source #
Show SourceUnpackedness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> SourceUnpackedness -> ShowS Source # show :: SourceUnpackedness -> String Source # showList :: [SourceUnpackedness] -> ShowS Source #
Show MaskingState | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO Methods showsPrec :: Int -> MaskingState -> ShowS Source # show :: MaskingState -> String Source # showList :: [MaskingState] -> ShowS Source #
Show SeekMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Device Methods showsPrec :: Int -> SeekMode -> ShowS Source # show :: SeekMode -> String Source # showList :: [SeekMode] -> ShowS Source #
Show AllocationLimitExceeded | Since: base-4.7.1.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> AllocationLimitExceeded -> ShowS Source # show :: AllocationLimitExceeded -> String Source # showList :: [AllocationLimitExceeded] -> ShowS Source #
Show ArrayException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> ArrayException -> ShowS Source # show :: ArrayException -> String Source # showList :: [ArrayException] -> ShowS Source #
Show AssertionFailed | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> AssertionFailed -> ShowS Source # show :: AssertionFailed -> String Source # showList :: [AssertionFailed] -> ShowS Source #
Show AsyncException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> AsyncException -> ShowS Source # show :: AsyncException -> String Source # showList :: [AsyncException] -> ShowS Source #
Show BlockedIndefinitelyOnMVar | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> BlockedIndefinitelyOnMVar -> ShowS Source # show :: BlockedIndefinitelyOnMVar -> String Source # showList :: [BlockedIndefinitelyOnMVar] -> ShowS Source #
Show BlockedIndefinitelyOnSTM | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> BlockedIndefinitelyOnSTM -> ShowS Source # show :: BlockedIndefinitelyOnSTM -> String Source # showList :: [BlockedIndefinitelyOnSTM] -> ShowS Source #
Show CompactionFailed | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> CompactionFailed -> ShowS Source # show :: CompactionFailed -> String Source # showList :: [CompactionFailed] -> ShowS Source #
Show Deadlock | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> Deadlock -> ShowS Source # show :: Deadlock -> String Source # showList :: [Deadlock] -> ShowS Source #
Show ExitCode |
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> ExitCode -> ShowS Source # show :: ExitCode -> String Source # showList :: [ExitCode] -> ShowS Source #
Show FixIOException | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> FixIOException -> ShowS Source # show :: FixIOException -> String Source # showList :: [FixIOException] -> ShowS Source #
Show IOErrorType | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> IOErrorType -> ShowS Source # show :: IOErrorType -> String Source # showList :: [IOErrorType] -> ShowS Source #
Show IOException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> IOException -> ShowS Source # show :: IOException -> String Source # showList :: [IOException] -> ShowS Source #
Show SomeAsyncException | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> SomeAsyncException -> ShowS Source # show :: SomeAsyncException -> String Source # showList :: [SomeAsyncException] -> ShowS Source #
Show BufferMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> BufferMode -> ShowS Source # show :: BufferMode -> String Source # showList :: [BufferMode] -> ShowS Source #
Show Handle | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> Handle -> ShowS Source # show :: Handle -> String Source # showList :: [Handle] -> ShowS Source #
Show HandleType | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> HandleType -> ShowS Source # show :: HandleType -> String Source # showList :: [HandleType] -> ShowS Source #
Show Newline | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> Newline -> ShowS Source # show :: Newline -> String Source # showList :: [Newline] -> ShowS Source #
Show NewlineMode | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> NewlineMode -> ShowS Source # show :: NewlineMode -> String Source # showList :: [NewlineMode] -> ShowS Source #
Show IOMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.IOMode Methods showsPrec :: Int -> IOMode -> ShowS Source # show :: IOMode -> String Source # showList :: [IOMode] -> ShowS Source #
Show Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int16 -> ShowS Source # show :: Int16 -> String Source # showList :: [Int16] -> ShowS Source #
Show Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int32 -> ShowS Source # show :: Int32 -> String Source # showList :: [Int32] -> ShowS Source #
Show Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int64 -> ShowS Source # show :: Int64 -> String Source # showList :: [Int64] -> ShowS Source #
Show Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int8 -> ShowS Source # show :: Int8 -> String Source # showList :: [Int8] -> ShowS Source #
Show FractionalExponentBase |
Instance details Defined in GHC.Internal.Real Methods showsPrec :: Int -> FractionalExponentBase -> ShowS Source # show :: FractionalExponentBase -> String Source # showList :: [FractionalExponentBase] -> ShowS Source #
Show CallStack | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> CallStack -> ShowS Source # show :: CallStack -> String Source # showList :: [CallStack] -> ShowS Source #
Show SrcLoc | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> SrcLoc -> ShowS Source # show :: SrcLoc -> String Source # showList :: [SrcLoc] -> ShowS Source #
Show GCDetails | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Stats Methods showsPrec :: Int -> GCDetails -> ShowS Source # show :: GCDetails -> String Source # showList :: [GCDetails] -> ShowS Source #
Show RTSStats | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Stats Methods showsPrec :: Int -> RTSStats -> ShowS Source # show :: RTSStats -> String Source # showList :: [RTSStats] -> ShowS Source #
Show GeneralCategory | Since: base-2.1
Instance details Defined in GHC.Internal.Unicode Methods showsPrec :: Int -> GeneralCategory -> ShowS Source # show :: GeneralCategory -> String Source # showList :: [GeneralCategory] -> ShowS Source #
Show Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word16 -> ShowS Source # show :: Word16 -> String Source # showList :: [Word16] -> ShowS Source #
Show Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word32 -> ShowS Source # show :: Word32 -> String Source # showList :: [Word32] -> ShowS Source #
Show Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word64 -> ShowS Source # show :: Word64 -> String Source # showList :: [Word64] -> ShowS Source #
Show Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word8 -> ShowS Source # show :: Word8 -> String Source # showList :: [Word8] -> ShowS Source #
Show KindRep |
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> KindRep -> ShowS Source # show :: KindRep -> String Source # showList :: [KindRep] -> ShowS Source #
Show Module | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Module -> ShowS Source # show :: Module -> String Source # showList :: [Module] -> ShowS Source #
Show Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Ordering -> ShowS Source # show :: Ordering -> String Source # showList :: [Ordering] -> ShowS Source #
Show TrName | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> TrName -> ShowS Source # show :: TrName -> String Source # showList :: [TrName] -> ShowS Source #
Show TyCon | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> TyCon -> ShowS Source # show :: TyCon -> String Source # showList :: [TyCon] -> ShowS Source #
Show TypeLitSort | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> TypeLitSort -> ShowS Source # show :: TypeLitSort -> String Source # showList :: [TypeLitSort] -> ShowS Source #
Show NullError |
Instance details Defined in Data.NonNull Methods showsPrec :: Int -> NullError -> ShowS Source # show :: NullError -> String Source # showList :: [NullError] -> ShowS Source #
Show AsyncExceptionWrapper |
Instance details Defined in Control.Exception.Safe Methods showsPrec :: Int -> AsyncExceptionWrapper -> ShowS Source # show :: AsyncExceptionWrapper -> String Source # showList :: [AsyncExceptionWrapper] -> ShowS Source #
Show StringException |
Instance details Defined in Control.Exception.Safe Methods showsPrec :: Int -> StringException -> ShowS Source # show :: StringException -> String Source # showList :: [StringException] -> ShowS Source #
Show SyncExceptionWrapper |
Instance details Defined in Control.Exception.Safe Methods showsPrec :: Int -> SyncExceptionWrapper -> ShowS Source # show :: SyncExceptionWrapper -> String Source # showList :: [SyncExceptionWrapper] -> ShowS Source #
Show Decoding |
Instance details Defined in Data.Text.Encoding Methods showsPrec :: Int -> Decoding -> ShowS Source # show :: Decoding -> String Source # showList :: [Decoding] -> ShowS Source #
Show UnicodeException |
Instance details Defined in Data.Text.Encoding.Error Methods showsPrec :: Int -> UnicodeException -> ShowS Source # show :: UnicodeException -> String Source # showList :: [UnicodeException] -> ShowS Source #
Show I8 |
Instance details Defined in Data.Text.Foreign Methods showsPrec :: Int -> I8 -> ShowS Source # show :: I8 -> String Source # showList :: [I8] -> ShowS Source #
Show Text |
Instance details Defined in Data.Text.Show Methods showsPrec :: Int -> Text -> ShowS Source # show :: Text -> String Source # showList :: [Text] -> ShowS Source #
Show Builder |
Instance details Defined in Data.Text.Internal.Builder Methods showsPrec :: Int -> Builder -> ShowS Source # show :: Builder -> String Source # showList :: [Builder] -> ShowS Source #
Show PartialUtf8CodePoint |
Instance details Defined in Data.Text.Internal.Encoding Methods showsPrec :: Int -> PartialUtf8CodePoint -> ShowS Source # show :: PartialUtf8CodePoint -> String Source # showList :: [PartialUtf8CodePoint] -> ShowS Source #
Show Utf8State |
Instance details Defined in Data.Text.Internal.Encoding Methods showsPrec :: Int -> Utf8State -> ShowS Source # show :: Utf8State -> String Source # showList :: [Utf8State] -> ShowS Source #
Show DecoderState |
Instance details Defined in Data.Text.Internal.Encoding.Utf8 Methods showsPrec :: Int -> DecoderState -> ShowS Source # show :: DecoderState -> String Source # showList :: [DecoderState] -> ShowS Source #
Show Size |
Instance details Defined in Data.Text.Internal.Fusion.Size Methods showsPrec :: Int -> Size -> ShowS Source # show :: Size -> String Source # showList :: [Size] -> ShowS Source #
Show Text |
Instance details Defined in Data.Text.Lazy Methods showsPrec :: Int -> Text -> ShowS Source # show :: Text -> String Source # showList :: [Text] -> ShowS Source #
Show FPFormat |
Instance details Defined in Data.Text.Lazy.Builder.RealFloat Methods showsPrec :: Int -> FPFormat -> ShowS Source # show :: FPFormat -> String Source # showList :: [FPFormat] -> ShowS Source #
Show Iter |
Instance details Defined in Data.Text.Unsafe Methods showsPrec :: Int -> Iter -> ShowS Source # show :: Iter -> String Source # showList :: [Iter] -> ShowS Source #
Show Day |
Instance details Defined in Data.Time.Calendar.Gregorian Methods showsPrec :: Int -> Day -> ShowS Source # show :: Day -> String Source # showList :: [Day] -> ShowS Source #
Show Month | Show as `yyyy-mm`.
Instance details Defined in Data.Time.Calendar.Month Methods showsPrec :: Int -> Month -> ShowS Source # show :: Month -> String Source # showList :: [Month] -> ShowS Source #
Show Quarter | Show as `yyyy-Qn`.
Instance details Defined in Data.Time.Calendar.Quarter Methods showsPrec :: Int -> Quarter -> ShowS Source # show :: Quarter -> String Source # showList :: [Quarter] -> ShowS Source #
Show QuarterOfYear |
Instance details Defined in Data.Time.Calendar.Quarter Methods showsPrec :: Int -> QuarterOfYear -> ShowS Source # show :: QuarterOfYear -> String Source # showList :: [QuarterOfYear] -> ShowS Source #
Show DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods showsPrec :: Int -> DiffTime -> ShowS Source # show :: DiffTime -> String Source # showList :: [DiffTime] -> ShowS Source #
Show UTCTime |
Instance details Defined in Data.Time.LocalTime.Internal.ZonedTime Methods showsPrec :: Int -> UTCTime -> ShowS Source # show :: UTCTime -> String Source # showList :: [UTCTime] -> ShowS Source #
Show UniversalTime |
Instance details Defined in Data.Time.LocalTime.Internal.LocalTime Methods showsPrec :: Int -> UniversalTime -> ShowS Source # show :: UniversalTime -> String Source # showList :: [UniversalTime] -> ShowS Source #
Show TimeLocale |
Instance details Defined in Data.Time.Format.Locale Methods showsPrec :: Int -> TimeLocale -> ShowS Source # show :: TimeLocale -> String Source # showList :: [TimeLocale] -> ShowS Source #
Show LocalTime |
Instance details Defined in Data.Time.LocalTime.Internal.LocalTime Methods showsPrec :: Int -> LocalTime -> ShowS Source # show :: LocalTime -> String Source # showList :: [LocalTime] -> ShowS Source #
Show ZonedTime | For the time zone, this only shows the name, or offset if the name is empty.
Instance details Defined in Data.Time.LocalTime.Internal.ZonedTime Methods showsPrec :: Int -> ZonedTime -> ShowS Source # show :: ZonedTime -> String Source # showList :: [ZonedTime] -> ShowS Source #
Show StringException | Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Exception Methods showsPrec :: Int -> StringException -> ShowS Source # show :: StringException -> String Source # showList :: [StringException] -> ShowS Source #
Show ConcException |
Instance details Defined in UnliftIO.Internals.Async Methods showsPrec :: Int -> ConcException -> ShowS Source # show :: ConcException -> String Source # showList :: [ConcException] -> ShowS Source #
Show SubHashPath |
Instance details Defined in Data.HashMap.Internal.Debug Methods showsPrec :: Int -> SubHashPath -> ShowS Source # show :: SubHashPath -> String Source # showList :: [SubHashPath] -> ShowS Source #
Show Size |
Instance details Defined in Data.Vector.Fusion.Bundle.Size Methods showsPrec :: Int -> Size -> ShowS Source # show :: Size -> String Source # showList :: [Size] -> ShowS Source #
Show Integer | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Integer -> ShowS Source # show :: Integer -> String Source # showList :: [Integer] -> ShowS Source #
Show Natural | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Natural -> ShowS Source # show :: Natural -> String Source # showList :: [Natural] -> ShowS Source #
Show () | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> () -> ShowS Source # show :: () -> String Source # showList :: [()] -> ShowS Source #
Show Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Bool -> ShowS Source # show :: Bool -> String Source # showList :: [Bool] -> ShowS Source #
Show Char | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Char -> ShowS Source # show :: Char -> String Source # showList :: [Char] -> ShowS Source #
Show Double | Since: base-2.1
Instance details Defined in GHC.Internal.Float Methods showsPrec :: Int -> Double -> ShowS Source # show :: Double -> String Source # showList :: [Double] -> ShowS Source #
Show Float | Since: base-2.1
Instance details Defined in GHC.Internal.Float Methods showsPrec :: Int -> Float -> ShowS Source # show :: Float -> String Source # showList :: [Float] -> ShowS Source #
Show Int | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Int -> ShowS Source # show :: Int -> String Source # showList :: [Int] -> ShowS Source #
Show Levity | Since: base-4.15.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Levity -> ShowS Source # show :: Levity -> String Source # showList :: [Levity] -> ShowS Source #
Show RuntimeRep | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> RuntimeRep -> ShowS Source # show :: RuntimeRep -> String Source # showList :: [RuntimeRep] -> ShowS Source #
Show VecCount | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> VecCount -> ShowS Source # show :: VecCount -> String Source # showList :: [VecCount] -> ShowS Source #
Show VecElem | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> VecElem -> ShowS Source # show :: VecElem -> String Source # showList :: [VecElem] -> ShowS Source #
Show Word | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Word -> ShowS Source # show :: Word -> String Source # showList :: [Word] -> ShowS Source #
Show a => Show (Complex a) | Since: base-2.1
Instance details Defined in Data.Complex Methods showsPrec :: Int -> Complex a -> ShowS Source # show :: Complex a -> String Source # showList :: [Complex a] -> ShowS Source #
Show a => Show (First a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> First a -> ShowS Source # show :: First a -> String Source # showList :: [First a] -> ShowS Source #
Show a => Show (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> Last a -> ShowS Source # show :: Last a -> String Source # showList :: [Last a] -> ShowS Source #
Show a => Show (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> Max a -> ShowS Source # show :: Max a -> String Source # showList :: [Max a] -> ShowS Source #
Show a => Show (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> Min a -> ShowS Source # show :: Min a -> String Source # showList :: [Min a] -> ShowS Source #
Show m => Show (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> WrappedMonoid m -> ShowS Source # show :: WrappedMonoid m -> String Source # showList :: [WrappedMonoid m] -> ShowS Source #
Show vertex => Show (SCC vertex) | Since: containers-0.5.9
Instance details Defined in Data.Graph Methods showsPrec :: Int -> SCC vertex -> ShowS Source # show :: SCC vertex -> String Source # showList :: [SCC vertex] -> ShowS Source #
Show a => Show (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods showsPrec :: Int -> IntMap a -> ShowS Source # show :: IntMap a -> String Source # showList :: [IntMap a] -> ShowS Source #
Show a => Show (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods showsPrec :: Int -> Seq a -> ShowS Source # show :: Seq a -> String Source # showList :: [Seq a] -> ShowS Source #
Show a => Show (ViewL a) |
Instance details Defined in Data.Sequence.Internal Methods showsPrec :: Int -> ViewL a -> ShowS Source # show :: ViewL a -> String Source # showList :: [ViewL a] -> ShowS Source #
Show a => Show (ViewR a) |
Instance details Defined in Data.Sequence.Internal Methods showsPrec :: Int -> ViewR a -> ShowS Source # show :: ViewR a -> String Source # showList :: [ViewR a] -> ShowS Source #
Show a => Show (Intersection a) |
Instance details Defined in Data.Set.Internal Methods showsPrec :: Int -> Intersection a -> ShowS Source # show :: Intersection a -> String Source # showList :: [Intersection a] -> ShowS Source #
Show a => Show (Set a) |
Instance details Defined in Data.Set.Internal Methods showsPrec :: Int -> Set a -> ShowS Source # show :: Set a -> String Source # showList :: [Set a] -> ShowS Source #
Show a => Show (Tree a) |
Instance details Defined in Data.Tree Methods showsPrec :: Int -> Tree a -> ShowS Source # show :: Tree a -> String Source # showList :: [Tree a] -> ShowS Source #
Show a => Show (DList a) |
Instance details Defined in Data.DList.Internal Methods showsPrec :: Int -> DList a -> ShowS Source # show :: DList a -> String Source # showList :: [DList a] -> ShowS Source #
Show a => Show (ExitCase a) |
Instance details Defined in Control.Monad.Catch Methods showsPrec :: Int -> ExitCase a -> ShowS Source # show :: ExitCase a -> String Source # showList :: [ExitCase a] -> ShowS Source #
Show a => Show (NonEmpty a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> NonEmpty a -> ShowS Source # show :: NonEmpty a -> String Source # showList :: [NonEmpty a] -> ShowS Source #
Show a => Show (Identity a) | This instance would be equivalent to the derived instances of the `Identity` newtype if the `runIdentity` field were removed Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods showsPrec :: Int -> Identity a -> ShowS Source # show :: Identity a -> String Source # showList :: [Identity a] -> ShowS Source #
Show a => Show (Down a) | This instance would be equivalent to the derived instances of the `Down` newtype if the `getDown` field were removed Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods showsPrec :: Int -> Down a -> ShowS Source # show :: Down a -> String Source # showList :: [Down a] -> ShowS Source #
Show a => Show (ExceptionWithContext a) |
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> ExceptionWithContext a -> ShowS Source # show :: ExceptionWithContext a -> String Source # showList :: [ExceptionWithContext a] -> ShowS Source #
Show e => Show (NoBacktrace e) |
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> NoBacktrace e -> ShowS Source # show :: NoBacktrace e -> String Source # showList :: [NoBacktrace e] -> ShowS Source #
Show (ForeignPtr a) | Since: base-2.1
Instance details Defined in GHC.Internal.ForeignPtr Methods showsPrec :: Int -> ForeignPtr a -> ShowS Source # show :: ForeignPtr a -> String Source # showList :: [ForeignPtr a] -> ShowS Source #
Show p => Show (Par1 p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Par1 p -> ShowS Source # show :: Par1 p -> String Source # showList :: [Par1 p] -> ShowS Source #
Show a => Show (Ratio a) | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods showsPrec :: Int -> Ratio a -> ShowS Source # show :: Ratio a -> String Source # showList :: [Ratio a] -> ShowS Source #
Show a => Show (Hashed a) |
Instance details Defined in Data.Hashable.Class Methods showsPrec :: Int -> Hashed a -> ShowS Source # show :: Hashed a -> String Source # showList :: [Hashed a] -> ShowS Source #
Show mono => Show (NonNull mono) |
Instance details Defined in Data.NonNull Methods showsPrec :: Int -> NonNull mono -> ShowS Source # show :: NonNull mono -> String Source # showList :: [NonNull mono] -> ShowS Source #
Show a => Show (Array a) |
Instance details Defined in Data.Primitive.Array Methods showsPrec :: Int -> Array a -> ShowS Source # show :: Array a -> String Source # showList :: [Array a] -> ShowS Source #
(Show a, Prim a) => Show (PrimArray a) | Since: primitive-0.6.4.0
Instance details Defined in Data.Primitive.PrimArray Methods showsPrec :: Int -> PrimArray a -> ShowS Source # show :: PrimArray a -> String Source # showList :: [PrimArray a] -> ShowS Source #
Show a => Show (SmallArray a) |
Instance details Defined in Data.Primitive.SmallArray Methods showsPrec :: Int -> SmallArray a -> ShowS Source # show :: SmallArray a -> String Source # showList :: [SmallArray a] -> ShowS Source #
Show (Memoized a) |
Instance details Defined in UnliftIO.Memoize Methods showsPrec :: Int -> Memoized a -> ShowS Source # show :: Memoized a -> String Source # showList :: [Memoized a] -> ShowS Source #
Show a => Show (Array a) |
Instance details Defined in Data.HashMap.Internal.Array Methods showsPrec :: Int -> Array a -> ShowS Source # show :: Array a -> String Source # showList :: [Array a] -> ShowS Source #
Show k => Show (Error k) |
Instance details Defined in Data.HashMap.Internal.Debug Methods showsPrec :: Int -> Error k -> ShowS Source # show :: Error k -> String Source # showList :: [Error k] -> ShowS Source #
Show k => Show (Validity k) |
Instance details Defined in Data.HashMap.Internal.Debug Methods showsPrec :: Int -> Validity k -> ShowS Source # show :: Validity k -> String Source # showList :: [Validity k] -> ShowS Source #
Show a => Show (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods showsPrec :: Int -> HashSet a -> ShowS Source # show :: HashSet a -> String Source # showList :: [HashSet a] -> ShowS Source #
Show a => Show (Vector a) |
Instance details Defined in Data.Vector Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
(Show a, Prim a) => Show (Vector a) |
Instance details Defined in Data.Vector.Primitive Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
(Show a, Storable a) => Show (Vector a) |
Instance details Defined in Data.Vector.Storable Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
Show a => Show (Vector a) |
Instance details Defined in Data.Vector.Strict Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
(Show a, Unbox a) => Show (Vector a) |
Instance details Defined in Data.Vector.Unboxed Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
Show a => Show (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Maybe a -> ShowS Source # show :: Maybe a -> String Source # showList :: [Maybe a] -> ShowS Source #
Show a => Show (Solo a) | Since: base-4.15
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Solo a -> ShowS Source # show :: Solo a -> String Source # showList :: [Solo a] -> ShowS Source #
Show a => Show [a] | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> [a] -> ShowS Source # show :: [a] -> String Source # showList :: [[a]] -> ShowS Source #
HasResolution a => Show (Fixed a) | Since: base-2.1
Instance details Defined in Data.Fixed Methods showsPrec :: Int -> Fixed a -> ShowS Source # show :: Fixed a -> String Source # showList :: [Fixed a] -> ShowS Source #
(Show a, Show b) => Show (Arg a b) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> Arg a b -> ShowS Source # show :: Arg a b -> String Source # showList :: [Arg a b] -> ShowS Source #
(Show k, Show a) => Show (Map k a) |
Instance details Defined in Data.Map.Internal Methods showsPrec :: Int -> Map k a -> ShowS Source # show :: Map k a -> String Source # showList :: [Map k a] -> ShowS Source #
(Show1 f, Show a) => Show (Cofree f a) |
Instance details Defined in Control.Comonad.Cofree Methods showsPrec :: Int -> Cofree f a -> ShowS Source # show :: Cofree f a -> String Source # showList :: [Cofree f a] -> ShowS Source #
(Show1 f, Show a) => Show (Free f a) |
Instance details Defined in Control.Monad.Free Methods showsPrec :: Int -> Free f a -> ShowS Source # show :: Free f a -> String Source # showList :: [Free f a] -> ShowS Source #
(Show a, Show b) => Show (Either a b) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods showsPrec :: Int -> Either a b -> ShowS Source # show :: Either a b -> String Source # showList :: [Either a b] -> ShowS Source #
Show (TypeRep a) |
Instance details Defined in GHC.Internal.Data.Typeable.Internal Methods showsPrec :: Int -> TypeRep a -> ShowS Source # show :: TypeRep a -> String Source # showList :: [TypeRep a] -> ShowS Source #
Show (U1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> U1 p -> ShowS Source # show :: U1 p -> String Source # showList :: [U1 p] -> ShowS Source #
Show (UAddr p) |
Instance details Defined in Data.Orphans Methods showsPrec :: Int -> UAddr p -> ShowS Source # show :: UAddr p -> String Source # showList :: [UAddr p] -> ShowS Source #
Show (V1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> V1 p -> ShowS Source # show :: V1 p -> String Source # showList :: [V1 p] -> ShowS Source #
Show (ST s a) | Since: base-2.1
Instance details Defined in GHC.Internal.ST Methods showsPrec :: Int -> ST s a -> ShowS Source # show :: ST s a -> String Source # showList :: [ST s a] -> ShowS Source #
(Show1 f, Show a) => Show (Lift f a) |
Instance details Defined in Control.Applicative.Lift Methods showsPrec :: Int -> Lift f a -> ShowS Source # show :: Lift f a -> String Source # showList :: [Lift f a] -> ShowS Source #
(Show1 m, Show a) => Show (MaybeT m a) |
Instance details Defined in Control.Monad.Trans.Maybe Methods showsPrec :: Int -> MaybeT m a -> ShowS Source # show :: MaybeT m a -> String Source # showList :: [MaybeT m a] -> ShowS Source #
(Show k, Show v) => Show (HashMap k v) |
Instance details Defined in Data.HashMap.Internal Methods showsPrec :: Int -> HashMap k v -> ShowS Source # show :: HashMap k v -> String Source # showList :: [HashMap k v] -> ShowS Source #
(Show a, Show b) => Show (a, b) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b) -> ShowS Source # show :: (a, b) -> String Source # showList :: [(a, b)] -> ShowS Source #
Show (bi a b) => Show (Biap bi a b) |
Instance details Defined in Data.Bifunctor.Biap Methods showsPrec :: Int -> Biap bi a b -> ShowS Source # show :: Biap bi a b -> String Source # showList :: [Biap bi a b] -> ShowS Source #
Show (p (Fix p a) a) => Show (Fix p a) |
Instance details Defined in Data.Bifunctor.Fix Methods showsPrec :: Int -> Fix p a -> ShowS Source # show :: Fix p a -> String Source # showList :: [Fix p a] -> ShowS Source #
Show (p a a) => Show (Join p a) |
Instance details Defined in Data.Bifunctor.Join Methods showsPrec :: Int -> Join p a -> ShowS Source # show :: Join p a -> String Source # showList :: [Join p a] -> ShowS Source #
(Show a, Show (f b)) => Show (FreeF f a b) |
Instance details Defined in Control.Monad.Trans.Free Methods showsPrec :: Int -> FreeF f a b -> ShowS Source # show :: FreeF f a b -> String Source # showList :: [FreeF f a b] -> ShowS Source #
(Show1 f, Show1 m, Show a) => Show (FreeT f m a) |
Instance details Defined in Control.Monad.Trans.Free Methods showsPrec :: Int -> FreeT f m a -> ShowS Source # show :: FreeT f m a -> String Source # showList :: [FreeT f m a] -> ShowS Source #
Show (f p) => Show (Rec1 f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Rec1 f p -> ShowS Source # show :: Rec1 f p -> String Source # showList :: [Rec1 f p] -> ShowS Source #
Show (URec Char p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Char p -> ShowS Source # show :: URec Char p -> String Source # showList :: [URec Char p] -> ShowS Source #
Show (URec Double p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Double p -> ShowS Source # show :: URec Double p -> String Source # showList :: [URec Double p] -> ShowS Source #
Show (URec Float p) |
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Float p -> ShowS Source # show :: URec Float p -> String Source # showList :: [URec Float p] -> ShowS Source #
Show (URec Int p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Int p -> ShowS Source # show :: URec Int p -> String Source # showList :: [URec Int p] -> ShowS Source #
Show (URec Word p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Word p -> ShowS Source # show :: URec Word p -> String Source # showList :: [URec Word p] -> ShowS Source #
Show b => Show (Tagged s b) |
Instance details Defined in Data.Tagged Methods showsPrec :: Int -> Tagged s b -> ShowS Source # show :: Tagged s b -> String Source # showList :: [Tagged s b] -> ShowS Source #
(Show1 f, Show a) => Show (Backwards f a) |
Instance details Defined in Control.Applicative.Backwards Methods showsPrec :: Int -> Backwards f a -> ShowS Source # show :: Backwards f a -> String Source # showList :: [Backwards f a] -> ShowS Source #
(Show e, Show1 m, Show a) => Show (ExceptT e m a) |
Instance details Defined in Control.Monad.Trans.Except Methods showsPrec :: Int -> ExceptT e m a -> ShowS Source # show :: ExceptT e m a -> String Source # showList :: [ExceptT e m a] -> ShowS Source #
(Show1 f, Show a) => Show (IdentityT f a) |
Instance details Defined in Control.Monad.Trans.Identity Methods showsPrec :: Int -> IdentityT f a -> ShowS Source # show :: IdentityT f a -> String Source # showList :: [IdentityT f a] -> ShowS Source #
(Show w, Show1 m, Show a) => Show (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods showsPrec :: Int -> WriterT w m a -> ShowS Source # show :: WriterT w m a -> String Source # showList :: [WriterT w m a] -> ShowS Source #
(Show w, Show1 m, Show a) => Show (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods showsPrec :: Int -> WriterT w m a -> ShowS Source # show :: WriterT w m a -> String Source # showList :: [WriterT w m a] -> ShowS Source #
Show a => Show (Constant a b) |
Instance details Defined in Data.Functor.Constant Methods showsPrec :: Int -> Constant a b -> ShowS Source # show :: Constant a b -> String Source # showList :: [Constant a b] -> ShowS Source #
(Show1 f, Show a) => Show (Reverse f a) |
Instance details Defined in Data.Functor.Reverse Methods showsPrec :: Int -> Reverse f a -> ShowS Source # show :: Reverse f a -> String Source # showList :: [Reverse f a] -> ShowS Source #
(Show a, Show b, Show c) => Show (a, b, c) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c) -> ShowS Source # show :: (a, b, c) -> String Source # showList :: [(a, b, c)] -> ShowS Source #
(Show (f a), Show (g a)) => Show (Product f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Product Methods showsPrec :: Int -> Product f g a -> ShowS Source # show :: Product f g a -> String Source # showList :: [Product f g a] -> ShowS Source #
(Show (f a), Show (g a)) => Show (Sum f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Sum Methods showsPrec :: Int -> Sum f g a -> ShowS Source # show :: Sum f g a -> String Source # showList :: [Sum f g a] -> ShowS Source #
(Show (f p), Show (g p)) => Show ((f :*: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> (f :*: g) p -> ShowS Source # show :: (f :*: g) p -> String Source # showList :: [(f :*: g) p] -> ShowS Source #
(Show (f p), Show (g p)) => Show ((f :+: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> (f :+: g) p -> ShowS Source # show :: (f :+: g) p -> String Source # showList :: [(f :+: g) p] -> ShowS Source #
Show c => Show (K1 i c p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> K1 i c p -> ShowS Source # show :: K1 i c p -> String Source # showList :: [K1 i c p] -> ShowS Source #
(Show a, Show b, Show c, Show d) => Show (a, b, c, d) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d) -> ShowS Source # show :: (a, b, c, d) -> String Source # showList :: [(a, b, c, d)] -> ShowS Source #
Show (f (g a)) => Show (Compose f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Compose Methods showsPrec :: Int -> Compose f g a -> ShowS Source # show :: Compose f g a -> String Source # showList :: [Compose f g a] -> ShowS Source #
Show (f a) => Show (Clown f a b) |
Instance details Defined in Data.Bifunctor.Clown Methods showsPrec :: Int -> Clown f a b -> ShowS Source # show :: Clown f a b -> String Source # showList :: [Clown f a b] -> ShowS Source #
Show (p b a) => Show (Flip p a b) |
Instance details Defined in Data.Bifunctor.Flip Methods showsPrec :: Int -> Flip p a b -> ShowS Source # show :: Flip p a b -> String Source # showList :: [Flip p a b] -> ShowS Source #
Show (g b) => Show (Joker g a b) |
Instance details Defined in Data.Bifunctor.Joker Methods showsPrec :: Int -> Joker g a b -> ShowS Source # show :: Joker g a b -> String Source # showList :: [Joker g a b] -> ShowS Source #
Show (p a b) => Show (WrappedBifunctor p a b) |
Instance details Defined in Data.Bifunctor.Wrapped Methods showsPrec :: Int -> WrappedBifunctor p a b -> ShowS Source # show :: WrappedBifunctor p a b -> String Source # showList :: [WrappedBifunctor p a b] -> ShowS Source #
Show (f (g p)) => Show ((f :.: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> (f :.: g) p -> ShowS Source # show :: (f :.: g) p -> String Source # showList :: [(f :.: g) p] -> ShowS Source #
Show (f p) => Show (M1 i c f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> M1 i c f p -> ShowS Source # show :: M1 i c f p -> String Source # showList :: [M1 i c f p] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e) => Show (a, b, c, d, e) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e) -> ShowS Source # show :: (a, b, c, d, e) -> String Source # showList :: [(a, b, c, d, e)] -> ShowS Source #
(Show (f a b), Show (g a b)) => Show (Product f g a b) |
Instance details Defined in Data.Bifunctor.Product Methods showsPrec :: Int -> Product f g a b -> ShowS Source # show :: Product f g a b -> String Source # showList :: [Product f g a b] -> ShowS Source #
(Show (p a b), Show (q a b)) => Show (Sum p q a b) |
Instance details Defined in Data.Bifunctor.Sum Methods showsPrec :: Int -> Sum p q a b -> ShowS Source # show :: Sum p q a b -> String Source # showList :: [Sum p q a b] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f) => Show (a, b, c, d, e, f) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f) -> ShowS Source # show :: (a, b, c, d, e, f) -> String Source # showList :: [(a, b, c, d, e, f)] -> ShowS Source #
Show (f (p a b)) => Show (Tannen f p a b) |
Instance details Defined in Data.Bifunctor.Tannen Methods showsPrec :: Int -> Tannen f p a b -> ShowS Source # show :: Tannen f p a b -> String Source # showList :: [Tannen f p a b] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g) => Show (a, b, c, d, e, f, g) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g) -> ShowS Source # show :: (a, b, c, d, e, f, g) -> String Source # showList :: [(a, b, c, d, e, f, g)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h) => Show (a, b, c, d, e, f, g, h) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h) -> ShowS Source # show :: (a, b, c, d, e, f, g, h) -> String Source # showList :: [(a, b, c, d, e, f, g, h)] -> ShowS Source #
Show (p (f a) (g b)) => Show (Biff p f g a b) |
Instance details Defined in Data.Bifunctor.Biff Methods showsPrec :: Int -> Biff p f g a b -> ShowS Source # show :: Biff p f g a b -> String Source # showList :: [Biff p f g a b] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i) => Show (a, b, c, d, e, f, g, h, i) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j) => Show (a, b, c, d, e, f, g, h, i, j) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k) => Show (a, b, c, d, e, f, g, h, i, j, k) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k, Show l) => Show (a, b, c, d, e, f, g, h, i, j, k, l) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k, l) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k, l) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k, l)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k, Show l, Show m) => Show (a, b, c, d, e, f, g, h, i, j, k, l, m) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k, Show l, Show m, Show n) => Show (a, b, c, d, e, f, g, h, i, j, k, l, m, n) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k, Show l, Show m, Show n, Show o) => Show (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] -> ShowS Source #

class Typeable (a :: k) Source #

The class `Typeable` allows a concrete representation of a type to be calculated.

Minimal complete definition

typeRep#

type String = [Char] Source #

`String` is an alias for a list of characters.

String constants in Haskell are values of type `String`. That means if you write a string literal like `"hello world"`, it will have the type `[Char]`, which is the same as `String`.

Note: You can ask the compiler to automatically infer different types with the `-XOverloadedStrings` language extension, for example `"hello world" :: Text`. See `IsString` for more information.

Because `String` is just a list of characters, you can use normal list functions to do basic string manipulation. See Data.List for operations on lists.

### Performance considerations

Expand

`[Char]` is a relatively memory-inefficient type. It is a linked list of boxed word-size characters, internally it looks something like:

    ╭─────┬───┬──╮  ╭─────┬───┬──╮  ╭─────┬───┬──╮  ╭────╮
    │ (:) │   │ ─┼─>│ (:) │   │ ─┼─>│ (:) │   │ ─┼─>│ [] │
    ╰─────┴─┼─┴──╯  ╰─────┴─┼─┴──╯  ╰─────┴─┼─┴──╯  ╰────╯
            v               v               v
           'a'             'b'             'c'

The `String` "abc" will use `5*3+1 = 16` (in general `5n+1`) words of space in memory.

Furthermore, operations like `(++)` (string concatenation) are `O(n)` (in the left argument).

For historical reasons, the `base` library uses `String` in a lot of places for the conceptual simplicity, but library code dealing with user-data should use the text package for Unicode text, or the the bytestring package for binary data.

data Int32 Source #

32-bit signed integer type

#### Instances

Instances details

PrintfArg Int32 | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Int32 -> FieldFormatter Source # parseFormat :: Int32 -> ModifierParser Source #
NFData Int32 |
Instance details Defined in Control.DeepSeq Methods rnf :: Int32 -> () Source #
Bits Int32 | Since: base-2.1

Instance details

Defined in GHC.Internal.Int

Methods

(.&.) :: Int32 -> Int32 -> Int32 Source #

(.|.) :: Int32 -> Int32 -> Int32 Source #

xor :: Int32 -> Int32 -> Int32 Source #

complement :: Int32 -> Int32 Source #

shift :: Int32 -> Int -> Int32 Source #

rotate :: Int32 -> Int -> Int32 Source #

zeroBits :: Int32 Source #

bit :: Int -> Int32 Source #

setBit :: Int32 -> Int -> Int32 Source #

clearBit :: Int32 -> Int -> Int32 Source #

complementBit :: Int32 -> Int -> Int32 Source #

testBit :: Int32 -> Int -> Bool Source #

bitSizeMaybe :: Int32 -> Maybe Int Source #

bitSize :: Int32 -> Int Source #

isSigned :: Int32 -> Bool Source #

shiftL :: Int32 -> Int -> Int32 Source #

unsafeShiftL :: Int32 -> Int -> Int32 Source #

shiftR :: Int32 -> Int -> Int32 Source #

unsafeShiftR :: Int32 -> Int -> Int32 Source #

rotateL :: Int32 -> Int -> Int32 Source #

rotateR :: Int32 -> Int -> Int32 Source #

popCount :: Int32 -> Int Source #

FiniteBits Int32 | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Int Methods finiteBitSize :: Int32 -> Int Source # countLeadingZeros :: Int32 -> Int Source # countTrailingZeros :: Int32 -> Int Source #
Bounded Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods minBound :: Int32 Source # maxBound :: Int32 Source #
Enum Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods succ :: Int32 -> Int32 Source # pred :: Int32 -> Int32 Source # toEnum :: Int -> Int32 Source # fromEnum :: Int32 -> Int Source # enumFrom :: Int32 -> [Int32] Source # enumFromThen :: Int32 -> Int32 -> [Int32] Source # enumFromTo :: Int32 -> Int32 -> [Int32] Source # enumFromThenTo :: Int32 -> Int32 -> Int32 -> [Int32] Source #
Storable Int32 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Int32 -> Int Source #

alignment :: Int32 -> Int Source #

peekElemOff :: Ptr Int32 -> Int -> IO Int32 Source #

pokeElemOff :: Ptr Int32 -> Int -> Int32 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Int32 Source #

pokeByteOff :: Ptr b -> Int -> Int32 -> IO () Source #

peek :: Ptr Int32 -> IO Int32 Source #

poke :: Ptr Int32 -> Int32 -> IO () Source #

Ix Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods range :: (Int32, Int32) -> [Int32] Source # index :: (Int32, Int32) -> Int32 -> Int Source # unsafeIndex :: (Int32, Int32) -> Int32 -> Int Source # inRange :: (Int32, Int32) -> Int32 -> Bool Source # rangeSize :: (Int32, Int32) -> Int Source # unsafeRangeSize :: (Int32, Int32) -> Int Source #
Num Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (+) :: Int32 -> Int32 -> Int32 Source # (-) :: Int32 -> Int32 -> Int32 Source # (*) :: Int32 -> Int32 -> Int32 Source # negate :: Int32 -> Int32 Source # abs :: Int32 -> Int32 Source # signum :: Int32 -> Int32 Source # fromInteger :: Integer -> Int32 Source #
Read Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods readsPrec :: Int -> ReadS Int32 Source # readList :: ReadS [Int32] Source # readPrec :: ReadPrec Int32 Source # readListPrec :: ReadPrec [Int32] Source #
Integral Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods quot :: Int32 -> Int32 -> Int32 Source # rem :: Int32 -> Int32 -> Int32 Source # div :: Int32 -> Int32 -> Int32 Source # mod :: Int32 -> Int32 -> Int32 Source # quotRem :: Int32 -> Int32 -> (Int32, Int32) Source # divMod :: Int32 -> Int32 -> (Int32, Int32) Source # toInteger :: Int32 -> Integer Source #
Real Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods toRational :: Int32 -> Rational Source #
Show Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int32 -> ShowS Source # show :: Int32 -> String Source # showList :: [Int32] -> ShowS Source #
Eq Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (==) :: Int32 -> Int32 -> Bool Source # (/=) :: Int32 -> Int32 -> Bool Source #
Ord Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods compare :: Int32 -> Int32 -> Ordering Source # (<) :: Int32 -> Int32 -> Bool Source # (<=) :: Int32 -> Int32 -> Bool Source # (>) :: Int32 -> Int32 -> Bool Source # (>=) :: Int32 -> Int32 -> Bool Source # max :: Int32 -> Int32 -> Int32 Source # min :: Int32 -> Int32 -> Int32 Source #
Hashable Int32 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Int32 -> Int Source # hash :: Int32 -> Int Source #
Prim Int32 |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Int32 -> Int# Source #

sizeOf# :: Int32 -> Int# Source #

alignmentOfType# :: Proxy Int32 -> Int# Source #

alignment# :: Int32 -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Int32 Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Int32 #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Int32 -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int32 -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Int32 Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Int32 #) Source #

writeOffAddr# :: Addr# -> Int# -> Int32 -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Int32 -> State# s -> State# s Source #

Unbox Int32 |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Int32 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Int32 -> ST s (Vector Int32)

basicUnsafeThaw :: Vector Int32 -> ST s (Mutable Vector s Int32)

basicLength :: Vector Int32 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Int32 -> Vector Int32

basicUnsafeIndexM :: Vector Int32 -> Int -> Box Int32

basicUnsafeCopy :: Mutable Vector s Int32 -> Vector Int32 -> ST s ()

elemseq :: Vector Int32 -> Int32 -> b -> b

MVector MVector Int32 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Int32 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Int32 -> MVector s Int32

basicOverlaps :: MVector s Int32 -> MVector s Int32 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Int32)

basicInitialize :: MVector s Int32 -> ST s ()

basicUnsafeReplicate :: Int -> Int32 -> ST s (MVector s Int32)

basicUnsafeRead :: MVector s Int32 -> Int -> ST s Int32

basicUnsafeWrite :: MVector s Int32 -> Int -> Int32 -> ST s ()

basicClear :: MVector s Int32 -> ST s ()

basicSet :: MVector s Int32 -> Int32 -> ST s ()

basicUnsafeCopy :: MVector s Int32 -> MVector s Int32 -> ST s ()

basicUnsafeMove :: MVector s Int32 -> MVector s Int32 -> ST s ()

basicUnsafeGrow :: MVector s Int32 -> Int -> ST s (MVector s Int32)

newtype Vector Int32 |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Int32 = V_Int32 (Vector Int32)
newtype MVector s Int32 |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Int32 = MV_Int32 (MVector s Int32)

data Int64 Source #

64-bit signed integer type

#### Instances

Instances details

PrintfArg Int64 | Since: base-2.1
Instance details Defined in Text.Printf Methods formatArg :: Int64 -> FieldFormatter Source # parseFormat :: Int64 -> ModifierParser Source #
NFData Int64 |
Instance details Defined in Control.DeepSeq Methods rnf :: Int64 -> () Source #
Bits Int64 | Since: base-2.1

Instance details

Defined in GHC.Internal.Int

Methods

(.&.) :: Int64 -> Int64 -> Int64 Source #

(.|.) :: Int64 -> Int64 -> Int64 Source #

xor :: Int64 -> Int64 -> Int64 Source #

complement :: Int64 -> Int64 Source #

shift :: Int64 -> Int -> Int64 Source #

rotate :: Int64 -> Int -> Int64 Source #

zeroBits :: Int64 Source #

bit :: Int -> Int64 Source #

setBit :: Int64 -> Int -> Int64 Source #

clearBit :: Int64 -> Int -> Int64 Source #

complementBit :: Int64 -> Int -> Int64 Source #

testBit :: Int64 -> Int -> Bool Source #

bitSizeMaybe :: Int64 -> Maybe Int Source #

bitSize :: Int64 -> Int Source #

isSigned :: Int64 -> Bool Source #

shiftL :: Int64 -> Int -> Int64 Source #

unsafeShiftL :: Int64 -> Int -> Int64 Source #

shiftR :: Int64 -> Int -> Int64 Source #

unsafeShiftR :: Int64 -> Int -> Int64 Source #

rotateL :: Int64 -> Int -> Int64 Source #

rotateR :: Int64 -> Int -> Int64 Source #

popCount :: Int64 -> Int Source #

FiniteBits Int64 | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Int Methods finiteBitSize :: Int64 -> Int Source # countLeadingZeros :: Int64 -> Int Source # countTrailingZeros :: Int64 -> Int Source #
Bounded Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods minBound :: Int64 Source # maxBound :: Int64 Source #
Enum Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods succ :: Int64 -> Int64 Source # pred :: Int64 -> Int64 Source # toEnum :: Int -> Int64 Source # fromEnum :: Int64 -> Int Source # enumFrom :: Int64 -> [Int64] Source # enumFromThen :: Int64 -> Int64 -> [Int64] Source # enumFromTo :: Int64 -> Int64 -> [Int64] Source # enumFromThenTo :: Int64 -> Int64 -> Int64 -> [Int64] Source #
Storable Int64 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Int64 -> Int Source #

alignment :: Int64 -> Int Source #

peekElemOff :: Ptr Int64 -> Int -> IO Int64 Source #

pokeElemOff :: Ptr Int64 -> Int -> Int64 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Int64 Source #

pokeByteOff :: Ptr b -> Int -> Int64 -> IO () Source #

peek :: Ptr Int64 -> IO Int64 Source #

poke :: Ptr Int64 -> Int64 -> IO () Source #

Ix Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods range :: (Int64, Int64) -> [Int64] Source # index :: (Int64, Int64) -> Int64 -> Int Source # unsafeIndex :: (Int64, Int64) -> Int64 -> Int Source # inRange :: (Int64, Int64) -> Int64 -> Bool Source # rangeSize :: (Int64, Int64) -> Int Source # unsafeRangeSize :: (Int64, Int64) -> Int Source #
Num Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (+) :: Int64 -> Int64 -> Int64 Source # (-) :: Int64 -> Int64 -> Int64 Source # (*) :: Int64 -> Int64 -> Int64 Source # negate :: Int64 -> Int64 Source # abs :: Int64 -> Int64 Source # signum :: Int64 -> Int64 Source # fromInteger :: Integer -> Int64 Source #
Read Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods readsPrec :: Int -> ReadS Int64 Source # readList :: ReadS [Int64] Source # readPrec :: ReadPrec Int64 Source # readListPrec :: ReadPrec [Int64] Source #
Integral Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods quot :: Int64 -> Int64 -> Int64 Source # rem :: Int64 -> Int64 -> Int64 Source # div :: Int64 -> Int64 -> Int64 Source # mod :: Int64 -> Int64 -> Int64 Source # quotRem :: Int64 -> Int64 -> (Int64, Int64) Source # divMod :: Int64 -> Int64 -> (Int64, Int64) Source # toInteger :: Int64 -> Integer Source #
Real Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods toRational :: Int64 -> Rational Source #
Show Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int64 -> ShowS Source # show :: Int64 -> String Source # showList :: [Int64] -> ShowS Source #
Eq Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods (==) :: Int64 -> Int64 -> Bool Source # (/=) :: Int64 -> Int64 -> Bool Source #
Ord Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods compare :: Int64 -> Int64 -> Ordering Source # (<) :: Int64 -> Int64 -> Bool Source # (<=) :: Int64 -> Int64 -> Bool Source # (>) :: Int64 -> Int64 -> Bool Source # (>=) :: Int64 -> Int64 -> Bool Source # max :: Int64 -> Int64 -> Int64 Source # min :: Int64 -> Int64 -> Int64 Source #
Hashable Int64 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Int64 -> Int Source # hash :: Int64 -> Int Source #
Prim Int64 |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy Int64 -> Int# Source #

sizeOf# :: Int64 -> Int# Source #

alignmentOfType# :: Proxy Int64 -> Int# Source #

alignment# :: Int64 -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Int64 Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Int64 #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Int64 -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Int64 -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Int64 Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Int64 #) Source #

writeOffAddr# :: Addr# -> Int# -> Int64 -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Int64 -> State# s -> State# s Source #

Unbox Int64 |
Instance details Defined in Data.Vector.Unboxed.Base
Vector Vector Int64 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s Int64 -> ST s (Vector Int64)

basicUnsafeThaw :: Vector Int64 -> ST s (Mutable Vector s Int64)

basicLength :: Vector Int64 -> Int

basicUnsafeSlice :: Int -> Int -> Vector Int64 -> Vector Int64

basicUnsafeIndexM :: Vector Int64 -> Int -> Box Int64

basicUnsafeCopy :: Mutable Vector s Int64 -> Vector Int64 -> ST s ()

elemseq :: Vector Int64 -> Int64 -> b -> b

MVector MVector Int64 |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s Int64 -> Int

basicUnsafeSlice :: Int -> Int -> MVector s Int64 -> MVector s Int64

basicOverlaps :: MVector s Int64 -> MVector s Int64 -> Bool

basicUnsafeNew :: Int -> ST s (MVector s Int64)

basicInitialize :: MVector s Int64 -> ST s ()

basicUnsafeReplicate :: Int -> Int64 -> ST s (MVector s Int64)

basicUnsafeRead :: MVector s Int64 -> Int -> ST s Int64

basicUnsafeWrite :: MVector s Int64 -> Int -> Int64 -> ST s ()

basicClear :: MVector s Int64 -> ST s ()

basicSet :: MVector s Int64 -> Int64 -> ST s ()

basicUnsafeCopy :: MVector s Int64 -> MVector s Int64 -> ST s ()

basicUnsafeMove :: MVector s Int64 -> MVector s Int64 -> ST s ()

basicUnsafeGrow :: MVector s Int64 -> Int -> ST s (MVector s Int64)

newtype Vector Int64 |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector Int64 = V_Int64 (Vector Int64)
newtype MVector s Int64 |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s Int64 = MV_Int64 (MVector s Int64)

type Rational = Ratio Integer Source #

Arbitrary-precision rational numbers, represented as a ratio of two `Integer` values. A rational number may be constructed using the `%` operator.

data Either a b Source #

The `Either` type represents values with two possibilities: a value of type ``Either` a b` is either ``Left` a` or ``Right` b`.

The `Either` type is sometimes used to represent a value which is either correct or an error; by convention, the `Left` constructor is used to hold an error value and the `Right` constructor is used to hold a correct value (mnemonic: "right" also means "correct").

#### Examples

Expand

The type ``Either` `String` `Int`` is the type of values which can be either a `String` or an `Int`. The `Left` constructor can be used only on `String`s, and the `Right` constructor can be used only on `Int`s:

    >>> let s = Left "foo" :: Either String Int
    >>> s
    Left "foo"
    >>> let n = Right 3 :: Either String Int
    >>> n
    Right 3
    >>> :type s
    s :: Either String Int
    >>> :type n
    n :: Either String Int

The `fmap` from our `Functor` instance will ignore `Left` values, but will apply the supplied function to values contained in a `Right`:

    >>> let s = Left "foo" :: Either String Int
    >>> let n = Right 3 :: Either String Int
    >>> fmap (*2) s
    Left "foo"
    >>> fmap (*2) n
    Right 6

The `Monad` instance for `Either` allows us to chain together multiple actions which may fail, and fail overall if any of the individual steps failed. First we'll write a function that can either parse an `Int` from a `Char`, or fail.

    >>> import Data.Char ( digitToInt, isDigit )
    >>> :{
        let parseEither :: Char -> Either String Int
            parseEither c
              | isDigit c = Right (digitToInt c)
              | otherwise = Left "parse error"
    >>> :}

The following should work, since both `'1'` and `'2'` can be parsed as `Int`s.

    >>> :{
        let parseMultiple :: Either String Int
            parseMultiple = do
              x <- parseEither '1'
              y <- parseEither '2'
              return (x + y)
    >>> :}

    >>> parseMultiple
    Right 3

But the following should fail overall, since the first operation where we attempt to parse `'m'` as an `Int` will fail:

    >>> :{
        let parseMultiple :: Either String Int
            parseMultiple = do
              x <- parseEither 'm'
              y <- parseEither '2'
              return (x + y)
    >>> :}

    >>> parseMultiple
    Left "parse error"

Constructors

Left a |
Right b |

#### Instances

Instances details

Bifoldable Either | Since: base-4.10.0.0
Instance details Defined in Data.Bifoldable Methods bifold :: Monoid m => Either m m -> m Source # bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Either a b -> m Source # bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Either a b -> c Source # bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Either a b -> c Source #
Bifoldable1 Either |
Instance details Defined in Data.Bifoldable1 Methods bifold1 :: Semigroup m => Either m m -> m Source # bifoldMap1 :: Semigroup m => (a -> m) -> (b -> m) -> Either a b -> m Source #
Bifunctor Either | Since: base-4.8.0.0
Instance details Defined in Data.Bifunctor Methods bimap :: (a -> b) -> (c -> d) -> Either a c -> Either b d Source # first :: (a -> b) -> Either a c -> Either b c Source # second :: (b -> c) -> Either a b -> Either a c Source #
Bitraversable Either | Since: base-4.10.0.0
Instance details Defined in Data.Bitraversable Methods bitraverse :: Applicative f => (a -> f c) -> (b -> f d) -> Either a b -> f (Either c d) Source #
Eq2 Either | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> Either a c -> Either b d -> Bool Source #
Ord2 Either | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> Either a c -> Either b d -> Ordering Source #
Read2 Either | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Classes

Methods

liftReadsPrec2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> Int -> ReadS (Either a b) Source #

liftReadList2 :: (Int -> ReadS a) -> ReadS [a] -> (Int -> ReadS b) -> ReadS [b] -> ReadS [Either a b] Source #

liftReadPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec (Either a b) Source #

liftReadListPrec2 :: ReadPrec a -> ReadPrec [a] -> ReadPrec b -> ReadPrec [b] -> ReadPrec [Either a b] Source #

Show2 Either | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> Either a b -> ShowS Source # liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [Either a b] -> ShowS Source #
NFData2 Either | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods liftRnf2 :: (a -> ()) -> (b -> ()) -> Either a b -> () Source #
Hashable2 Either |
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt2 :: (Int -> a -> Int) -> (Int -> b -> Int) -> Int -> Either a b -> Int Source #
Generic1 (Either a :: Type -> Type) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep1 (Either a :: Type -> Type) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep1 (Either a :: Type -> Type) = D1 ('MetaData "Either" "GHC.Internal.Data.Either" "ghc-internal" 'False) (C1 ('MetaCons "Left" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Right" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))

Methods

from1 :: Either a a0 -> Rep1 (Either a) a0 Source #

to1 :: Rep1 (Either a) a0 -> Either a a0 Source #

MonadError e (Either e) |
Instance details Defined in Control.Monad.Error.Class Methods throwError :: e -> Either e a Source # catchError :: Either e a -> (e -> Either e a) -> Either e a Source #
Eq a => Eq1 (Either a) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftEq :: (a0 -> b -> Bool) -> Either a a0 -> Either a b -> Bool Source #
Ord a => Ord1 (Either a) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftCompare :: (a0 -> b -> Ordering) -> Either a a0 -> Either a b -> Ordering Source #
Read a => Read1 (Either a) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftReadsPrec :: (Int -> ReadS a0) -> ReadS [a0] -> Int -> ReadS (Either a a0) Source # liftReadList :: (Int -> ReadS a0) -> ReadS [a0] -> ReadS [Either a a0] Source # liftReadPrec :: ReadPrec a0 -> ReadPrec [a0] -> ReadPrec (Either a a0) Source # liftReadListPrec :: ReadPrec a0 -> ReadPrec [a0] -> ReadPrec [Either a a0] Source #
Show a => Show1 (Either a) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftShowsPrec :: (Int -> a0 -> ShowS) -> ([a0] -> ShowS) -> Int -> Either a a0 -> ShowS Source # liftShowList :: (Int -> a0 -> ShowS) -> ([a0] -> ShowS) -> [Either a a0] -> ShowS Source #
NFData a => NFData1 (Either a) | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods liftRnf :: (a0 -> ()) -> Either a a0 -> () Source #
e ~ SomeException => MonadCatch (Either e) | Since: exceptions-0.8.3
Instance details Defined in Control.Monad.Catch Methods catch :: (HasCallStack, Exception e0) => Either e a -> (e0 -> Either e a) -> Either e a Source #
e ~ SomeException => MonadMask (Either e) | Since: exceptions-0.8.3
Instance details Defined in Control.Monad.Catch Methods mask :: HasCallStack => ((forall a. Either e a -> Either e a) -> Either e b) -> Either e b Source # uninterruptibleMask :: HasCallStack => ((forall a. Either e a -> Either e a) -> Either e b) -> Either e b Source # generalBracket :: HasCallStack => Either e a -> (a -> ExitCase b -> Either e c) -> (a -> Either e b) -> Either e (b, c) Source #
e ~ SomeException => MonadThrow (Either e) |
Instance details Defined in Control.Monad.Catch Methods throwM :: (HasCallStack, Exception e0) => e0 -> Either e a Source #
Applicative (Either e) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods pure :: a -> Either e a Source # (<*>) :: Either e (a -> b) -> Either e a -> Either e b Source # liftA2 :: (a -> b -> c) -> Either e a -> Either e b -> Either e c Source # (*>) :: Either e a -> Either e b -> Either e b Source # (<*) :: Either e a -> Either e b -> Either e a Source #
Functor (Either a) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods fmap :: (a0 -> b) -> Either a a0 -> Either a b Source # (<$) :: a0 -> Either a b -> Either a a0 Source #
Monad (Either e) | Since: base-4.4.0.0
Instance details Defined in GHC.Internal.Data.Either Methods (>>=) :: Either e a -> (a -> Either e b) -> Either e b Source # (>>) :: Either e a -> Either e b -> Either e b Source # return :: a -> Either e a Source #
Foldable (Either a) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Either a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Either a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Either a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Either a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Either a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Either a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Either a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 Source #

toList :: Either a a0 -> [a0] Source #

null :: Either a a0 -> Bool Source #

length :: Either a a0 -> Int Source #

elem :: Eq a0 => a0 -> Either a a0 -> Bool Source #

maximum :: Ord a0 => Either a a0 -> a0 Source #

minimum :: Ord a0 => Either a a0 -> a0 Source #

sum :: Num a0 => Either a a0 -> a0 Source #

product :: Num a0 => Either a a0 -> a0 Source #

Traversable (Either a) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a0 -> f b) -> Either a a0 -> f (Either a b) Source # sequenceA :: Applicative f => Either a (f a0) -> f (Either a a0) Source # mapM :: Monad m => (a0 -> m b) -> Either a a0 -> m (Either a b) Source # sequence :: Monad m => Either a (m a0) -> m (Either a a0) Source #
Hashable a => Hashable1 (Either a) |
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt :: (Int -> a0 -> Int) -> Int -> Either a a0 -> Int Source #
(NFData a, NFData b) => NFData (Either a b) |
Instance details Defined in Control.DeepSeq Methods rnf :: Either a b -> () Source #
Semigroup (Either a b) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Either Methods (<>) :: Either a b -> Either a b -> Either a b Source # sconcat :: NonEmpty (Either a b) -> Either a b Source # stimes :: Integral b0 => b0 -> Either a b -> Either a b Source #
Generic (Either a b) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Either a b) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (Either a b) = D1 ('MetaData "Either" "GHC.Internal.Data.Either" "ghc-internal" 'False) (C1 ('MetaCons "Left" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Right" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)))

Methods

from :: Either a b -> Rep (Either a b) x Source #

to :: Rep (Either a b) x -> Either a b Source #

(Read a, Read b) => Read (Either a b) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods readsPrec :: Int -> ReadS (Either a b) Source # readList :: ReadS [Either a b] Source # readPrec :: ReadPrec (Either a b) Source # readListPrec :: ReadPrec [Either a b] Source #
(Show a, Show b) => Show (Either a b) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods showsPrec :: Int -> Either a b -> ShowS Source # show :: Either a b -> String Source # showList :: [Either a b] -> ShowS Source #
(Eq a, Eq b) => Eq (Either a b) | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Either Methods (==) :: Either a b -> Either a b -> Bool Source # (/=) :: Either a b -> Either a b -> Bool Source #
(Ord a, Ord b) => Ord (Either a b) | Since: base-2.1

Instance details

Defined in GHC.Internal.Data.Either

Methods

compare :: Either a b -> Either a b -> Ordering Source #

(<) :: Either a b -> Either a b -> Bool Source #

(<=) :: Either a b -> Either a b -> Bool Source #

(>) :: Either a b -> Either a b -> Bool Source #

(>=) :: Either a b -> Either a b -> Bool Source #

max :: Either a b -> Either a b -> Either a b Source #

min :: Either a b -> Either a b -> Either a b Source #

(Hashable a, Hashable b) => Hashable (Either a b) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Either a b -> Int Source # hash :: Either a b -> Int Source #
MonoFoldable (Either a b) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (Either a b) -> m) -> Either a b -> m Source #

ofoldr :: (Element (Either a b) -> b0 -> b0) -> b0 -> Either a b -> b0 Source #

ofoldl' :: (a0 -> Element (Either a b) -> a0) -> a0 -> Either a b -> a0 Source #

otoList :: Either a b -> [Element (Either a b)] Source #

oall :: (Element (Either a b) -> Bool) -> Either a b -> Bool Source #

oany :: (Element (Either a b) -> Bool) -> Either a b -> Bool Source #

onull :: Either a b -> Bool Source #

olength :: Either a b -> Int Source #

olength64 :: Either a b -> Int64 Source #

ocompareLength :: Integral i => Either a b -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (Either a b) -> f b0) -> Either a b -> f () Source #

ofor_ :: Applicative f => Either a b -> (Element (Either a b) -> f b0) -> f () Source #

omapM_ :: Applicative m => (Element (Either a b) -> m ()) -> Either a b -> m () Source #

oforM_ :: Applicative m => Either a b -> (Element (Either a b) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a0 -> Element (Either a b) -> m a0) -> a0 -> Either a b -> m a0 Source #

ofoldMap1Ex :: Semigroup m => (Element (Either a b) -> m) -> Either a b -> m Source #

ofoldr1Ex :: (Element (Either a b) -> Element (Either a b) -> Element (Either a b)) -> Either a b -> Element (Either a b) Source #

ofoldl1Ex' :: (Element (Either a b) -> Element (Either a b) -> Element (Either a b)) -> Either a b -> Element (Either a b) Source #

headEx :: Either a b -> Element (Either a b) Source #

lastEx :: Either a b -> Element (Either a b) Source #

unsafeHead :: Either a b -> Element (Either a b) Source #

unsafeLast :: Either a b -> Element (Either a b) Source #

maximumByEx :: (Element (Either a b) -> Element (Either a b) -> Ordering) -> Either a b -> Element (Either a b) Source #

minimumByEx :: (Element (Either a b) -> Element (Either a b) -> Ordering) -> Either a b -> Element (Either a b) Source #

oelem :: Element (Either a b) -> Either a b -> Bool Source #

onotElem :: Element (Either a b) -> Either a b -> Bool Source #

MonoFunctor (Either a b) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (Either a b) -> Element (Either a b)) -> Either a b -> Either a b Source #
MonoPointed (Either a b) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (Either a b) -> Either a b Source #
MonoTraversable (Either a b) |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element (Either a b) -> f (Element (Either a b))) -> Either a b -> f (Either a b) Source # omapM :: Applicative m => (Element (Either a b) -> m (Element (Either a b))) -> Either a b -> m (Either a b) Source #
type Rep1 (Either a :: Type -> Type) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep1 (Either a :: Type -> Type) = D1 ('MetaData "Either" "GHC.Internal.Data.Either" "ghc-internal" 'False) (C1 ('MetaCons "Left" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Right" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))

type Rep (Either a b) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (Either a b) = D1 ('MetaData "Either" "GHC.Internal.Data.Either" "ghc-internal" 'False) (C1 ('MetaCons "Left" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Right" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)))

type Element (Either a b) |
Instance details Defined in Data.MonoTraversable type Element (Either a b) = b

(^) :: (Num a, Integral b) => a -> b -> a infixr 8 Source #

raise a number to a non-negative integral power

data Text Source #

A space efficient, packed, unboxed Unicode text type.

#### Instances

Instances details

PrintfArg Text | Since: text-1.2.2.0
Instance details Defined in Data.Text Methods formatArg :: Text -> FieldFormatter Source # parseFormat :: Text -> ModifierParser Source #
Binary Text | Since: text-1.2.1.0
Instance details Defined in Data.Text Methods put :: Text -> Put Source # get :: Get Text Source # putList :: [Text] -> Put Source #
IOData Text |

Instance details

Defined in Data.IOData

Methods

readFile :: MonadIO m => FilePath -> m Text Source #

writeFile :: MonadIO m => FilePath -> Text -> m () Source #

getLine :: MonadIO m => m Text Source #

hGetContents :: MonadIO m => Handle -> m Text Source #

hGetLine :: MonadIO m => Handle -> m Text Source #

hPut :: MonadIO m => Handle -> Text -> m () Source #

hPutStrLn :: MonadIO m => Handle -> Text -> m () Source #

hGetChunk :: MonadIO m => Handle -> m Text Source #

NFData Text |
Instance details Defined in Data.Text Methods rnf :: Text -> () Source #
Monoid Text |
Instance details Defined in Data.Text Methods mempty :: Text Source # mappend :: Text -> Text -> Text Source # mconcat :: [Text] -> Text Source #
Semigroup Text | Beware: `stimes` will crash if the given number does not fit into an `Int`. Since: text-1.2.2.0
Instance details Defined in Data.Text Methods (<>) :: Text -> Text -> Text Source # sconcat :: NonEmpty Text -> Text Source # stimes :: Integral b => b -> Text -> Text Source #

Data Text

This instance preserves data abstraction at the cost of inefficiency. We omit reflection services for the sake of data abstraction.

This instance was created by copying the updated behavior of `Data.Set.``Set` and `Data.Map.``Map`. If you feel a mistake has been made, please feel free to submit improvements.

The original discussion is archived here: could we get a Data instance for Data.Text.Text?

The followup discussion that changed the behavior of `Set` and `Map` is archived here: Proposal: Allow gunfold for Data.Map, ...

Instance details

Defined in Data.Text

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Text -> c Text Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Text Source #

toConstr :: Text -> Constr Source #

dataTypeOf :: Text -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Text) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Text) Source #

gmapT :: (forall b. Data b => b -> b) -> Text -> Text Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Text -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Text -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Text -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Text -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Text -> m Text Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Text -> m Text Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Text -> m Text Source #

IsString Text

Performs replacement on invalid scalar values:

    >>> :set -XOverloadedStrings
    >>> "\55555" :: Text
    "\65533"

Instance details Defined in Data.Text Methods fromString :: String -> Text Source #

IsList Text

Performs replacement on invalid scalar values:

    >>> :set -XOverloadedLists
    >>> ['\55555'] :: Text
    "\65533"

Since: text-1.2.0.0

Instance details

Defined in Data.Text

Associated Types

type Item Text |
Instance details Defined in Data.Text type Item Text = Char

Methods

fromList :: [Item Text] -> Text Source #

fromListN :: Int -> [Item Text] -> Text Source #

toList :: Text -> [Item Text] Source #

Read Text |
Instance details Defined in Data.Text Methods readsPrec :: Int -> ReadS Text Source # readList :: ReadS [Text] Source # readPrec :: ReadPrec Text Source # readListPrec :: ReadPrec [Text] Source #
Show Text |
Instance details Defined in Data.Text.Show Methods showsPrec :: Int -> Text -> ShowS Source # show :: Text -> String Source # showList :: [Text] -> ShowS Source #
Eq Text |
Instance details Defined in Data.Text Methods (==) :: Text -> Text -> Bool Source # (/=) :: Text -> Text -> Bool Source #
Ord Text |
Instance details Defined in Data.Text Methods compare :: Text -> Text -> Ordering Source # (<) :: Text -> Text -> Bool Source # (<=) :: Text -> Text -> Bool Source # (>) :: Text -> Text -> Bool Source # (>=) :: Text -> Text -> Bool Source # max :: Text -> Text -> Text Source # min :: Text -> Text -> Text Source #
Hashable Text |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Text -> Int Source # hash :: Text -> Int Source #
MonoZip Text |
Instance details Defined in Data.Containers Methods ozipWith :: (Element Text -> Element Text -> Element Text) -> Text -> Text -> Text Source # ozip :: Text -> Text -> [(Element Text, Element Text)] Source # ounzip :: [(Element Text, Element Text)] -> (Text, Text) Source #
GrowingAppend Text |
Instance details Defined in Data.MonoTraversable
MonoFoldable Text |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element Text -> m) -> Text -> m Source #

ofoldr :: (Element Text -> b -> b) -> b -> Text -> b Source #

ofoldl' :: (a -> Element Text -> a) -> a -> Text -> a Source #

otoList :: Text -> [Element Text] Source #

oall :: (Element Text -> Bool) -> Text -> Bool Source #

oany :: (Element Text -> Bool) -> Text -> Bool Source #

onull :: Text -> Bool Source #

olength :: Text -> Int Source #

olength64 :: Text -> Int64 Source #

ocompareLength :: Integral i => Text -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element Text -> f b) -> Text -> f () Source #

ofor_ :: Applicative f => Text -> (Element Text -> f b) -> f () Source #

omapM_ :: Applicative m => (Element Text -> m ()) -> Text -> m () Source #

oforM_ :: Applicative m => Text -> (Element Text -> m ()) -> m () Source #

ofoldlM :: Monad m => (a -> Element Text -> m a) -> a -> Text -> m a Source #

ofoldMap1Ex :: Semigroup m => (Element Text -> m) -> Text -> m Source #

ofoldr1Ex :: (Element Text -> Element Text -> Element Text) -> Text -> Element Text Source #

ofoldl1Ex' :: (Element Text -> Element Text -> Element Text) -> Text -> Element Text Source #

headEx :: Text -> Element Text Source #

lastEx :: Text -> Element Text Source #

unsafeHead :: Text -> Element Text Source #

unsafeLast :: Text -> Element Text Source #

maximumByEx :: (Element Text -> Element Text -> Ordering) -> Text -> Element Text Source #

minimumByEx :: (Element Text -> Element Text -> Ordering) -> Text -> Element Text Source #

oelem :: Element Text -> Text -> Bool Source #

onotElem :: Element Text -> Text -> Bool Source #

MonoFunctor Text |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element Text -> Element Text) -> Text -> Text Source #
MonoPointed Text |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element Text -> Text Source #
MonoTraversable Text |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element Text -> f (Element Text)) -> Text -> f Text Source # omapM :: Applicative m => (Element Text -> m (Element Text)) -> Text -> m Text Source #
IsSequence Text |

Instance details

Defined in Data.Sequences

Methods

fromList :: [Element Text] -> Text Source #

lengthIndex :: Text -> Index Text Source #

break :: (Element Text -> Bool) -> Text -> (Text, Text) Source #

span :: (Element Text -> Bool) -> Text -> (Text, Text) Source #

dropWhile :: (Element Text -> Bool) -> Text -> Text Source #

takeWhile :: (Element Text -> Bool) -> Text -> Text Source #

splitAt :: Index Text -> Text -> (Text, Text) Source #

unsafeSplitAt :: Index Text -> Text -> (Text, Text) Source #

take :: Index Text -> Text -> Text Source #

unsafeTake :: Index Text -> Text -> Text Source #

drop :: Index Text -> Text -> Text Source #

unsafeDrop :: Index Text -> Text -> Text Source #

dropEnd :: Index Text -> Text -> Text Source #

partition :: (Element Text -> Bool) -> Text -> (Text, Text) Source #

uncons :: Text -> Maybe (Element Text, Text) Source #

unsnoc :: Text -> Maybe (Text, Element Text) Source #

filter :: (Element Text -> Bool) -> Text -> Text Source #

filterM :: Monad m => (Element Text -> m Bool) -> Text -> m Text Source #

replicate :: Index Text -> Element Text -> Text Source #

replicateM :: Monad m => Index Text -> m (Element Text) -> m Text Source #

groupBy :: (Element Text -> Element Text -> Bool) -> Text -> [Text] Source #

groupAllOn :: Eq b => (Element Text -> b) -> Text -> [Text] Source #

subsequences :: Text -> [Text] Source #

permutations :: Text -> [Text] Source #

tailEx :: Text -> Text Source #

tailMay :: Text -> Maybe Text Source #

initEx :: Text -> Text Source #

initMay :: Text -> Maybe Text Source #

unsafeTail :: Text -> Text Source #

unsafeInit :: Text -> Text Source #

index :: Text -> Index Text -> Maybe (Element Text) Source #

indexEx :: Text -> Index Text -> Element Text Source #

unsafeIndex :: Text -> Index Text -> Element Text Source #

splitWhen :: (Element Text -> Bool) -> Text -> [Text] Source #

tails :: Text -> [Text] Source #

inits :: Text -> [Text] Source #

initTails :: Text -> [(Text, Text)] Source #

SemiSequence Text |

Instance details

Defined in Data.Sequences

Associated Types

type Index Text |
Instance details Defined in Data.Sequences type Index Text = Int

Methods

intersperse :: Element Text -> Text -> Text Source #

reverse :: Text -> Text Source #

find :: (Element Text -> Bool) -> Text -> Maybe (Element Text) Source #

sortBy :: (Element Text -> Element Text -> Ordering) -> Text -> Text Source #

cons :: Element Text -> Text -> Text Source #

snoc :: Text -> Element Text -> Text Source #

Textual Text |

Instance details

Defined in Data.Sequences

Methods

words :: Text -> [Text] Source #

unwords :: (Element seq ~ Text, MonoFoldable seq) => seq -> Text Source #

lines :: Text -> [Text] Source #

unlines :: (Element seq ~ Text, MonoFoldable seq) => seq -> Text Source #

toLower :: Text -> Text Source #

toUpper :: Text -> Text Source #

toCaseFold :: Text -> Text Source #

breakWord :: Text -> (Text, Text) Source #

breakLine :: Text -> (Text, Text) Source #

ToBuilder Text Builder |
Instance details Defined in Data.Builder Methods toBuilder :: Text -> Builder Source #
ToBuilder Text Builder |
Instance details Defined in Data.Builder Methods toBuilder :: Text -> Builder Source #
LazySequence Text Text |
Instance details Defined in Data.Sequences Methods toChunks :: Text -> [Text] Source # fromChunks :: [Text] -> Text Source # toStrict :: Text -> Text Source # fromStrict :: Text -> Text Source #
Utf8 Text ByteString |
Instance details Defined in Data.Sequences Methods encodeUtf8 :: Text -> ByteString Source # decodeUtf8 :: ByteString -> Text Source #
Lift Text | Since: text-1.2.4.0
Instance details Defined in Data.Text Methods lift :: Quote m => Text -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => Text -> Code m Text Source #
type Item Text |
Instance details Defined in Data.Text type Item Text = Char
type Element Text |
Instance details Defined in Data.MonoTraversable type Element Text = Char
type Index Text |
Instance details Defined in Data.Sequences type Index Text = Int

(&&) :: Bool -> Bool -> Bool infixr 3 Source #

Boolean "and", lazy in the second argument

(||) :: Bool -> Bool -> Bool infixr 2 Source #

Boolean "or", lazy in the second argument

not :: Bool -> Bool Source #

Boolean "not"

fst :: (a, b) -> a Source #

Extract the first component of a pair.

snd :: (a, b) -> b Source #

Extract the second component of a pair.

curry :: ((a, b) -> c) -> a -> b -> c Source #

Convert an uncurried function to a curried function.

#### Examples

Expand

    >>> curry fst 1 2
    1

uncurry :: (a -> b -> c) -> (a, b) -> c Source #

`uncurry` converts a curried function to a function on pairs.

#### Examples

Expand

    >>> uncurry (+) (1,2)
    3

    >>> uncurry ($) (show, 1)
    "1"

    >>> map (uncurry max) [(1,2), (3,4), (6,8)]
    [2,4,8]

swap :: (a, b) -> (b, a) Source #

Swap the components of a pair.

data SomeException Source #

The `SomeException` type is the root of the exception type hierarchy. When an exception of type `e` is thrown, behind the scenes it is encapsulated in a `SomeException`.

#### Instances

Instances details

Exception SomeException | This drops any attached `ExceptionContext`. Since: base-3.0
Instance details Defined in GHC.Internal.Exception.Type Methods toException :: SomeException -> SomeException Source # fromException :: SomeException -> Maybe SomeException Source # displayException :: SomeException -> String Source # backtraceDesired :: SomeException -> Bool Source #
Show SomeException | Since: ghc-internal-3.0
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> SomeException -> ShowS Source # show :: SomeException -> String Source # showList :: [SomeException] -> ShowS Source #

error :: HasCallStack => [Char] -> a Source #

`error` stops execution and displays an error message.

(=<<) :: Monad m => (a -> m b) -> m a -> m b infixr 1 Source #

Same as `>>=`, but with the arguments interchanged.

    as >>= f == f =<< as

id :: forall (a :: k). Category cat => cat a a Source #

the identity morphism

(.) :: forall (b :: k) (c :: k) (a :: k). Category cat => cat b c -> cat a b -> cat a c infixr 9 Source #

morphism composition

flip :: (a -> b -> c) -> b -> a -> c Source #

``flip` f` takes its (first) two arguments in the reverse order of `f`.

    flip f x y = f y x

    flip . flip = id

#### Examples

Expand

    >>> flip (++) "hello" "world"
    "worldhello"

    >>> let (.>) = flip (.) in (+1) .> show $ 5
    "6"

($!) :: (a -> b) -> a -> b infixr 0 Source #

Strict (call-by-value) application operator. It takes a function and an argument, evaluates the argument to weak head normal form (WHNF), then calls the function with that value.

until :: (a -> Bool) -> (a -> a) -> a -> a Source #

``until` p f` yields the result of applying `f` until `p` holds.

asTypeOf :: a -> a -> a Source #

`asTypeOf` is a type-restricted version of `const`. It is usually used as an infix operator, and its typing forces its first argument (which is usually overloaded) to have the same type as the second.

subtract :: Num a => a -> a -> a Source #

the same as ``flip` (`-`)`.

Because `-` is treated specially in the Haskell grammar, `(-` e`)` is not a section, but an application of prefix negation. However, `(`subtract`` exp`)` is equivalent to the disallowed section.

maybe :: b -> (a -> b) -> Maybe a -> b Source #

The `maybe` function takes a default value, a function, and a `Maybe` value. If the `Maybe` value is `Nothing`, the function returns the default value. Otherwise, it applies the function to the value inside the `Just` and returns the result.

#### Examples

Expand

Basic usage:

    >>> maybe False odd (Just 3)
    True

    >>> maybe False odd Nothing
    False

Read an integer from a string using `readMaybe`. If we succeed, return twice the integer; that is, apply `(*2)` to it. If instead we fail to parse an integer, return `0` by default:

    >>> import GHC.Internal.Text.Read ( readMaybe )
    >>> maybe 0 (*2) (readMaybe "5")
    10
    >>> maybe 0 (*2) (readMaybe "")
    0

Apply `show` to a `Maybe Int`. If we have `Just n`, we want to show the underlying `Int` `n`. But if we have `Nothing`, we return the empty string instead of (for example) "Nothing":

    >>> maybe "" show (Just 5)
    "5"
    >>> maybe "" show Nothing
    ""

isJust :: Maybe a -> Bool Source #

The `isJust` function returns `True` iff its argument is of the form `Just _`.

#### Examples

Expand

Basic usage:

    >>> isJust (Just 3)
    True

    >>> isJust (Just ())
    True

    >>> isJust Nothing
    False

Only the outer constructor is taken into consideration:

    >>> isJust (Just Nothing)
    True

isNothing :: Maybe a -> Bool Source #

The `isNothing` function returns `True` iff its argument is `Nothing`.

#### Examples

Expand

Basic usage:

    >>> isNothing (Just 3)
    False

    >>> isNothing (Just ())
    False

    >>> isNothing Nothing
    True

Only the outer constructor is taken into consideration:

    >>> isNothing (Just Nothing)
    False

fromMaybe :: a -> Maybe a -> a Source #

The `fromMaybe` function takes a default value and a `Maybe` value. If the `Maybe` is `Nothing`, it returns the default value; otherwise, it returns the value contained in the `Maybe`.

#### Examples

Expand

Basic usage:

    >>> fromMaybe "" (Just "Hello, World!")
    "Hello, World!"

    >>> fromMaybe "" Nothing
    ""

Read an integer from a string using `readMaybe`. If we fail to parse an integer, we want to return `0` by default:

    >>> import GHC.Internal.Text.Read ( readMaybe )
    >>> fromMaybe 0 (readMaybe "5")
    5
    >>> fromMaybe 0 (readMaybe "")
    0

maybeToList :: Maybe a -> [a] Source #

The `maybeToList` function returns an empty list when given `Nothing` or a singleton list when given `Just`.

#### Examples

Expand

Basic usage:

    >>> maybeToList (Just 7)
    [7]

    >>> maybeToList Nothing
    []

One can use `maybeToList` to avoid pattern matching when combined with a function that (safely) works on lists:

    >>> import GHC.Internal.Text.Read ( readMaybe )
    >>> sum $ maybeToList (readMaybe "3")
    3
    >>> sum $ maybeToList (readMaybe "")
    0

listToMaybe :: [a] -> Maybe a Source #

The `listToMaybe` function returns `Nothing` on an empty list or ``Just` a` where `a` is the first element of the list.

#### Examples

Expand

Basic usage:

    >>> listToMaybe []
    Nothing

    >>> listToMaybe [9]
    Just 9

    >>> listToMaybe [1,2,3]
    Just 1

Composing `maybeToList` with `listToMaybe` should be the identity on singleton/empty lists:

    >>> maybeToList $ listToMaybe [5]
    [5]
    >>> maybeToList $ listToMaybe []
    []

But not on lists with more than one element:

    >>> maybeToList $ listToMaybe [1,2,3]
    [1]

mapMaybe :: (a -> Maybe b) -> [a] -> [b] Source #

The `mapMaybe` function is a version of `map` which can throw out elements. In particular, the functional argument returns something of type ``Maybe` b`. If this is `Nothing`, no element is added on to the result list. If it is ``Just` b`, then `b` is included in the result list.

#### Examples

Expand

Using ``mapMaybe` f x` is a shortcut for ``catMaybes` $ `map` f x` in most cases:

    >>> import GHC.Internal.Text.Read ( readMaybe )
    >>> let readMaybeInt = readMaybe :: String -> Maybe Int
    >>> mapMaybe readMaybeInt ["1", "Foo", "3"]
    [1,3]
    >>> catMaybes $ map readMaybeInt ["1", "Foo", "3"]
    [1,3]

If we map the `Just` constructor, the entire list should be returned:

    >>> mapMaybe Just [1,2,3]
    [1,2,3]

even :: Integral a => a -> Bool Source #

odd :: Integral a => a -> Bool Source #

(^^) :: (Fractional a, Integral b) => a -> b -> a infixr 8 Source #

raise a number to an integral power

bool :: a -> a -> Bool -> a Source #

Case analysis for the `Bool` type. ``bool` f t p` evaluates to `f` when `p` is `False`, and evaluates to `t` when `p` is `True`.

This is equivalent to `if p then t else f`; that is, one can think of it as an if-then-else construct with its arguments reordered.

#### Examples

Expand

Basic usage:

    >>> bool "foo" "bar" True
    "bar"
    >>> bool "foo" "bar" False
    "foo"

Confirm that ``bool` f t p` and `if p then t else f` are equivalent:

    >>> let p = True; f = "bar"; t = "foo"
    >>> bool f t p == if p then t else f
    True
    >>> let p = False
    >>> bool f t p == if p then t else f
    True

Since: base-4.7.0.0

(<$>) :: Functor f => (a -> b) -> f a -> f b infixl 4 Source #

An infix synonym for `fmap`.

The name of this operator is an allusion to `$`. Note the similarities between their types:

     ($)  ::              (a -> b) ->   a ->   b
    (<$>) :: Functor f => (a -> b) -> f a -> f b

Whereas `$` is function application, `<$>` is function application lifted over a `Functor`.

#### Examples

Expand

Convert from a ``Maybe` `Int`` to a ``Maybe` `String`` using `show`:

    >>> show <$> Nothing
    Nothing

    >>> show <$> Just 3
    Just "3"

Convert from an ``Either` `Int` `Int`` to an ``Either` `Int`` `String` using `show`:

    >>> show <$> Left 17
    Left 17

    >>> show <$> Right 17
    Right "17"

Double each element of a list:

    >>> (*2) <$> [1,2,3]
    [2,4,6]

Apply `even` to the second element of a pair:

    >>> even <$> (2,2)
    (2,True)

on :: (b -> b -> c) -> (a -> b) -> a -> a -> c infixl 0 Source #

``on` b u x y` runs the binary function `b` on the results of applying unary function `u` to two arguments `x` and `y`. From the opposite perspective, it transforms two inputs and combines the outputs.

    (op `on` f) x y = f x `op` f y

#### Examples

Expand

    >>> sortBy (compare `on` length) [[0, 1, 2], [0, 1], [], [0]]
    [[],[0],[0,1],[0,1,2]]

    >>> ((+) `on` length) [1, 2, 3] [-1]
    4

    >>> ((,) `on` (*2)) 2 3
    (4,6)

#### Algebraic properties

Expand

-     (*) `on` id = (*) -- (if (*) ∉ {⊥, const ⊥})

-     ((*) `on` f) `on` g = (*) `on` (f . g)

-     flip on f . flip on g = flip on (g . f)

lift :: (MonadTrans t, Monad m) => m a -> t m a Source #

Lift a computation from the argument monad to the constructed monad.

either :: (a -> c) -> (b -> c) -> Either a b -> c Source #

Case analysis for the `Either` type. If the value is ``Left` a`, apply the first function to `a`; if it is ``Right` b`, apply the second function to `b`.

#### Examples

Expand

We create two values of type ``Either` `String` `Int``, one using the `Left` constructor and another using the `Right` constructor. Then we apply "either" the `length` function (if we have a `String`) or the "times-two" function (if we have an `Int`):

    >>> let s = Left "foo" :: Either String Int
    >>> let n = Right 3 :: Either String Int
    >>> either length (*2) s
    3
    >>> either length (*2) n
    6

lefts :: [Either a b] -> [a] Source #

Extracts from a list of `Either` all the `Left` elements. All the `Left` elements are extracted in order.

#### Examples

Expand

Basic usage:

    >>> let list = [ Left "foo", Right 3, Left "bar", Right 7, Left "baz" ]
    >>> lefts list
    ["foo","bar","baz"]

rights :: [Either a b] -> [b] Source #

Extracts from a list of `Either` all the `Right` elements. All the `Right` elements are extracted in order.

#### Examples

Expand

Basic usage:

    >>> let list = [ Left "foo", Right 3, Left "bar", Right 7, Left "baz" ]
    >>> rights list
    [3,7]

partitionEithers :: [Either a b] -> ([a], [b]) Source #

Partitions a list of `Either` into two lists. All the `Left` elements are extracted, in order, to the first component of the output. Similarly the `Right` elements are extracted to the second component of the output.

#### Examples

Expand

Basic usage:

    >>> let list = [ Left "foo", Right 3, Left "bar", Right 7, Left "baz" ]
    >>> partitionEithers list
    (["foo","bar","baz"],[3,7])

The pair returned by ``partitionEithers` x` should be the same pair as `(`lefts` x, `rights` x)`:

    >>> let list = [ Left "foo", Right 3, Left "bar", Right 7, Left "baz" ]
    >>> partitionEithers list == (lefts list, rights list)
    True

class Storable a Source #

The member functions of this class facilitate writing values of primitive types to raw memory (which may have been allocated with the above mentioned routines) and reading values from blocks of raw memory. The class, furthermore, includes support for computing the storage requirements and alignment restrictions of storable types.

Memory addresses are represented as values of type ``Ptr` a`, for some `a` which is an instance of class `Storable`. The type argument to `Ptr` helps provide some valuable type safety in FFI code (you can't mix pointers of different types without an explicit cast), while helping the Haskell type system figure out which marshalling method is needed for a given pointer.

All marshalling between Haskell and a foreign language ultimately boils down to translating Haskell data structures into the binary representation of a corresponding data structure of the foreign language and vice versa. To code this marshalling in Haskell, it is necessary to manipulate primitive data types stored in unstructured memory blocks. The class `Storable` facilitates this manipulation on all types for which it is instantiated, which are the standard basic types of Haskell, the fixed size `Int` types (`Int8`, `Int16`, `Int32`, `Int64`), the fixed size `Word` types (`Word8`, `Word16`, `Word32`, `Word64`), `StablePtr`, all types from Foreign.C.Types, as well as `Ptr`.

Minimal complete definition

sizeOf, alignment, (peek | peekElemOff | peekByteOff), (poke | pokeElemOff | pokeByteOff)

#### Instances

Instances details

Storable Fingerprint | Since: base-4.4.0.0

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Fingerprint -> Int Source #

alignment :: Fingerprint -> Int Source #

peekElemOff :: Ptr Fingerprint -> Int -> IO Fingerprint Source #

pokeElemOff :: Ptr Fingerprint -> Int -> Fingerprint -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Fingerprint Source #

pokeByteOff :: Ptr b -> Int -> Fingerprint -> IO () Source #

peek :: Ptr Fingerprint -> IO Fingerprint Source #

poke :: Ptr Fingerprint -> Fingerprint -> IO () Source #

Storable CBool |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CBool -> Int Source #

alignment :: CBool -> Int Source #

peekElemOff :: Ptr CBool -> Int -> IO CBool Source #

pokeElemOff :: Ptr CBool -> Int -> CBool -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CBool Source #

pokeByteOff :: Ptr b -> Int -> CBool -> IO () Source #

peek :: Ptr CBool -> IO CBool Source #

poke :: Ptr CBool -> CBool -> IO () Source #

Storable CChar |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CChar -> Int Source #

alignment :: CChar -> Int Source #

peekElemOff :: Ptr CChar -> Int -> IO CChar Source #

pokeElemOff :: Ptr CChar -> Int -> CChar -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CChar Source #

pokeByteOff :: Ptr b -> Int -> CChar -> IO () Source #

peek :: Ptr CChar -> IO CChar Source #

poke :: Ptr CChar -> CChar -> IO () Source #

Storable CClock |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CClock -> Int Source #

alignment :: CClock -> Int Source #

peekElemOff :: Ptr CClock -> Int -> IO CClock Source #

pokeElemOff :: Ptr CClock -> Int -> CClock -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CClock Source #

pokeByteOff :: Ptr b -> Int -> CClock -> IO () Source #

peek :: Ptr CClock -> IO CClock Source #

poke :: Ptr CClock -> CClock -> IO () Source #

Storable CDouble |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CDouble -> Int Source #

alignment :: CDouble -> Int Source #

peekElemOff :: Ptr CDouble -> Int -> IO CDouble Source #

pokeElemOff :: Ptr CDouble -> Int -> CDouble -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CDouble Source #

pokeByteOff :: Ptr b -> Int -> CDouble -> IO () Source #

peek :: Ptr CDouble -> IO CDouble Source #

poke :: Ptr CDouble -> CDouble -> IO () Source #

Storable CFloat |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CFloat -> Int Source #

alignment :: CFloat -> Int Source #

peekElemOff :: Ptr CFloat -> Int -> IO CFloat Source #

pokeElemOff :: Ptr CFloat -> Int -> CFloat -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CFloat Source #

pokeByteOff :: Ptr b -> Int -> CFloat -> IO () Source #

peek :: Ptr CFloat -> IO CFloat Source #

poke :: Ptr CFloat -> CFloat -> IO () Source #

Storable CInt |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CInt -> Int Source #

alignment :: CInt -> Int Source #

peekElemOff :: Ptr CInt -> Int -> IO CInt Source #

pokeElemOff :: Ptr CInt -> Int -> CInt -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CInt Source #

pokeByteOff :: Ptr b -> Int -> CInt -> IO () Source #

peek :: Ptr CInt -> IO CInt Source #

poke :: Ptr CInt -> CInt -> IO () Source #

Storable CIntMax |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CIntMax -> Int Source #

alignment :: CIntMax -> Int Source #

peekElemOff :: Ptr CIntMax -> Int -> IO CIntMax Source #

pokeElemOff :: Ptr CIntMax -> Int -> CIntMax -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CIntMax Source #

pokeByteOff :: Ptr b -> Int -> CIntMax -> IO () Source #

peek :: Ptr CIntMax -> IO CIntMax Source #

poke :: Ptr CIntMax -> CIntMax -> IO () Source #

Storable CIntPtr |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CIntPtr -> Int Source #

alignment :: CIntPtr -> Int Source #

peekElemOff :: Ptr CIntPtr -> Int -> IO CIntPtr Source #

pokeElemOff :: Ptr CIntPtr -> Int -> CIntPtr -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CIntPtr Source #

pokeByteOff :: Ptr b -> Int -> CIntPtr -> IO () Source #

peek :: Ptr CIntPtr -> IO CIntPtr Source #

poke :: Ptr CIntPtr -> CIntPtr -> IO () Source #

Storable CLLong |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CLLong -> Int Source #

alignment :: CLLong -> Int Source #

peekElemOff :: Ptr CLLong -> Int -> IO CLLong Source #

pokeElemOff :: Ptr CLLong -> Int -> CLLong -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CLLong Source #

pokeByteOff :: Ptr b -> Int -> CLLong -> IO () Source #

peek :: Ptr CLLong -> IO CLLong Source #

poke :: Ptr CLLong -> CLLong -> IO () Source #

Storable CLong |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CLong -> Int Source #

alignment :: CLong -> Int Source #

peekElemOff :: Ptr CLong -> Int -> IO CLong Source #

pokeElemOff :: Ptr CLong -> Int -> CLong -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CLong Source #

pokeByteOff :: Ptr b -> Int -> CLong -> IO () Source #

peek :: Ptr CLong -> IO CLong Source #

poke :: Ptr CLong -> CLong -> IO () Source #

Storable CPtrdiff |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CPtrdiff -> Int Source #

alignment :: CPtrdiff -> Int Source #

peekElemOff :: Ptr CPtrdiff -> Int -> IO CPtrdiff Source #

pokeElemOff :: Ptr CPtrdiff -> Int -> CPtrdiff -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CPtrdiff Source #

pokeByteOff :: Ptr b -> Int -> CPtrdiff -> IO () Source #

peek :: Ptr CPtrdiff -> IO CPtrdiff Source #

poke :: Ptr CPtrdiff -> CPtrdiff -> IO () Source #

Storable CSChar |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CSChar -> Int Source #

alignment :: CSChar -> Int Source #

peekElemOff :: Ptr CSChar -> Int -> IO CSChar Source #

pokeElemOff :: Ptr CSChar -> Int -> CSChar -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CSChar Source #

pokeByteOff :: Ptr b -> Int -> CSChar -> IO () Source #

peek :: Ptr CSChar -> IO CSChar Source #

poke :: Ptr CSChar -> CSChar -> IO () Source #

Storable CSUSeconds |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CSUSeconds -> Int Source #

alignment :: CSUSeconds -> Int Source #

peekElemOff :: Ptr CSUSeconds -> Int -> IO CSUSeconds Source #

pokeElemOff :: Ptr CSUSeconds -> Int -> CSUSeconds -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CSUSeconds Source #

pokeByteOff :: Ptr b -> Int -> CSUSeconds -> IO () Source #

peek :: Ptr CSUSeconds -> IO CSUSeconds Source #

poke :: Ptr CSUSeconds -> CSUSeconds -> IO () Source #

Storable CShort |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CShort -> Int Source #

alignment :: CShort -> Int Source #

peekElemOff :: Ptr CShort -> Int -> IO CShort Source #

pokeElemOff :: Ptr CShort -> Int -> CShort -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CShort Source #

pokeByteOff :: Ptr b -> Int -> CShort -> IO () Source #

peek :: Ptr CShort -> IO CShort Source #

poke :: Ptr CShort -> CShort -> IO () Source #

Storable CSigAtomic |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CSigAtomic -> Int Source #

alignment :: CSigAtomic -> Int Source #

peekElemOff :: Ptr CSigAtomic -> Int -> IO CSigAtomic Source #

pokeElemOff :: Ptr CSigAtomic -> Int -> CSigAtomic -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CSigAtomic Source #

pokeByteOff :: Ptr b -> Int -> CSigAtomic -> IO () Source #

peek :: Ptr CSigAtomic -> IO CSigAtomic Source #

poke :: Ptr CSigAtomic -> CSigAtomic -> IO () Source #

Storable CSize |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CSize -> Int Source #

alignment :: CSize -> Int Source #

peekElemOff :: Ptr CSize -> Int -> IO CSize Source #

pokeElemOff :: Ptr CSize -> Int -> CSize -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CSize Source #

pokeByteOff :: Ptr b -> Int -> CSize -> IO () Source #

peek :: Ptr CSize -> IO CSize Source #

poke :: Ptr CSize -> CSize -> IO () Source #

Storable CTime |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CTime -> Int Source #

alignment :: CTime -> Int Source #

peekElemOff :: Ptr CTime -> Int -> IO CTime Source #

pokeElemOff :: Ptr CTime -> Int -> CTime -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CTime Source #

pokeByteOff :: Ptr b -> Int -> CTime -> IO () Source #

peek :: Ptr CTime -> IO CTime Source #

poke :: Ptr CTime -> CTime -> IO () Source #

Storable CUChar |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CUChar -> Int Source #

alignment :: CUChar -> Int Source #

peekElemOff :: Ptr CUChar -> Int -> IO CUChar Source #

pokeElemOff :: Ptr CUChar -> Int -> CUChar -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CUChar Source #

pokeByteOff :: Ptr b -> Int -> CUChar -> IO () Source #

peek :: Ptr CUChar -> IO CUChar Source #

poke :: Ptr CUChar -> CUChar -> IO () Source #

Storable CUInt |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CUInt -> Int Source #

alignment :: CUInt -> Int Source #

peekElemOff :: Ptr CUInt -> Int -> IO CUInt Source #

pokeElemOff :: Ptr CUInt -> Int -> CUInt -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CUInt Source #

pokeByteOff :: Ptr b -> Int -> CUInt -> IO () Source #

peek :: Ptr CUInt -> IO CUInt Source #

poke :: Ptr CUInt -> CUInt -> IO () Source #

Storable CUIntMax |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CUIntMax -> Int Source #

alignment :: CUIntMax -> Int Source #

peekElemOff :: Ptr CUIntMax -> Int -> IO CUIntMax Source #

pokeElemOff :: Ptr CUIntMax -> Int -> CUIntMax -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CUIntMax Source #

pokeByteOff :: Ptr b -> Int -> CUIntMax -> IO () Source #

peek :: Ptr CUIntMax -> IO CUIntMax Source #

poke :: Ptr CUIntMax -> CUIntMax -> IO () Source #

Storable CUIntPtr |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CUIntPtr -> Int Source #

alignment :: CUIntPtr -> Int Source #

peekElemOff :: Ptr CUIntPtr -> Int -> IO CUIntPtr Source #

pokeElemOff :: Ptr CUIntPtr -> Int -> CUIntPtr -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CUIntPtr Source #

pokeByteOff :: Ptr b -> Int -> CUIntPtr -> IO () Source #

peek :: Ptr CUIntPtr -> IO CUIntPtr Source #

poke :: Ptr CUIntPtr -> CUIntPtr -> IO () Source #

Storable CULLong |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CULLong -> Int Source #

alignment :: CULLong -> Int Source #

peekElemOff :: Ptr CULLong -> Int -> IO CULLong Source #

pokeElemOff :: Ptr CULLong -> Int -> CULLong -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CULLong Source #

pokeByteOff :: Ptr b -> Int -> CULLong -> IO () Source #

peek :: Ptr CULLong -> IO CULLong Source #

poke :: Ptr CULLong -> CULLong -> IO () Source #

Storable CULong |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CULong -> Int Source #

alignment :: CULong -> Int Source #

peekElemOff :: Ptr CULong -> Int -> IO CULong Source #

pokeElemOff :: Ptr CULong -> Int -> CULong -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CULong Source #

pokeByteOff :: Ptr b -> Int -> CULong -> IO () Source #

peek :: Ptr CULong -> IO CULong Source #

poke :: Ptr CULong -> CULong -> IO () Source #

Storable CUSeconds |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CUSeconds -> Int Source #

alignment :: CUSeconds -> Int Source #

peekElemOff :: Ptr CUSeconds -> Int -> IO CUSeconds Source #

pokeElemOff :: Ptr CUSeconds -> Int -> CUSeconds -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CUSeconds Source #

pokeByteOff :: Ptr b -> Int -> CUSeconds -> IO () Source #

peek :: Ptr CUSeconds -> IO CUSeconds Source #

poke :: Ptr CUSeconds -> CUSeconds -> IO () Source #

Storable CUShort |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CUShort -> Int Source #

alignment :: CUShort -> Int Source #

peekElemOff :: Ptr CUShort -> Int -> IO CUShort Source #

pokeElemOff :: Ptr CUShort -> Int -> CUShort -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CUShort Source #

pokeByteOff :: Ptr b -> Int -> CUShort -> IO () Source #

peek :: Ptr CUShort -> IO CUShort Source #

poke :: Ptr CUShort -> CUShort -> IO () Source #

Storable CWchar |

Instance details

Defined in GHC.Internal.Foreign.C.Types

Methods

sizeOf :: CWchar -> Int Source #

alignment :: CWchar -> Int Source #

peekElemOff :: Ptr CWchar -> Int -> IO CWchar Source #

pokeElemOff :: Ptr CWchar -> Int -> CWchar -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO CWchar Source #

pokeByteOff :: Ptr b -> Int -> CWchar -> IO () Source #

peek :: Ptr CWchar -> IO CWchar Source #

poke :: Ptr CWchar -> CWchar -> IO () Source #

Storable Int16 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Int16 -> Int Source #

alignment :: Int16 -> Int Source #

peekElemOff :: Ptr Int16 -> Int -> IO Int16 Source #

pokeElemOff :: Ptr Int16 -> Int -> Int16 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Int16 Source #

pokeByteOff :: Ptr b -> Int -> Int16 -> IO () Source #

peek :: Ptr Int16 -> IO Int16 Source #

poke :: Ptr Int16 -> Int16 -> IO () Source #

Storable Int32 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Int32 -> Int Source #

alignment :: Int32 -> Int Source #

peekElemOff :: Ptr Int32 -> Int -> IO Int32 Source #

pokeElemOff :: Ptr Int32 -> Int -> Int32 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Int32 Source #

pokeByteOff :: Ptr b -> Int -> Int32 -> IO () Source #

peek :: Ptr Int32 -> IO Int32 Source #

poke :: Ptr Int32 -> Int32 -> IO () Source #

Storable Int64 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Int64 -> Int Source #

alignment :: Int64 -> Int Source #

peekElemOff :: Ptr Int64 -> Int -> IO Int64 Source #

pokeElemOff :: Ptr Int64 -> Int -> Int64 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Int64 Source #

pokeByteOff :: Ptr b -> Int -> Int64 -> IO () Source #

peek :: Ptr Int64 -> IO Int64 Source #

poke :: Ptr Int64 -> Int64 -> IO () Source #

Storable Int8 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Int8 -> Int Source #

alignment :: Int8 -> Int Source #

peekElemOff :: Ptr Int8 -> Int -> IO Int8 Source #

pokeElemOff :: Ptr Int8 -> Int -> Int8 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Int8 Source #

pokeByteOff :: Ptr b -> Int -> Int8 -> IO () Source #

peek :: Ptr Int8 -> IO Int8 Source #

poke :: Ptr Int8 -> Int8 -> IO () Source #

Storable Word16 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word16 -> Int Source #

alignment :: Word16 -> Int Source #

peekElemOff :: Ptr Word16 -> Int -> IO Word16 Source #

pokeElemOff :: Ptr Word16 -> Int -> Word16 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word16 Source #

pokeByteOff :: Ptr b -> Int -> Word16 -> IO () Source #

peek :: Ptr Word16 -> IO Word16 Source #

poke :: Ptr Word16 -> Word16 -> IO () Source #

Storable Word32 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word32 -> Int Source #

alignment :: Word32 -> Int Source #

peekElemOff :: Ptr Word32 -> Int -> IO Word32 Source #

pokeElemOff :: Ptr Word32 -> Int -> Word32 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word32 Source #

pokeByteOff :: Ptr b -> Int -> Word32 -> IO () Source #

peek :: Ptr Word32 -> IO Word32 Source #

poke :: Ptr Word32 -> Word32 -> IO () Source #

Storable Word64 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word64 -> Int Source #

alignment :: Word64 -> Int Source #

peekElemOff :: Ptr Word64 -> Int -> IO Word64 Source #

pokeElemOff :: Ptr Word64 -> Int -> Word64 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word64 Source #

pokeByteOff :: Ptr b -> Int -> Word64 -> IO () Source #

peek :: Ptr Word64 -> IO Word64 Source #

poke :: Ptr Word64 -> Word64 -> IO () Source #

Storable Word8 | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word8 -> Int Source #

alignment :: Word8 -> Int Source #

peekElemOff :: Ptr Word8 -> Int -> IO Word8 Source #

pokeElemOff :: Ptr Word8 -> Int -> Word8 -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word8 Source #

pokeByteOff :: Ptr b -> Int -> Word8 -> IO () Source #

peek :: Ptr Word8 -> IO Word8 Source #

poke :: Ptr Word8 -> Word8 -> IO () Source #

Storable () | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Foreign.Storable Methods sizeOf :: () -> Int Source # alignment :: () -> Int Source # peekElemOff :: Ptr () -> Int -> IO () Source # pokeElemOff :: Ptr () -> Int -> () -> IO () Source # peekByteOff :: Ptr b -> Int -> IO () Source # pokeByteOff :: Ptr b -> Int -> () -> IO () Source # peek :: Ptr () -> IO () Source # poke :: Ptr () -> () -> IO () Source #
Storable Bool | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Bool -> Int Source #

alignment :: Bool -> Int Source #

peekElemOff :: Ptr Bool -> Int -> IO Bool Source #

pokeElemOff :: Ptr Bool -> Int -> Bool -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Bool Source #

pokeByteOff :: Ptr b -> Int -> Bool -> IO () Source #

peek :: Ptr Bool -> IO Bool Source #

poke :: Ptr Bool -> Bool -> IO () Source #

Storable Char | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Char -> Int Source #

alignment :: Char -> Int Source #

peekElemOff :: Ptr Char -> Int -> IO Char Source #

pokeElemOff :: Ptr Char -> Int -> Char -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Char Source #

pokeByteOff :: Ptr b -> Int -> Char -> IO () Source #

peek :: Ptr Char -> IO Char Source #

poke :: Ptr Char -> Char -> IO () Source #

Storable Double | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Double -> Int Source #

alignment :: Double -> Int Source #

peekElemOff :: Ptr Double -> Int -> IO Double Source #

pokeElemOff :: Ptr Double -> Int -> Double -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Double Source #

pokeByteOff :: Ptr b -> Int -> Double -> IO () Source #

peek :: Ptr Double -> IO Double Source #

poke :: Ptr Double -> Double -> IO () Source #

Storable Float | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Float -> Int Source #

alignment :: Float -> Int Source #

peekElemOff :: Ptr Float -> Int -> IO Float Source #

pokeElemOff :: Ptr Float -> Int -> Float -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Float Source #

pokeByteOff :: Ptr b -> Int -> Float -> IO () Source #

peek :: Ptr Float -> IO Float Source #

poke :: Ptr Float -> Float -> IO () Source #

Storable Int | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Int -> Int Source #

alignment :: Int -> Int Source #

peekElemOff :: Ptr Int -> Int -> IO Int Source #

pokeElemOff :: Ptr Int -> Int -> Int -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Int Source #

pokeByteOff :: Ptr b -> Int -> Int -> IO () Source #

peek :: Ptr Int -> IO Int Source #

poke :: Ptr Int -> Int -> IO () Source #

Storable Word | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Word -> Int Source #

alignment :: Word -> Int Source #

peekElemOff :: Ptr Word -> Int -> IO Word Source #

pokeElemOff :: Ptr Word -> Int -> Word -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO Word Source #

pokeByteOff :: Ptr b -> Int -> Word -> IO () Source #

peek :: Ptr Word -> IO Word Source #

poke :: Ptr Word -> Word -> IO () Source #

Storable a => Storable (Complex a) | Since: base-4.8.0.0

Instance details

Defined in Data.Complex

Methods

sizeOf :: Complex a -> Int Source #

alignment :: Complex a -> Int Source #

peekElemOff :: Ptr (Complex a) -> Int -> IO (Complex a) Source #

pokeElemOff :: Ptr (Complex a) -> Int -> Complex a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Complex a) Source #

pokeByteOff :: Ptr b -> Int -> Complex a -> IO () Source #

peek :: Ptr (Complex a) -> IO (Complex a) Source #

poke :: Ptr (Complex a) -> Complex a -> IO () Source #

Storable a => Storable (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

sizeOf :: Identity a -> Int Source #

alignment :: Identity a -> Int Source #

peekElemOff :: Ptr (Identity a) -> Int -> IO (Identity a) Source #

pokeElemOff :: Ptr (Identity a) -> Int -> Identity a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Identity a) Source #

pokeByteOff :: Ptr b -> Int -> Identity a -> IO () Source #

peek :: Ptr (Identity a) -> IO (Identity a) Source #

poke :: Ptr (Identity a) -> Identity a -> IO () Source #

Storable a => Storable (Down a) | Since: base-4.14.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

sizeOf :: Down a -> Int Source #

alignment :: Down a -> Int Source #

peekElemOff :: Ptr (Down a) -> Int -> IO (Down a) Source #

pokeElemOff :: Ptr (Down a) -> Int -> Down a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Down a) Source #

pokeByteOff :: Ptr b -> Int -> Down a -> IO () Source #

peek :: Ptr (Down a) -> IO (Down a) Source #

poke :: Ptr (Down a) -> Down a -> IO () Source #

Storable (ConstPtr a) |

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: ConstPtr a -> Int Source #

alignment :: ConstPtr a -> Int Source #

peekElemOff :: Ptr (ConstPtr a) -> Int -> IO (ConstPtr a) Source #

pokeElemOff :: Ptr (ConstPtr a) -> Int -> ConstPtr a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (ConstPtr a) Source #

pokeByteOff :: Ptr b -> Int -> ConstPtr a -> IO () Source #

peek :: Ptr (ConstPtr a) -> IO (ConstPtr a) Source #

poke :: Ptr (ConstPtr a) -> ConstPtr a -> IO () Source #

Storable (FunPtr a) | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: FunPtr a -> Int Source #

alignment :: FunPtr a -> Int Source #

peekElemOff :: Ptr (FunPtr a) -> Int -> IO (FunPtr a) Source #

pokeElemOff :: Ptr (FunPtr a) -> Int -> FunPtr a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (FunPtr a) Source #

pokeByteOff :: Ptr b -> Int -> FunPtr a -> IO () Source #

peek :: Ptr (FunPtr a) -> IO (FunPtr a) Source #

poke :: Ptr (FunPtr a) -> FunPtr a -> IO () Source #

Storable (Ptr a) | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Ptr a -> Int Source #

alignment :: Ptr a -> Int Source #

peekElemOff :: Ptr (Ptr a) -> Int -> IO (Ptr a) Source #

pokeElemOff :: Ptr (Ptr a) -> Int -> Ptr a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Ptr a) Source #

pokeByteOff :: Ptr b -> Int -> Ptr a -> IO () Source #

peek :: Ptr (Ptr a) -> IO (Ptr a) Source #

poke :: Ptr (Ptr a) -> Ptr a -> IO () Source #

(Storable a, Integral a) => Storable (Ratio a) | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: Ratio a -> Int Source #

alignment :: Ratio a -> Int Source #

peekElemOff :: Ptr (Ratio a) -> Int -> IO (Ratio a) Source #

pokeElemOff :: Ptr (Ratio a) -> Int -> Ratio a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Ratio a) Source #

pokeByteOff :: Ptr b -> Int -> Ratio a -> IO () Source #

peek :: Ptr (Ratio a) -> IO (Ratio a) Source #

poke :: Ptr (Ratio a) -> Ratio a -> IO () Source #

Storable (StablePtr a) | Since: base-2.1

Instance details

Defined in GHC.Internal.Foreign.Storable

Methods

sizeOf :: StablePtr a -> Int Source #

alignment :: StablePtr a -> Int Source #

peekElemOff :: Ptr (StablePtr a) -> Int -> IO (StablePtr a) Source #

pokeElemOff :: Ptr (StablePtr a) -> Int -> StablePtr a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (StablePtr a) Source #

pokeByteOff :: Ptr b -> Int -> StablePtr a -> IO () Source #

peek :: Ptr (StablePtr a) -> IO (StablePtr a) Source #

poke :: Ptr (StablePtr a) -> StablePtr a -> IO () Source #

Prim a => Storable (PrimStorable a) |

Instance details

Defined in Data.Primitive.Types

Methods

sizeOf :: PrimStorable a -> Int Source #

alignment :: PrimStorable a -> Int Source #

peekElemOff :: Ptr (PrimStorable a) -> Int -> IO (PrimStorable a) Source #

pokeElemOff :: Ptr (PrimStorable a) -> Int -> PrimStorable a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (PrimStorable a) Source #

pokeByteOff :: Ptr b -> Int -> PrimStorable a -> IO () Source #

peek :: Ptr (PrimStorable a) -> IO (PrimStorable a) Source #

poke :: Ptr (PrimStorable a) -> PrimStorable a -> IO () Source #

Storable a => Storable (Tagged s a) |

Instance details

Defined in Data.Tagged

Methods

sizeOf :: Tagged s a -> Int Source #

alignment :: Tagged s a -> Int Source #

peekElemOff :: Ptr (Tagged s a) -> Int -> IO (Tagged s a) Source #

pokeElemOff :: Ptr (Tagged s a) -> Int -> Tagged s a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Tagged s a) Source #

pokeByteOff :: Ptr b -> Int -> Tagged s a -> IO () Source #

peek :: Ptr (Tagged s a) -> IO (Tagged s a) Source #

poke :: Ptr (Tagged s a) -> Tagged s a -> IO () Source #

newtype Down a Source #

The `Down` type allows you to reverse sort order conveniently. A value of type ``Down` a` contains a value of type `a` (represented as ``Down` a`).

If `a` has an ``Ord`` instance associated with it then comparing two values thus wrapped will give you the opposite of their normal sort order. This is particularly useful when sorting in generalised list comprehensions, as in: `then sortWith by `Down` x`.

    >>> compare True False
    GT

    >>> compare (Down True) (Down False)
    LT

If `a` has a ``Bounded`` instance then the wrapped instance also respects the reversed ordering by exchanging the values of ``minBound`` and ``maxBound``.

    >>> minBound :: Int
    -9223372036854775808

    >>> minBound :: Down Int
    Down 9223372036854775807

All other instances of ``Down` a` behave as they do for `a`.

Since: base-4.6.0.0

Constructors

Down |

Fields

- getDown :: a

  Since: base-4.14.0.0

#### Instances

Instances details

MonadZip Down | Since: base-4.12.0.0
Instance details Defined in Control.Monad.Zip Methods mzip :: Down a -> Down b -> Down (a, b) Source # mzipWith :: (a -> b -> c) -> Down a -> Down b -> Down c Source # munzip :: Down (a, b) -> (Down a, Down b) Source #
Foldable1 Down | Since: base-4.18.0.0

Instance details

Defined in Data.Foldable1

Methods

fold1 :: Semigroup m => Down m -> m Source #

foldMap1 :: Semigroup m => (a -> m) -> Down a -> m Source #

foldMap1' :: Semigroup m => (a -> m) -> Down a -> m Source #

toNonEmpty :: Down a -> NonEmpty a Source #

maximum :: Ord a => Down a -> a Source #

minimum :: Ord a => Down a -> a Source #

head :: Down a -> a Source #

last :: Down a -> a Source #

foldrMap1 :: (a -> b) -> (a -> b -> b) -> Down a -> b Source #

foldlMap1' :: (a -> b) -> (b -> a -> b) -> Down a -> b Source #

foldlMap1 :: (a -> b) -> (b -> a -> b) -> Down a -> b Source #

foldrMap1' :: (a -> b) -> (a -> b -> b) -> Down a -> b Source #

Eq1 Down | Since: base-4.12.0.0
Instance details Defined in Data.Functor.Classes Methods liftEq :: (a -> b -> Bool) -> Down a -> Down b -> Bool Source #
Ord1 Down | Since: base-4.12.0.0
Instance details Defined in Data.Functor.Classes Methods liftCompare :: (a -> b -> Ordering) -> Down a -> Down b -> Ordering Source #
Read1 Down | Since: base-4.12.0.0
Instance details Defined in Data.Functor.Classes Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Down a) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Down a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Down a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Down a] Source #
Show1 Down | Since: base-4.12.0.0
Instance details Defined in Data.Functor.Classes Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Down a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Down a] -> ShowS Source #
NFData1 Down | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods liftRnf :: (a -> ()) -> Down a -> () Source #
Applicative Down | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods pure :: a -> Down a Source # (<*>) :: Down (a -> b) -> Down a -> Down b Source # liftA2 :: (a -> b -> c) -> Down a -> Down b -> Down c Source # (*>) :: Down a -> Down b -> Down b Source # (<*) :: Down a -> Down b -> Down a Source #
Functor Down | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods fmap :: (a -> b) -> Down a -> Down b Source # (<$) :: a -> Down b -> Down a Source #
Monad Down | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (>>=) :: Down a -> (a -> Down b) -> Down b Source # (>>) :: Down a -> Down b -> Down b Source # return :: a -> Down a Source #
Foldable Down | Since: base-4.12.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Down m -> m Source #

foldMap :: Monoid m => (a -> m) -> Down a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Down a -> m Source #

foldr :: (a -> b -> b) -> b -> Down a -> b Source #

foldr' :: (a -> b -> b) -> b -> Down a -> b Source #

foldl :: (b -> a -> b) -> b -> Down a -> b Source #

foldl' :: (b -> a -> b) -> b -> Down a -> b Source #

foldr1 :: (a -> a -> a) -> Down a -> a Source #

foldl1 :: (a -> a -> a) -> Down a -> a Source #

toList :: Down a -> [a] Source #

null :: Down a -> Bool Source #

length :: Down a -> Int Source #

elem :: Eq a => a -> Down a -> Bool Source #

maximum :: Ord a => Down a -> a Source #

minimum :: Ord a => Down a -> a Source #

sum :: Num a => Down a -> a Source #

product :: Num a => Down a -> a Source #

Traversable Down | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Down a -> f (Down b) Source # sequenceA :: Applicative f => Down (f a) -> f (Down a) Source # mapM :: Monad m => (a -> m b) -> Down a -> m (Down b) Source # sequence :: Monad m => Down (m a) -> m (Down a) Source #
Generic1 Down |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep1 Down | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 Down = D1 ('MetaData "Down" "GHC.Internal.Data.Ord" "ghc-internal" 'True) (C1 ('MetaCons "Down" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDown") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))

Methods

from1 :: Down a -> Rep1 Down a Source #

to1 :: Rep1 Down a -> Down a Source #

Unbox a => Vector Vector (Down a) |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Down a) -> ST s (Vector (Down a))

basicUnsafeThaw :: Vector (Down a) -> ST s (Mutable Vector s (Down a))

basicLength :: Vector (Down a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Down a) -> Vector (Down a)

basicUnsafeIndexM :: Vector (Down a) -> Int -> Box (Down a)

basicUnsafeCopy :: Mutable Vector s (Down a) -> Vector (Down a) -> ST s ()

elemseq :: Vector (Down a) -> Down a -> b -> b

Unbox a => MVector MVector (Down a) |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Down a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Down a) -> MVector s (Down a)

basicOverlaps :: MVector s (Down a) -> MVector s (Down a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Down a))

basicInitialize :: MVector s (Down a) -> ST s ()

basicUnsafeReplicate :: Int -> Down a -> ST s (MVector s (Down a))

basicUnsafeRead :: MVector s (Down a) -> Int -> ST s (Down a)

basicUnsafeWrite :: MVector s (Down a) -> Int -> Down a -> ST s ()

basicClear :: MVector s (Down a) -> ST s ()

basicSet :: MVector s (Down a) -> Down a -> ST s ()

basicUnsafeCopy :: MVector s (Down a) -> MVector s (Down a) -> ST s ()

basicUnsafeMove :: MVector s (Down a) -> MVector s (Down a) -> ST s ()

basicUnsafeGrow :: MVector s (Down a) -> Int -> ST s (MVector s (Down a))

NFData a => NFData (Down a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Down a -> () Source #
Monoid a => Monoid (Down a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods mempty :: Down a Source # mappend :: Down a -> Down a -> Down a Source # mconcat :: [Down a] -> Down a Source #
Semigroup a => Semigroup (Down a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (<>) :: Down a -> Down a -> Down a Source # sconcat :: NonEmpty (Down a) -> Down a Source # stimes :: Integral b => b -> Down a -> Down a Source #
Bits a => Bits (Down a) | Since: base-4.14.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

(.&.) :: Down a -> Down a -> Down a Source #

(.|.) :: Down a -> Down a -> Down a Source #

xor :: Down a -> Down a -> Down a Source #

complement :: Down a -> Down a Source #

shift :: Down a -> Int -> Down a Source #

rotate :: Down a -> Int -> Down a Source #

zeroBits :: Down a Source #

bit :: Int -> Down a Source #

setBit :: Down a -> Int -> Down a Source #

clearBit :: Down a -> Int -> Down a Source #

complementBit :: Down a -> Int -> Down a Source #

testBit :: Down a -> Int -> Bool Source #

bitSizeMaybe :: Down a -> Maybe Int Source #

bitSize :: Down a -> Int Source #

isSigned :: Down a -> Bool Source #

shiftL :: Down a -> Int -> Down a Source #

unsafeShiftL :: Down a -> Int -> Down a Source #

shiftR :: Down a -> Int -> Down a Source #

unsafeShiftR :: Down a -> Int -> Down a Source #

rotateL :: Down a -> Int -> Down a Source #

rotateR :: Down a -> Int -> Down a Source #

popCount :: Down a -> Int Source #

FiniteBits a => FiniteBits (Down a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods finiteBitSize :: Down a -> Int Source # countLeadingZeros :: Down a -> Int Source # countTrailingZeros :: Down a -> Int Source #
Bounded a => Bounded (Down a) | Swaps ``minBound`` and ``maxBound`` of the underlying type. Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods minBound :: Down a Source # maxBound :: Down a Source #
(Enum a, Bounded a, Eq a) => Enum (Down a) | Swaps ``succ`` and ``pred`` of the underlying type. Since: base-4.18.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

succ :: Down a -> Down a Source #

pred :: Down a -> Down a Source #

toEnum :: Int -> Down a Source #

fromEnum :: Down a -> Int Source #

enumFrom :: Down a -> [Down a] Source #

enumFromThen :: Down a -> Down a -> [Down a] Source #

enumFromTo :: Down a -> Down a -> [Down a] Source #

enumFromThenTo :: Down a -> Down a -> Down a -> [Down a] Source #

Floating a => Floating (Down a) | Since: base-4.14.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

pi :: Down a Source #

exp :: Down a -> Down a Source #

log :: Down a -> Down a Source #

sqrt :: Down a -> Down a Source #

(**) :: Down a -> Down a -> Down a Source #

logBase :: Down a -> Down a -> Down a Source #

sin :: Down a -> Down a Source #

cos :: Down a -> Down a Source #

tan :: Down a -> Down a Source #

asin :: Down a -> Down a Source #

acos :: Down a -> Down a Source #

atan :: Down a -> Down a Source #

sinh :: Down a -> Down a Source #

cosh :: Down a -> Down a Source #

tanh :: Down a -> Down a Source #

asinh :: Down a -> Down a Source #

acosh :: Down a -> Down a Source #

atanh :: Down a -> Down a Source #

log1p :: Down a -> Down a Source #

expm1 :: Down a -> Down a Source #

log1pexp :: Down a -> Down a Source #

log1mexp :: Down a -> Down a Source #

RealFloat a => RealFloat (Down a) | Since: base-4.14.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

floatRadix :: Down a -> Integer Source #

floatDigits :: Down a -> Int Source #

floatRange :: Down a -> (Int, Int) Source #

decodeFloat :: Down a -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Down a Source #

exponent :: Down a -> Int Source #

significand :: Down a -> Down a Source #

scaleFloat :: Int -> Down a -> Down a Source #

isNaN :: Down a -> Bool Source #

isInfinite :: Down a -> Bool Source #

isDenormalized :: Down a -> Bool Source #

isNegativeZero :: Down a -> Bool Source #

isIEEE :: Down a -> Bool Source #

atan2 :: Down a -> Down a -> Down a Source #

Storable a => Storable (Down a) | Since: base-4.14.0.0

Instance details

Defined in GHC.Internal.Data.Ord

Methods

sizeOf :: Down a -> Int Source #

alignment :: Down a -> Int Source #

peekElemOff :: Ptr (Down a) -> Int -> IO (Down a) Source #

pokeElemOff :: Ptr (Down a) -> Int -> Down a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Down a) Source #

pokeByteOff :: Ptr b -> Int -> Down a -> IO () Source #

peek :: Ptr (Down a) -> IO (Down a) Source #

poke :: Ptr (Down a) -> Down a -> IO () Source #

Generic (Down a) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Down a) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Down a) = D1 ('MetaData "Down" "GHC.Internal.Data.Ord" "ghc-internal" 'True) (C1 ('MetaCons "Down" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDown") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Down a -> Rep (Down a) x Source #

to :: Rep (Down a) x -> Down a Source #

Ix a => Ix (Down a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods range :: (Down a, Down a) -> [Down a] Source # index :: (Down a, Down a) -> Down a -> Int Source # unsafeIndex :: (Down a, Down a) -> Down a -> Int Source # inRange :: (Down a, Down a) -> Down a -> Bool Source # rangeSize :: (Down a, Down a) -> Int Source # unsafeRangeSize :: (Down a, Down a) -> Int Source #
Num a => Num (Down a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (+) :: Down a -> Down a -> Down a Source # (-) :: Down a -> Down a -> Down a Source # (*) :: Down a -> Down a -> Down a Source # negate :: Down a -> Down a Source # abs :: Down a -> Down a Source # signum :: Down a -> Down a Source # fromInteger :: Integer -> Down a Source #
Read a => Read (Down a) | This instance would be equivalent to the derived instances of the `Down` newtype if the `getDown` field were removed Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods readsPrec :: Int -> ReadS (Down a) Source # readList :: ReadS [Down a] Source # readPrec :: ReadPrec (Down a) Source # readListPrec :: ReadPrec [Down a] Source #
Fractional a => Fractional (Down a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (/) :: Down a -> Down a -> Down a Source # recip :: Down a -> Down a Source # fromRational :: Rational -> Down a Source #
Real a => Real (Down a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods toRational :: Down a -> Rational Source #
RealFrac a => RealFrac (Down a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods properFraction :: Integral b => Down a -> (b, Down a) Source # truncate :: Integral b => Down a -> b Source # round :: Integral b => Down a -> b Source # ceiling :: Integral b => Down a -> b Source # floor :: Integral b => Down a -> b Source #
Show a => Show (Down a) | This instance would be equivalent to the derived instances of the `Down` newtype if the `getDown` field were removed Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods showsPrec :: Int -> Down a -> ShowS Source # show :: Down a -> String Source # showList :: [Down a] -> ShowS Source #
Eq a => Eq (Down a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (==) :: Down a -> Down a -> Bool Source # (/=) :: Down a -> Down a -> Bool Source #
Ord a => Ord (Down a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods compare :: Down a -> Down a -> Ordering Source # (<) :: Down a -> Down a -> Bool Source # (<=) :: Down a -> Down a -> Bool Source # (>) :: Down a -> Down a -> Bool Source # (>=) :: Down a -> Down a -> Bool Source # max :: Down a -> Down a -> Down a Source # min :: Down a -> Down a -> Down a Source #
Prim a => Prim (Down a) | Since: primitive-0.6.5.0

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy (Down a) -> Int# Source #

sizeOf# :: Down a -> Int# Source #

alignmentOfType# :: Proxy (Down a) -> Int# Source #

alignment# :: Down a -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Down a Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Down a #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Down a -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Down a -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Down a Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Down a #) Source #

writeOffAddr# :: Addr# -> Int# -> Down a -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Down a -> State# s -> State# s Source #

Unbox a => Unbox (Down a) |
Instance details Defined in Data.Vector.Unboxed.Base
type Rep1 Down | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics type Rep1 Down = D1 ('MetaData "Down" "GHC.Internal.Data.Ord" "ghc-internal" 'True) (C1 ('MetaCons "Down" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDown") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))
newtype MVector s (Down a) |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s (Down a) = MV_Down (MVector s a)
type Rep (Down a) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Down a) = D1 ('MetaData "Down" "GHC.Internal.Data.Ord" "ghc-internal" 'True) (C1 ('MetaCons "Down" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDown") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))
newtype Vector (Down a) |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector (Down a) = V_Down (Vector a)

comparing :: Ord a => (b -> a) -> b -> b -> Ordering Source #

    comparing p x y = compare (p x) (p y)

Useful combinator for use in conjunction with the `xxxBy` family of functions from Data.List, for example:

      ... sortBy (comparing fst) ...

asum :: (Foldable t, Alternative f) => t (f a) -> f a Source #

The sum of a collection of actions using `(<|>)`, generalizing `concat`.

`asum` is just like `msum`, but generalised to `Alternative`.

#### Examples

Expand

Basic usage:

    >>> asum [Just "Hello", Nothing, Just "World"]
    Just "Hello"

class (Typeable e, Show e) => Exception e where Source #

Any type that you wish to throw or catch as an exception must be an instance of the `Exception` class. The simplest case is a new exception type directly below the root:

    data MyException = ThisException | ThatException
        deriving Show

    instance Exception MyException

The default method definitions in the `Exception` class do what we need in this case. You can now throw and catch `ThisException` and `ThatException` as exceptions:

    *Main> throw ThisException `catch` \e -> putStrLn ("Caught " ++ show (e :: MyException))
    Caught ThisException

In more complicated examples, you may wish to define a whole hierarchy of exceptions:

    ---------------------------------------------------------------------
    -- Make the root exception type for all the exceptions in a compiler

    data SomeCompilerException = forall e . Exception e => SomeCompilerException e

    instance Show SomeCompilerException where
        show (SomeCompilerException e) = show e

    instance Exception SomeCompilerException

    compilerExceptionToException :: Exception e => e -> SomeException
    compilerExceptionToException = toException . SomeCompilerException

    compilerExceptionFromException :: Exception e => SomeException -> Maybe e
    compilerExceptionFromException x = do
        SomeCompilerException a <- fromException x
        cast a

    ---------------------------------------------------------------------
    -- Make a subhierarchy for exceptions in the frontend of the compiler

    data SomeFrontendException = forall e . Exception e => SomeFrontendException e

    instance Show SomeFrontendException where
        show (SomeFrontendException e) = show e

    instance Exception SomeFrontendException where
        toException = compilerExceptionToException
        fromException = compilerExceptionFromException

    frontendExceptionToException :: Exception e => e -> SomeException
    frontendExceptionToException = toException . SomeFrontendException

    frontendExceptionFromException :: Exception e => SomeException -> Maybe e
    frontendExceptionFromException x = do
        SomeFrontendException a <- fromException x
        cast a

    ---------------------------------------------------------------------
    -- Make an exception type for a particular frontend compiler exception

    data MismatchedParentheses = MismatchedParentheses
        deriving Show

    instance Exception MismatchedParentheses where
        toException   = frontendExceptionToException
        fromException = frontendExceptionFromException

We can now catch a `MismatchedParentheses` exception as `MismatchedParentheses`, `SomeFrontendException` or `SomeCompilerException`, but not other types, e.g. `IOException`:

    *Main> throw MismatchedParentheses `catch` \e -> putStrLn ("Caught " ++ show (e :: MismatchedParentheses))
    Caught MismatchedParentheses
    *Main> throw MismatchedParentheses `catch` \e -> putStrLn ("Caught " ++ show (e :: SomeFrontendException))
    Caught MismatchedParentheses
    *Main> throw MismatchedParentheses `catch` \e -> putStrLn ("Caught " ++ show (e :: SomeCompilerException))
    Caught MismatchedParentheses
    *Main> throw MismatchedParentheses `catch` \e -> putStrLn ("Caught " ++ show (e :: IOException))
    *** Exception: MismatchedParentheses

Minimal complete definition

Nothing

Methods

toException :: e -> SomeException Source #

`toException` should produce a `SomeException` with no attached `ExceptionContext`.

fromException :: SomeException -> Maybe e Source #

displayException :: e -> String Source #

Render this exception value in a human-friendly manner.

Default implementation: ``show``.

Since: base-4.8.0.0

backtraceDesired :: e -> Bool Source #

#### Instances

Instances details

Exception AsyncCancelled |
Instance details Defined in Control.Concurrent.Async.Internal Methods toException :: AsyncCancelled -> SomeException Source # fromException :: SomeException -> Maybe AsyncCancelled Source # displayException :: AsyncCancelled -> String Source # backtraceDesired :: AsyncCancelled -> Bool Source #
Exception ExceptionInLinkedThread |
Instance details Defined in Control.Concurrent.Async.Internal Methods toException :: ExceptionInLinkedThread -> SomeException Source # fromException :: SomeException -> Maybe ExceptionInLinkedThread Source # displayException :: ExceptionInLinkedThread -> String Source # backtraceDesired :: ExceptionInLinkedThread -> Bool Source #
Exception Timeout | Since: base-4.7.0.0
Instance details Defined in System.Timeout Methods toException :: Timeout -> SomeException Source # fromException :: SomeException -> Maybe Timeout Source # displayException :: Timeout -> String Source # backtraceDesired :: Timeout -> Bool Source #
Exception SizeOverflowException |
Instance details Defined in Data.ByteString.Internal.Type Methods toException :: SizeOverflowException -> SomeException Source # fromException :: SomeException -> Maybe SizeOverflowException Source # displayException :: SizeOverflowException -> String Source # backtraceDesired :: SizeOverflowException -> Bool Source #
Exception Void | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Exception.Type Methods toException :: Void -> SomeException Source # fromException :: SomeException -> Maybe Void Source # displayException :: Void -> String Source # backtraceDesired :: Void -> Bool Source #
Exception ArithException | Since: base-4.0.0.0
Instance details Defined in GHC.Internal.Exception.Type Methods toException :: ArithException -> SomeException Source # fromException :: SomeException -> Maybe ArithException Source # displayException :: ArithException -> String Source # backtraceDesired :: ArithException -> Bool Source #
Exception SomeException | This drops any attached `ExceptionContext`. Since: base-3.0
Instance details Defined in GHC.Internal.Exception.Type Methods toException :: SomeException -> SomeException Source # fromException :: SomeException -> Maybe SomeException Source # displayException :: SomeException -> String Source # backtraceDesired :: SomeException -> Bool Source #
Exception AllocationLimitExceeded | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: AllocationLimitExceeded -> SomeException Source # fromException :: SomeException -> Maybe AllocationLimitExceeded Source # displayException :: AllocationLimitExceeded -> String Source # backtraceDesired :: AllocationLimitExceeded -> Bool Source #
Exception ArrayException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: ArrayException -> SomeException Source # fromException :: SomeException -> Maybe ArrayException Source # displayException :: ArrayException -> String Source # backtraceDesired :: ArrayException -> Bool Source #
Exception AssertionFailed | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: AssertionFailed -> SomeException Source # fromException :: SomeException -> Maybe AssertionFailed Source # displayException :: AssertionFailed -> String Source # backtraceDesired :: AssertionFailed -> Bool Source #
Exception AsyncException | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: AsyncException -> SomeException Source # fromException :: SomeException -> Maybe AsyncException Source # displayException :: AsyncException -> String Source # backtraceDesired :: AsyncException -> Bool Source #
Exception BlockedIndefinitelyOnMVar | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: BlockedIndefinitelyOnMVar -> SomeException Source # fromException :: SomeException -> Maybe BlockedIndefinitelyOnMVar Source # displayException :: BlockedIndefinitelyOnMVar -> String Source # backtraceDesired :: BlockedIndefinitelyOnMVar -> Bool Source #
Exception BlockedIndefinitelyOnSTM | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: BlockedIndefinitelyOnSTM -> SomeException Source # fromException :: SomeException -> Maybe BlockedIndefinitelyOnSTM Source # displayException :: BlockedIndefinitelyOnSTM -> String Source # backtraceDesired :: BlockedIndefinitelyOnSTM -> Bool Source #
Exception CompactionFailed | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: CompactionFailed -> SomeException Source # fromException :: SomeException -> Maybe CompactionFailed Source # displayException :: CompactionFailed -> String Source # backtraceDesired :: CompactionFailed -> Bool Source #
Exception Deadlock | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: Deadlock -> SomeException Source # fromException :: SomeException -> Maybe Deadlock Source # displayException :: Deadlock -> String Source # backtraceDesired :: Deadlock -> Bool Source #
Exception ExitCode | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: ExitCode -> SomeException Source # fromException :: SomeException -> Maybe ExitCode Source # displayException :: ExitCode -> String Source # backtraceDesired :: ExitCode -> Bool Source #
Exception FixIOException | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: FixIOException -> SomeException Source # fromException :: SomeException -> Maybe FixIOException Source # displayException :: FixIOException -> String Source # backtraceDesired :: FixIOException -> Bool Source #
Exception IOException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: IOException -> SomeException Source # fromException :: SomeException -> Maybe IOException Source # displayException :: IOException -> String Source # backtraceDesired :: IOException -> Bool Source #
Exception SomeAsyncException | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: SomeAsyncException -> SomeException Source # fromException :: SomeException -> Maybe SomeAsyncException Source # displayException :: SomeAsyncException -> String Source # backtraceDesired :: SomeAsyncException -> Bool Source #
Exception NullError |
Instance details Defined in Data.NonNull Methods toException :: NullError -> SomeException Source # fromException :: SomeException -> Maybe NullError Source # displayException :: NullError -> String Source # backtraceDesired :: NullError -> Bool Source #
Exception AsyncExceptionWrapper |
Instance details Defined in Control.Exception.Safe Methods toException :: AsyncExceptionWrapper -> SomeException Source # fromException :: SomeException -> Maybe AsyncExceptionWrapper Source # displayException :: AsyncExceptionWrapper -> String Source # backtraceDesired :: AsyncExceptionWrapper -> Bool Source #
Exception StringException |
Instance details Defined in Control.Exception.Safe Methods toException :: StringException -> SomeException Source # fromException :: SomeException -> Maybe StringException Source # displayException :: StringException -> String Source # backtraceDesired :: StringException -> Bool Source #
Exception SyncExceptionWrapper |
Instance details Defined in Control.Exception.Safe Methods toException :: SyncExceptionWrapper -> SomeException Source # fromException :: SomeException -> Maybe SyncExceptionWrapper Source # displayException :: SyncExceptionWrapper -> String Source # backtraceDesired :: SyncExceptionWrapper -> Bool Source #
Exception UnicodeException |
Instance details Defined in Data.Text.Encoding.Error Methods toException :: UnicodeException -> SomeException Source # fromException :: SomeException -> Maybe UnicodeException Source # displayException :: UnicodeException -> String Source # backtraceDesired :: UnicodeException -> Bool Source #
Exception StringException | Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Exception Methods toException :: StringException -> SomeException Source # fromException :: SomeException -> Maybe StringException Source # displayException :: StringException -> String Source # backtraceDesired :: StringException -> Bool Source #
Exception ConcException |
Instance details Defined in UnliftIO.Internals.Async Methods toException :: ConcException -> SomeException Source # fromException :: SomeException -> Maybe ConcException Source # displayException :: ConcException -> String Source # backtraceDesired :: ConcException -> Bool Source #
Exception a => Exception (ExceptionWithContext a) |
Instance details Defined in GHC.Internal.Exception.Type Methods toException :: ExceptionWithContext a -> SomeException Source # fromException :: SomeException -> Maybe (ExceptionWithContext a) Source # displayException :: ExceptionWithContext a -> String Source # backtraceDesired :: ExceptionWithContext a -> Bool Source #
Exception e => Exception (NoBacktrace e) |
Instance details Defined in GHC.Internal.Exception.Type Methods toException :: NoBacktrace e -> SomeException Source # fromException :: SomeException -> Maybe (NoBacktrace e) Source # displayException :: NoBacktrace e -> String Source # backtraceDesired :: NoBacktrace e -> Bool Source #

type IOError = IOException Source #

The Haskell 2010 type for exceptions in the `IO` monad. Any I/O operation may raise an `IOError` instead of returning a result. For a more general type of exception, including also those that arise in pure code, see `Exception`.

In Haskell 2010, this is an opaque type.

data IOException Source #

Exceptions that occur in the `IO` monad. An `IOException` records a more specific error type, a descriptive string and maybe the handle that was used when the error was flagged.

#### Instances

Instances details

Exception IOException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods toException :: IOException -> SomeException Source # fromException :: SomeException -> Maybe IOException Source # displayException :: IOException -> String Source # backtraceDesired :: IOException -> Bool Source #
Show IOException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> IOException -> ShowS Source # show :: IOException -> String Source # showList :: [IOException] -> ShowS Source #
Eq IOException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods (==) :: IOException -> IOException -> Bool Source # (/=) :: IOException -> IOException -> Bool Source #
MonadError IOException IO |
Instance details Defined in Control.Monad.Error.Class Methods throwError :: IOException -> IO a Source # catchError :: IO a -> (IOException -> IO a) -> IO a Source #

userError :: String -> IOError Source #

Construct an `IOError` value with a string describing the error. The `fail` method of the `IO` instance of the `Monad` class raises a `userError`, thus:

    instance Monad IO where
      ...
      fail s = ioError (userError s)

type FilePath = String Source #

File and directory names are values of type `String`, whose precise meaning is operating system dependent. Files can be opened, yielding a handle which can then be used to operate on the contents of that file.

class Monad m => MonadIO (m :: Type -> Type) where Source #

Monads in which `IO` computations may be embedded. Any monad built by applying a sequence of monad transformers to the `IO` monad will be an instance of this class.

Instances should satisfy the following laws, which state that `liftIO` is a transformer of monads:

-     liftIO . return = return

-     liftIO (m >>= f) = liftIO m >>= (liftIO . f)

Methods

liftIO :: IO a -> m a Source #

Lift a computation from the `IO` monad. This allows us to run IO computations in any monadic stack, so long as it supports these kinds of operations (i.e. `IO` is the base monad for the stack).

### Example

Expand

    import Control.Monad.Trans.State -- from the "transformers" library

    printState :: Show s => StateT s IO ()
    printState = do
      state <- get
      liftIO $ print state

Had we omitted ``liftIO``, we would have ended up with this error:

    • Couldn't match type ‘IO’ with ‘StateT s IO’
     Expected type: StateT s IO ()
       Actual type: IO ()

The important part here is the mismatch between `StateT s IO ()` and ``IO` ()`.

Luckily, we know of a function that takes an ``IO` a` and returns an `(m a)`: ``liftIO``, enabling us to run the program and see the expected results:

    > evalStateT printState "hello"
    "hello"

    > evalStateT printState 3
    3

#### Instances

Instances details

MonadIO IO | Since: base-4.9.0.0
Instance details Defined in Control.Monad.IO.Class Methods liftIO :: IO a -> IO a Source #
MonadIO m => MonadIO (MaybeT m) |
Instance details Defined in Control.Monad.Trans.Maybe Methods liftIO :: IO a -> MaybeT m a Source #
(Functor f, MonadIO m) => MonadIO (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods liftIO :: IO a -> FreeT f m a Source #
(Monoid w, Functor m, MonadIO m) => MonadIO (AccumT w m) |
Instance details Defined in Control.Monad.Trans.Accum Methods liftIO :: IO a -> AccumT w m a Source #
MonadIO m => MonadIO (ExceptT e m) |
Instance details Defined in Control.Monad.Trans.Except Methods liftIO :: IO a -> ExceptT e m a Source #
MonadIO m => MonadIO (IdentityT m) |
Instance details Defined in Control.Monad.Trans.Identity Methods liftIO :: IO a -> IdentityT m a Source #
MonadIO m => MonadIO (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods liftIO :: IO a -> ReaderT r m a Source #
MonadIO m => MonadIO (SelectT r m) |
Instance details Defined in Control.Monad.Trans.Select Methods liftIO :: IO a -> SelectT r m a Source #
MonadIO m => MonadIO (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Lazy Methods liftIO :: IO a -> StateT s m a Source #
MonadIO m => MonadIO (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Strict Methods liftIO :: IO a -> StateT s m a Source #
MonadIO m => MonadIO (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.CPS Methods liftIO :: IO a -> WriterT w m a Source #
(Monoid w, MonadIO m) => MonadIO (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods liftIO :: IO a -> WriterT w m a Source #
(Monoid w, MonadIO m) => MonadIO (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods liftIO :: IO a -> WriterT w m a Source #
MonadIO m => MonadIO (ContT r m) |
Instance details Defined in Control.Monad.Trans.Cont Methods liftIO :: IO a -> ContT r m a Source #
MonadIO m => MonadIO (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.CPS Methods liftIO :: IO a -> RWST r w s m a Source #
(Monoid w, MonadIO m) => MonadIO (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Lazy Methods liftIO :: IO a -> RWST r w s m a Source #
(Monoid w, MonadIO m) => MonadIO (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Strict Methods liftIO :: IO a -> RWST r w s m a Source #

data IOErrorType Source #

An abstract type that contains a value for each variant of `IOError`.

#### Instances

Instances details

Show IOErrorType | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> IOErrorType -> ShowS Source # show :: IOErrorType -> String Source # showList :: [IOErrorType] -> ShowS Source #
Eq IOErrorType | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods (==) :: IOErrorType -> IOErrorType -> Bool Source # (/=) :: IOErrorType -> IOErrorType -> Bool Source #

ioError :: IOError -> IO a Source #

Raise an `IOError` in the `IO` monad.

tryIOError :: IO a -> IO (Either IOError a) Source #

The construct `tryIOError` `comp` exposes IO errors which occur within a computation, and which are not fully handled.

Non-I/O exceptions are not caught by this variant; to catch all exceptions, use `try` from Control.Exception.

Since: base-4.4.0.0

mkIOError :: IOErrorType -> String -> Maybe Handle -> Maybe FilePath -> IOError Source #

Construct an `IOError` of the given type where the second argument describes the error location and the third and fourth argument contain the file handle and file path of the file involved in the error if applicable.

isAlreadyExistsError :: IOError -> Bool Source #

An error indicating that an `IO` operation failed because one of its arguments already exists.

isDoesNotExistError :: IOError -> Bool Source #

An error indicating that an `IO` operation failed because one of its arguments does not exist.

isAlreadyInUseError :: IOError -> Bool Source #

An error indicating that an `IO` operation failed because one of its arguments is a single-use resource, which is already being used (for example, opening the same file twice for writing might give this error).

isFullError :: IOError -> Bool Source #

An error indicating that an `IO` operation failed because the device is full.

isEOFError :: IOError -> Bool Source #

An error indicating that an `IO` operation failed because the end of file has been reached.

isIllegalOperation :: IOError -> Bool Source #

An error indicating that an `IO` operation failed because the operation was not possible. Any computation which returns an `IO` result may fail with `isIllegalOperation`. In some cases, an implementation will not be able to distinguish between the possible error causes. In this case it should fail with `isIllegalOperation`.

isPermissionError :: IOError -> Bool Source #

An error indicating that an `IO` operation failed because the user does not have sufficient operating system privilege to perform that operation.

isUserError :: IOError -> Bool Source #

A programmer-defined error value constructed using `userError`.

isResourceVanishedError :: IOError -> Bool Source #

An error indicating that the operation failed because the resource vanished. See `resourceVanishedErrorType`.

Since: base-4.14.0.0

alreadyExistsErrorType :: IOErrorType Source #

I/O error where the operation failed because one of its arguments already exists.

doesNotExistErrorType :: IOErrorType Source #

I/O error where the operation failed because one of its arguments does not exist.

alreadyInUseErrorType :: IOErrorType Source #

I/O error where the operation failed because one of its arguments is a single-use resource, which is already being used.

fullErrorType :: IOErrorType Source #

I/O error where the operation failed because the device is full.

eofErrorType :: IOErrorType Source #

I/O error where the operation failed because the end of file has been reached.

illegalOperationErrorType :: IOErrorType Source #

I/O error where the operation is not possible.

permissionErrorType :: IOErrorType Source #

I/O error where the operation failed because the user does not have sufficient operating system privilege to perform that operation.

userErrorType :: IOErrorType Source #

I/O error that is programmer-defined.

resourceVanishedErrorType :: IOErrorType Source #

I/O error where the operation failed because the resource vanished. This happens when, for example, attempting to write to a closed socket or attempting to write to a named pipe that was deleted.

Since: base-4.14.0.0

isAlreadyExistsErrorType :: IOErrorType -> Bool Source #

I/O error where the operation failed because one of its arguments already exists.

isDoesNotExistErrorType :: IOErrorType -> Bool Source #

I/O error where the operation failed because one of its arguments does not exist.

isAlreadyInUseErrorType :: IOErrorType -> Bool Source #

I/O error where the operation failed because one of its arguments is a single-use resource, which is already being used.

isFullErrorType :: IOErrorType -> Bool Source #

I/O error where the operation failed because the device is full.

isEOFErrorType :: IOErrorType -> Bool Source #

I/O error where the operation failed because the end of file has been reached.

isIllegalOperationErrorType :: IOErrorType -> Bool Source #

I/O error where the operation is not possible.

isPermissionErrorType :: IOErrorType -> Bool Source #

I/O error where the operation failed because the user does not have sufficient operating system privilege to perform that operation.

isUserErrorType :: IOErrorType -> Bool Source #

I/O error that is programmer-defined.

isResourceVanishedErrorType :: IOErrorType -> Bool Source #

I/O error where the operation failed because the resource vanished. See `resourceVanishedErrorType`.

Since: base-4.14.0.0

ioeGetErrorType :: IOError -> IOErrorType Source #

ioeGetErrorString :: IOError -> String Source #

ioeGetLocation :: IOError -> String Source #

ioeGetHandle :: IOError -> Maybe Handle Source #

ioeGetFileName :: IOError -> Maybe FilePath Source #

ioeSetErrorType :: IOError -> IOErrorType -> IOError Source #

ioeSetErrorString :: IOError -> String -> IOError Source #

ioeSetLocation :: IOError -> String -> IOError Source #

ioeSetHandle :: IOError -> Handle -> IOError Source #

ioeSetFileName :: IOError -> FilePath -> IOError Source #

modifyIOError :: (IOError -> IOError) -> IO a -> IO a Source #

Catch any `IOError` that occurs in the computation and throw a modified version.

annotateIOError :: IOError -> String -> Maybe Handle -> Maybe FilePath -> IOError Source #

Adds a location description and maybe a file path and file handle to an `IOError`. If any of the file handle or file path is not given the corresponding value in the `IOError` remains unaltered.

(>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c infixr 1 Source #

Left-to-right composition of `Kleisli` arrows.

'`(bs `>=>` cs) a`' can be understood as the `do` expression

    do b <- bs a
       cs b

or in terms of ``(>>=)`` as

    bs a >>= cs

data ByteString Source #

A space-efficient representation of a `Word8` vector, supporting many efficient operations.

A `ByteString` contains 8-bit bytes, or by using the operations from Data.ByteString.Char8 it can be interpreted as containing 8-bit characters.

#### Instances

Instances details

IOData ByteString |

Instance details

Defined in Data.IOData

Methods

readFile :: MonadIO m => FilePath -> m ByteString Source #

writeFile :: MonadIO m => FilePath -> ByteString -> m () Source #

getLine :: MonadIO m => m ByteString Source #

hGetContents :: MonadIO m => Handle -> m ByteString Source #

hGetLine :: MonadIO m => Handle -> m ByteString Source #

hPut :: MonadIO m => Handle -> ByteString -> m () Source #

hPutStrLn :: MonadIO m => Handle -> ByteString -> m () Source #

hGetChunk :: MonadIO m => Handle -> m ByteString Source #

NFData ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods rnf :: ByteString -> () Source #
Monoid ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods mempty :: ByteString Source # mappend :: ByteString -> ByteString -> ByteString Source # mconcat :: [ByteString] -> ByteString Source #
Semigroup ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods (<>) :: ByteString -> ByteString -> ByteString Source # sconcat :: NonEmpty ByteString -> ByteString Source # stimes :: Integral b => b -> ByteString -> ByteString Source #
Data ByteString |

Instance details

Defined in Data.ByteString.Internal.Type

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> ByteString -> c ByteString Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c ByteString Source #

toConstr :: ByteString -> Constr Source #

dataTypeOf :: ByteString -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c ByteString) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c ByteString) Source #

gmapT :: (forall b. Data b => b -> b) -> ByteString -> ByteString Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> ByteString -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> ByteString -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> ByteString -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> ByteString -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> ByteString -> m ByteString Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteString -> m ByteString Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> ByteString -> m ByteString Source #

IsString ByteString | Beware: `fromString` truncates multi-byte characters to octets. e.g. "枯朶に烏のとまりけり秋の暮" becomes �6k�nh~�Q��n�
Instance details Defined in Data.ByteString.Internal.Type Methods fromString :: String -> ByteString Source #
IsList ByteString | Since: bytestring-0.10.12.0

Instance details

Defined in Data.ByteString.Internal.Type

Associated Types

type Item ByteString |
Instance details Defined in Data.ByteString.Internal.Type type Item ByteString = Word8

Methods

fromList :: [Item ByteString] -> ByteString Source #

fromListN :: Int -> [Item ByteString] -> ByteString Source #

toList :: ByteString -> [Item ByteString] Source #

Read ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods readsPrec :: Int -> ReadS ByteString Source # readList :: ReadS [ByteString] Source # readPrec :: ReadPrec ByteString Source # readListPrec :: ReadPrec [ByteString] Source #
Show ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods showsPrec :: Int -> ByteString -> ShowS Source # show :: ByteString -> String Source # showList :: [ByteString] -> ShowS Source #
Eq ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods (==) :: ByteString -> ByteString -> Bool Source # (/=) :: ByteString -> ByteString -> Bool Source #
Ord ByteString |

Instance details

Defined in Data.ByteString.Internal.Type

Methods

compare :: ByteString -> ByteString -> Ordering Source #

(<) :: ByteString -> ByteString -> Bool Source #

(<=) :: ByteString -> ByteString -> Bool Source #

(>) :: ByteString -> ByteString -> Bool Source #

(>=) :: ByteString -> ByteString -> Bool Source #

max :: ByteString -> ByteString -> ByteString Source #

min :: ByteString -> ByteString -> ByteString Source #

Hashable ByteString |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> ByteString -> Int Source # hash :: ByteString -> Int Source #
MonoZip ByteString |
Instance details Defined in Data.Containers Methods ozipWith :: (Element ByteString -> Element ByteString -> Element ByteString) -> ByteString -> ByteString -> ByteString Source # ozip :: ByteString -> ByteString -> [(Element ByteString, Element ByteString)] Source # ounzip :: [(Element ByteString, Element ByteString)] -> (ByteString, ByteString) Source #
GrowingAppend ByteString |
Instance details Defined in Data.MonoTraversable
MonoFoldable ByteString |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element ByteString -> m) -> ByteString -> m Source #

ofoldr :: (Element ByteString -> b -> b) -> b -> ByteString -> b Source #

ofoldl' :: (a -> Element ByteString -> a) -> a -> ByteString -> a Source #

otoList :: ByteString -> [Element ByteString] Source #

oall :: (Element ByteString -> Bool) -> ByteString -> Bool Source #

oany :: (Element ByteString -> Bool) -> ByteString -> Bool Source #

onull :: ByteString -> Bool Source #

olength :: ByteString -> Int Source #

olength64 :: ByteString -> Int64 Source #

ocompareLength :: Integral i => ByteString -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element ByteString -> f b) -> ByteString -> f () Source #

ofor_ :: Applicative f => ByteString -> (Element ByteString -> f b) -> f () Source #

omapM_ :: Applicative m => (Element ByteString -> m ()) -> ByteString -> m () Source #

oforM_ :: Applicative m => ByteString -> (Element ByteString -> m ()) -> m () Source #

ofoldlM :: Monad m => (a -> Element ByteString -> m a) -> a -> ByteString -> m a Source #

ofoldMap1Ex :: Semigroup m => (Element ByteString -> m) -> ByteString -> m Source #

ofoldr1Ex :: (Element ByteString -> Element ByteString -> Element ByteString) -> ByteString -> Element ByteString Source #

ofoldl1Ex' :: (Element ByteString -> Element ByteString -> Element ByteString) -> ByteString -> Element ByteString Source #

headEx :: ByteString -> Element ByteString Source #

lastEx :: ByteString -> Element ByteString Source #

unsafeHead :: ByteString -> Element ByteString Source #

unsafeLast :: ByteString -> Element ByteString Source #

maximumByEx :: (Element ByteString -> Element ByteString -> Ordering) -> ByteString -> Element ByteString Source #

minimumByEx :: (Element ByteString -> Element ByteString -> Ordering) -> ByteString -> Element ByteString Source #

oelem :: Element ByteString -> ByteString -> Bool Source #

onotElem :: Element ByteString -> ByteString -> Bool Source #

MonoFunctor ByteString |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element ByteString -> Element ByteString) -> ByteString -> ByteString Source #
MonoPointed ByteString |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element ByteString -> ByteString Source #
MonoTraversable ByteString |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element ByteString -> f (Element ByteString)) -> ByteString -> f ByteString Source # omapM :: Applicative m => (Element ByteString -> m (Element ByteString)) -> ByteString -> m ByteString Source #
IsSequence ByteString |

Instance details

Defined in Data.Sequences

Methods

fromList :: [Element ByteString] -> ByteString Source #

lengthIndex :: ByteString -> Index ByteString Source #

break :: (Element ByteString -> Bool) -> ByteString -> (ByteString, ByteString) Source #

span :: (Element ByteString -> Bool) -> ByteString -> (ByteString, ByteString) Source #

dropWhile :: (Element ByteString -> Bool) -> ByteString -> ByteString Source #

takeWhile :: (Element ByteString -> Bool) -> ByteString -> ByteString Source #

splitAt :: Index ByteString -> ByteString -> (ByteString, ByteString) Source #

unsafeSplitAt :: Index ByteString -> ByteString -> (ByteString, ByteString) Source #

take :: Index ByteString -> ByteString -> ByteString Source #

unsafeTake :: Index ByteString -> ByteString -> ByteString Source #

drop :: Index ByteString -> ByteString -> ByteString Source #

unsafeDrop :: Index ByteString -> ByteString -> ByteString Source #

dropEnd :: Index ByteString -> ByteString -> ByteString Source #

partition :: (Element ByteString -> Bool) -> ByteString -> (ByteString, ByteString) Source #

uncons :: ByteString -> Maybe (Element ByteString, ByteString) Source #

unsnoc :: ByteString -> Maybe (ByteString, Element ByteString) Source #

filter :: (Element ByteString -> Bool) -> ByteString -> ByteString Source #

filterM :: Monad m => (Element ByteString -> m Bool) -> ByteString -> m ByteString Source #

replicate :: Index ByteString -> Element ByteString -> ByteString Source #

replicateM :: Monad m => Index ByteString -> m (Element ByteString) -> m ByteString Source #

groupBy :: (Element ByteString -> Element ByteString -> Bool) -> ByteString -> [ByteString] Source #

groupAllOn :: Eq b => (Element ByteString -> b) -> ByteString -> [ByteString] Source #

subsequences :: ByteString -> [ByteString] Source #

permutations :: ByteString -> [ByteString] Source #

tailEx :: ByteString -> ByteString Source #

tailMay :: ByteString -> Maybe ByteString Source #

initEx :: ByteString -> ByteString Source #

initMay :: ByteString -> Maybe ByteString Source #

unsafeTail :: ByteString -> ByteString Source #

unsafeInit :: ByteString -> ByteString Source #

index :: ByteString -> Index ByteString -> Maybe (Element ByteString) Source #

indexEx :: ByteString -> Index ByteString -> Element ByteString Source #

unsafeIndex :: ByteString -> Index ByteString -> Element ByteString Source #

splitWhen :: (Element ByteString -> Bool) -> ByteString -> [ByteString] Source #

tails :: ByteString -> [ByteString] Source #

inits :: ByteString -> [ByteString] Source #

initTails :: ByteString -> [(ByteString, ByteString)] Source #

SemiSequence ByteString |

Instance details

Defined in Data.Sequences

Associated Types

type Index ByteString |
Instance details Defined in Data.Sequences type Index ByteString = Int

Methods

intersperse :: Element ByteString -> ByteString -> ByteString Source #

reverse :: ByteString -> ByteString Source #

find :: (Element ByteString -> Bool) -> ByteString -> Maybe (Element ByteString) Source #

sortBy :: (Element ByteString -> Element ByteString -> Ordering) -> ByteString -> ByteString Source #

cons :: Element ByteString -> ByteString -> ByteString Source #

snoc :: ByteString -> Element ByteString -> ByteString Source #

ToBuilder ByteString Builder |
Instance details Defined in Data.Builder Methods toBuilder :: ByteString -> Builder Source #
LazySequence ByteString ByteString |
Instance details Defined in Data.Sequences Methods toChunks :: ByteString -> [ByteString] Source # fromChunks :: [ByteString] -> ByteString Source # toStrict :: ByteString -> ByteString Source # fromStrict :: ByteString -> ByteString Source #
Utf8 Text ByteString |
Instance details Defined in Data.Sequences Methods encodeUtf8 :: Text -> ByteString Source # decodeUtf8 :: ByteString -> Text Source #
Lift ByteString | Since: bytestring-0.11.2.0
Instance details Defined in Data.ByteString.Internal.Type Methods lift :: Quote m => ByteString -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => ByteString -> Code m ByteString Source #
type Item ByteString |
Instance details Defined in Data.ByteString.Internal.Type type Item ByteString = Word8
type Element ByteString |
Instance details Defined in Data.MonoTraversable type Element ByteString = Word8
type Index ByteString |
Instance details Defined in Data.Sequences type Index ByteString = Int

data Set a Source #

A set of values `a`.

#### Instances

Instances details

Eq1 Set | Since: containers-0.5.9
Instance details Defined in Data.Set.Internal Methods liftEq :: (a -> b -> Bool) -> Set a -> Set b -> Bool Source #
Ord1 Set | Since: containers-0.5.9
Instance details Defined in Data.Set.Internal Methods liftCompare :: (a -> b -> Ordering) -> Set a -> Set b -> Ordering Source #
Show1 Set | Since: containers-0.5.9
Instance details Defined in Data.Set.Internal Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Set a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Set a] -> ShowS Source #
Foldable Set | Folds in order of increasing key.

Instance details

Defined in Data.Set.Internal

Methods

fold :: Monoid m => Set m -> m Source #

foldMap :: Monoid m => (a -> m) -> Set a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Set a -> m Source #

foldr :: (a -> b -> b) -> b -> Set a -> b Source #

foldr' :: (a -> b -> b) -> b -> Set a -> b Source #

foldl :: (b -> a -> b) -> b -> Set a -> b Source #

foldl' :: (b -> a -> b) -> b -> Set a -> b Source #

foldr1 :: (a -> a -> a) -> Set a -> a Source #

foldl1 :: (a -> a -> a) -> Set a -> a Source #

toList :: Set a -> [a] Source #

null :: Set a -> Bool Source #

length :: Set a -> Int Source #

elem :: Eq a => a -> Set a -> Bool Source #

maximum :: Ord a => Set a -> a Source #

minimum :: Ord a => Set a -> a Source #

sum :: Num a => Set a -> a Source #

product :: Num a => Set a -> a Source #

Hashable1 Set | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> Set a -> Int Source #
Lift a => Lift (Set a :: Type) | Since: containers-0.6.6
Instance details Defined in Data.Set.Internal Methods lift :: Quote m => Set a -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => Set a -> Code m (Set a) Source #
NFData a => NFData (Set a) |
Instance details Defined in Data.Set.Internal Methods rnf :: Set a -> () Source #
Ord a => Monoid (Set a) |
Instance details Defined in Data.Set.Internal Methods mempty :: Set a Source # mappend :: Set a -> Set a -> Set a Source # mconcat :: [Set a] -> Set a Source #
Ord a => Semigroup (Set a) | Since: containers-0.5.7
Instance details Defined in Data.Set.Internal Methods (<>) :: Set a -> Set a -> Set a Source # sconcat :: NonEmpty (Set a) -> Set a Source # stimes :: Integral b => b -> Set a -> Set a Source #
(Data a, Ord a) => Data (Set a) |

Instance details

Defined in Data.Set.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Set a -> c (Set a) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Set a) Source #

toConstr :: Set a -> Constr Source #

dataTypeOf :: Set a -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Set a)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Set a)) Source #

gmapT :: (forall b. Data b => b -> b) -> Set a -> Set a Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Set a -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Set a -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Set a -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Set a -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Set a -> m (Set a) Source #

Ord a => IsList (Set a) | Since: containers-0.5.6.2

Instance details

Defined in Data.Set.Internal

Associated Types

type Item (Set a) |
Instance details Defined in Data.Set.Internal type Item (Set a) = a

Methods

fromList :: [Item (Set a)] -> Set a Source #

fromListN :: Int -> [Item (Set a)] -> Set a Source #

toList :: Set a -> [Item (Set a)] Source #

(Read a, Ord a) => Read (Set a) |
Instance details Defined in Data.Set.Internal Methods readsPrec :: Int -> ReadS (Set a) Source # readList :: ReadS [Set a] Source # readPrec :: ReadPrec (Set a) Source # readListPrec :: ReadPrec [Set a] Source #
Show a => Show (Set a) |
Instance details Defined in Data.Set.Internal Methods showsPrec :: Int -> Set a -> ShowS Source # show :: Set a -> String Source # showList :: [Set a] -> ShowS Source #
Eq a => Eq (Set a) |
Instance details Defined in Data.Set.Internal Methods (==) :: Set a -> Set a -> Bool Source # (/=) :: Set a -> Set a -> Bool Source #
Ord a => Ord (Set a) |
Instance details Defined in Data.Set.Internal Methods compare :: Set a -> Set a -> Ordering Source # (<) :: Set a -> Set a -> Bool Source # (<=) :: Set a -> Set a -> Bool Source # (>) :: Set a -> Set a -> Bool Source # (>=) :: Set a -> Set a -> Bool Source # max :: Set a -> Set a -> Set a Source # min :: Set a -> Set a -> Set a Source #
Hashable v => Hashable (Set v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Set v -> Int Source # hash :: Set v -> Int Source #
Ord element => IsSet (Set element) |

Instance details

Defined in Data.Containers

Methods

insertSet :: Element (Set element) -> Set element -> Set element Source #

deleteSet :: Element (Set element) -> Set element -> Set element Source #

singletonSet :: Element (Set element) -> Set element Source #

setFromList :: [Element (Set element)] -> Set element Source #

setToList :: Set element -> [Element (Set element)] Source #

filterSet :: (Element (Set element) -> Bool) -> Set element -> Set element Source #

Ord element => SetContainer (Set element) |

Instance details

Defined in Data.Containers

Associated Types

type ContainerKey (Set element) |
Instance details Defined in Data.Containers type ContainerKey (Set element) = element

Methods

member :: ContainerKey (Set element) -> Set element -> Bool Source #

notMember :: ContainerKey (Set element) -> Set element -> Bool Source #

union :: Set element -> Set element -> Set element Source #

unions :: (MonoFoldable mono, Element mono ~ Set element) => mono -> Set element Source #

difference :: Set element -> Set element -> Set element Source #

intersection :: Set element -> Set element -> Set element Source #

keys :: Set element -> [ContainerKey (Set element)] Source #

Ord v => GrowingAppend (Set v) |
Instance details Defined in Data.MonoTraversable
Ord e => MonoFoldable (Set e) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (Set e) -> m) -> Set e -> m Source #

ofoldr :: (Element (Set e) -> b -> b) -> b -> Set e -> b Source #

ofoldl' :: (a -> Element (Set e) -> a) -> a -> Set e -> a Source #

otoList :: Set e -> [Element (Set e)] Source #

oall :: (Element (Set e) -> Bool) -> Set e -> Bool Source #

oany :: (Element (Set e) -> Bool) -> Set e -> Bool Source #

onull :: Set e -> Bool Source #

olength :: Set e -> Int Source #

olength64 :: Set e -> Int64 Source #

ocompareLength :: Integral i => Set e -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (Set e) -> f b) -> Set e -> f () Source #

ofor_ :: Applicative f => Set e -> (Element (Set e) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (Set e) -> m ()) -> Set e -> m () Source #

oforM_ :: Applicative m => Set e -> (Element (Set e) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a -> Element (Set e) -> m a) -> a -> Set e -> m a Source #

ofoldMap1Ex :: Semigroup m => (Element (Set e) -> m) -> Set e -> m Source #

ofoldr1Ex :: (Element (Set e) -> Element (Set e) -> Element (Set e)) -> Set e -> Element (Set e) Source #

ofoldl1Ex' :: (Element (Set e) -> Element (Set e) -> Element (Set e)) -> Set e -> Element (Set e) Source #

headEx :: Set e -> Element (Set e) Source #

lastEx :: Set e -> Element (Set e) Source #

unsafeHead :: Set e -> Element (Set e) Source #

unsafeLast :: Set e -> Element (Set e) Source #

maximumByEx :: (Element (Set e) -> Element (Set e) -> Ordering) -> Set e -> Element (Set e) Source #

minimumByEx :: (Element (Set e) -> Element (Set e) -> Ordering) -> Set e -> Element (Set e) Source #

oelem :: Element (Set e) -> Set e -> Bool Source #

onotElem :: Element (Set e) -> Set e -> Bool Source #

MonoPointed (Set a) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (Set a) -> Set a Source #
type Item (Set a) |
Instance details Defined in Data.Set.Internal type Item (Set a) = a
type ContainerKey (Set element) |
Instance details Defined in Data.Containers type ContainerKey (Set element) = element
type Element (Set e) |
Instance details Defined in Data.MonoTraversable type Element (Set e) = e

data Seq a Source #

General-purpose finite sequences.

#### Instances

Instances details

MonadZip Seq

     mzipWith = zipWith

     munzip = unzip

Since: containers-0.5.10.1

Instance details Defined in Data.Sequence.Internal Methods mzip :: Seq a -> Seq b -> Seq (a, b) Source # mzipWith :: (a -> b -> c) -> Seq a -> Seq b -> Seq c Source # munzip :: Seq (a, b) -> (Seq a, Seq b) Source #
Eq1 Seq | Since: containers-0.5.9
Instance details Defined in Data.Sequence.Internal Methods liftEq :: (a -> b -> Bool) -> Seq a -> Seq b -> Bool Source #
Ord1 Seq | Since: containers-0.5.9
Instance details Defined in Data.Sequence.Internal Methods liftCompare :: (a -> b -> Ordering) -> Seq a -> Seq b -> Ordering Source #
Read1 Seq | Since: containers-0.5.9
Instance details Defined in Data.Sequence.Internal Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Seq a) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Seq a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Seq a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Seq a] Source #
Show1 Seq | Since: containers-0.5.9
Instance details Defined in Data.Sequence.Internal Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Seq a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Seq a] -> ShowS Source #
Zip Seq |
Instance details Defined in Data.ChunkedZip Methods zipWith :: (a -> b -> c) -> Seq a -> Seq b -> Seq c Source # zip :: Seq a -> Seq b -> Seq (a, b) Source # zap :: Seq (a -> b) -> Seq a -> Seq b Source # unzip :: Seq (a, b) -> (Seq a, Seq b) Source #
Zip3 Seq |
Instance details Defined in Data.ChunkedZip Methods zipWith3 :: (a -> b -> c -> d) -> Seq a -> Seq b -> Seq c -> Seq d Source # zip3 :: Seq a -> Seq b -> Seq c -> Seq (a, b, c) Source # zap3 :: Seq (a -> b -> c) -> Seq a -> Seq b -> Seq c Source # unzip3 :: Seq (a, b, c) -> (Seq a, Seq b, Seq c) Source #
Zip4 Seq |
Instance details Defined in Data.ChunkedZip Methods zipWith4 :: (a -> b -> c -> d -> e) -> Seq a -> Seq b -> Seq c -> Seq d -> Seq e Source # zip4 :: Seq a -> Seq b -> Seq c -> Seq d -> Seq (a, b, c, d) Source # zap4 :: Seq (a -> b -> c -> d) -> Seq a -> Seq b -> Seq c -> Seq d Source # unzip4 :: Seq (a, b, c, d) -> (Seq a, Seq b, Seq c, Seq d) Source #
UnzipWith Seq |
Instance details Defined in Data.Sequence.Internal Methods unzipWith' :: (x -> (a, b)) -> Seq x -> (Seq a, Seq b)
Alternative Seq | Since: containers-0.5.4
Instance details Defined in Data.Sequence.Internal Methods empty :: Seq a Source # (<|>) :: Seq a -> Seq a -> Seq a Source # some :: Seq a -> Seq [a] Source # many :: Seq a -> Seq [a] Source #
Applicative Seq | Since: containers-0.5.4
Instance details Defined in Data.Sequence.Internal Methods pure :: a -> Seq a Source # (<*>) :: Seq (a -> b) -> Seq a -> Seq b Source # liftA2 :: (a -> b -> c) -> Seq a -> Seq b -> Seq c Source # (*>) :: Seq a -> Seq b -> Seq b Source # (<*) :: Seq a -> Seq b -> Seq a Source #
Functor Seq |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Seq a -> Seq b Source # (<$) :: a -> Seq b -> Seq a Source #
Monad Seq |
Instance details Defined in Data.Sequence.Internal Methods (>>=) :: Seq a -> (a -> Seq b) -> Seq b Source # (>>) :: Seq a -> Seq b -> Seq b Source # return :: a -> Seq a Source #
MonadPlus Seq |
Instance details Defined in Data.Sequence.Internal Methods mzero :: Seq a Source # mplus :: Seq a -> Seq a -> Seq a Source #
MonadFix Seq | Since: containers-0.5.11
Instance details Defined in Data.Sequence.Internal Methods mfix :: (a -> Seq a) -> Seq a Source #
Foldable Seq |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Seq m -> m Source #

foldMap :: Monoid m => (a -> m) -> Seq a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Seq a -> m Source #

foldr :: (a -> b -> b) -> b -> Seq a -> b Source #

foldr' :: (a -> b -> b) -> b -> Seq a -> b Source #

foldl :: (b -> a -> b) -> b -> Seq a -> b Source #

foldl' :: (b -> a -> b) -> b -> Seq a -> b Source #

foldr1 :: (a -> a -> a) -> Seq a -> a Source #

foldl1 :: (a -> a -> a) -> Seq a -> a Source #

toList :: Seq a -> [a] Source #

null :: Seq a -> Bool Source #

length :: Seq a -> Int Source #

elem :: Eq a => a -> Seq a -> Bool Source #

maximum :: Ord a => Seq a -> a Source #

minimum :: Ord a => Seq a -> a Source #

sum :: Num a => Seq a -> a Source #

product :: Num a => Seq a -> a Source #

Traversable Seq |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Seq a -> f (Seq b) Source # sequenceA :: Applicative f => Seq (f a) -> f (Seq a) Source # mapM :: Monad m => (a -> m b) -> Seq a -> m (Seq b) Source # sequence :: Monad m => Seq (m a) -> m (Seq a) Source #
Hashable1 Seq | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> Seq a -> Int Source #
Adjustable Seq |
Instance details Defined in Data.Key Methods adjust :: (a -> a) -> Key Seq -> Seq a -> Seq a replace :: Key Seq -> a -> Seq a -> Seq a
FoldableWithKey Seq |
Instance details Defined in Data.Key Methods toKeyedList :: Seq a -> [(Key Seq, a)] foldMapWithKey :: Monoid m => (Key Seq -> a -> m) -> Seq a -> m foldrWithKey :: (Key Seq -> a -> b -> b) -> b -> Seq a -> b foldlWithKey :: (b -> Key Seq -> a -> b) -> b -> Seq a -> b
Indexable Seq |
Instance details Defined in Data.Key Methods index :: Seq a -> Key Seq -> a
Keyed Seq |
Instance details Defined in Data.Key Methods mapWithKey :: (Key Seq -> a -> b) -> Seq a -> Seq b
Lookup Seq |
Instance details Defined in Data.Key Methods lookup :: Key Seq -> Seq a -> Maybe a
TraversableWithKey Seq |
Instance details Defined in Data.Key Methods traverseWithKey :: Applicative f => (Key Seq -> a -> f b) -> Seq a -> f (Seq b) mapWithKeyM :: Monad m => (Key Seq -> a -> m b) -> Seq a -> m (Seq b)
Zip Seq |
Instance details Defined in Data.Key Methods zipWith :: (a -> b -> c) -> Seq a -> Seq b -> Seq c zip :: Seq a -> Seq b -> Seq (a, b) zap :: Seq (a -> b) -> Seq a -> Seq b
ZipWithKey Seq |
Instance details Defined in Data.Key Methods zipWithKey :: (Key Seq -> a -> b -> c) -> Seq a -> Seq b -> Seq c zapWithKey :: Seq (Key Seq -> a -> b) -> Seq a -> Seq b
Lift a => Lift (Seq a :: Type) | Since: containers-0.6.6
Instance details Defined in Data.Sequence.Internal Methods lift :: Quote m => Seq a -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => Seq a -> Code m (Seq a) Source #
NFData a => NFData (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods rnf :: Seq a -> () Source #
Monoid (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods mempty :: Seq a Source # mappend :: Seq a -> Seq a -> Seq a Source # mconcat :: [Seq a] -> Seq a Source #
Semigroup (Seq a) | Since: containers-0.5.7
Instance details Defined in Data.Sequence.Internal Methods (<>) :: Seq a -> Seq a -> Seq a Source # sconcat :: NonEmpty (Seq a) -> Seq a Source # stimes :: Integral b => b -> Seq a -> Seq a Source #
Data a => Data (Seq a) |

Instance details

Defined in Data.Sequence.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Seq a -> c (Seq a) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Seq a) Source #

toConstr :: Seq a -> Constr Source #

dataTypeOf :: Seq a -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Seq a)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Seq a)) Source #

gmapT :: (forall b. Data b => b -> b) -> Seq a -> Seq a Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Seq a -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Seq a -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Seq a -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Seq a -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Seq a -> m (Seq a) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Seq a -> m (Seq a) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Seq a -> m (Seq a) Source #

a ~ Char => IsString (Seq a) | Since: containers-0.5.7
Instance details Defined in Data.Sequence.Internal Methods fromString :: String -> Seq a Source #
IsList (Seq a) |

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Item (Seq a) |
Instance details Defined in Data.Sequence.Internal type Item (Seq a) = a

Methods

fromList :: [Item (Seq a)] -> Seq a Source #

fromListN :: Int -> [Item (Seq a)] -> Seq a Source #

toList :: Seq a -> [Item (Seq a)] Source #

Read a => Read (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods readsPrec :: Int -> ReadS (Seq a) Source # readList :: ReadS [Seq a] Source # readPrec :: ReadPrec (Seq a) Source # readListPrec :: ReadPrec [Seq a] Source #
Show a => Show (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods showsPrec :: Int -> Seq a -> ShowS Source # show :: Seq a -> String Source # showList :: [Seq a] -> ShowS Source #
Eq a => Eq (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods (==) :: Seq a -> Seq a -> Bool Source # (/=) :: Seq a -> Seq a -> Bool Source #
Ord a => Ord (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods compare :: Seq a -> Seq a -> Ordering Source # (<) :: Seq a -> Seq a -> Bool Source # (<=) :: Seq a -> Seq a -> Bool Source # (>) :: Seq a -> Seq a -> Bool Source # (>=) :: Seq a -> Seq a -> Bool Source # max :: Seq a -> Seq a -> Seq a Source # min :: Seq a -> Seq a -> Seq a Source #
Hashable v => Hashable (Seq v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Seq v -> Int Source # hash :: Seq v -> Int Source #
GrowingAppend (Seq a) |
Instance details Defined in Data.MonoTraversable
MonoFoldable (Seq a) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (Seq a) -> m) -> Seq a -> m Source #

ofoldr :: (Element (Seq a) -> b -> b) -> b -> Seq a -> b Source #

ofoldl' :: (a0 -> Element (Seq a) -> a0) -> a0 -> Seq a -> a0 Source #

otoList :: Seq a -> [Element (Seq a)] Source #

oall :: (Element (Seq a) -> Bool) -> Seq a -> Bool Source #

oany :: (Element (Seq a) -> Bool) -> Seq a -> Bool Source #

onull :: Seq a -> Bool Source #

olength :: Seq a -> Int Source #

olength64 :: Seq a -> Int64 Source #

ocompareLength :: Integral i => Seq a -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (Seq a) -> f b) -> Seq a -> f () Source #

ofor_ :: Applicative f => Seq a -> (Element (Seq a) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (Seq a) -> m ()) -> Seq a -> m () Source #

oforM_ :: Applicative m => Seq a -> (Element (Seq a) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a0 -> Element (Seq a) -> m a0) -> a0 -> Seq a -> m a0 Source #

ofoldMap1Ex :: Semigroup m => (Element (Seq a) -> m) -> Seq a -> m Source #

ofoldr1Ex :: (Element (Seq a) -> Element (Seq a) -> Element (Seq a)) -> Seq a -> Element (Seq a) Source #

ofoldl1Ex' :: (Element (Seq a) -> Element (Seq a) -> Element (Seq a)) -> Seq a -> Element (Seq a) Source #

headEx :: Seq a -> Element (Seq a) Source #

lastEx :: Seq a -> Element (Seq a) Source #

unsafeHead :: Seq a -> Element (Seq a) Source #

unsafeLast :: Seq a -> Element (Seq a) Source #

maximumByEx :: (Element (Seq a) -> Element (Seq a) -> Ordering) -> Seq a -> Element (Seq a) Source #

minimumByEx :: (Element (Seq a) -> Element (Seq a) -> Ordering) -> Seq a -> Element (Seq a) Source #

oelem :: Element (Seq a) -> Seq a -> Bool Source #

onotElem :: Element (Seq a) -> Seq a -> Bool Source #

MonoFunctor (Seq a) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (Seq a) -> Element (Seq a)) -> Seq a -> Seq a Source #
MonoPointed (Seq a) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (Seq a) -> Seq a Source #
MonoTraversable (Seq a) |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element (Seq a) -> f (Element (Seq a))) -> Seq a -> f (Seq a) Source # omapM :: Applicative m => (Element (Seq a) -> m (Element (Seq a))) -> Seq a -> m (Seq a) Source #
IsSequence (Seq a) |

Instance details

Defined in Data.Sequences

Methods

fromList :: [Element (Seq a)] -> Seq a Source #

lengthIndex :: Seq a -> Index (Seq a) Source #

break :: (Element (Seq a) -> Bool) -> Seq a -> (Seq a, Seq a) Source #

span :: (Element (Seq a) -> Bool) -> Seq a -> (Seq a, Seq a) Source #

dropWhile :: (Element (Seq a) -> Bool) -> Seq a -> Seq a Source #

takeWhile :: (Element (Seq a) -> Bool) -> Seq a -> Seq a Source #

splitAt :: Index (Seq a) -> Seq a -> (Seq a, Seq a) Source #

unsafeSplitAt :: Index (Seq a) -> Seq a -> (Seq a, Seq a) Source #

take :: Index (Seq a) -> Seq a -> Seq a Source #

unsafeTake :: Index (Seq a) -> Seq a -> Seq a Source #

drop :: Index (Seq a) -> Seq a -> Seq a Source #

unsafeDrop :: Index (Seq a) -> Seq a -> Seq a Source #

dropEnd :: Index (Seq a) -> Seq a -> Seq a Source #

partition :: (Element (Seq a) -> Bool) -> Seq a -> (Seq a, Seq a) Source #

uncons :: Seq a -> Maybe (Element (Seq a), Seq a) Source #

unsnoc :: Seq a -> Maybe (Seq a, Element (Seq a)) Source #

filter :: (Element (Seq a) -> Bool) -> Seq a -> Seq a Source #

filterM :: Monad m => (Element (Seq a) -> m Bool) -> Seq a -> m (Seq a) Source #

replicate :: Index (Seq a) -> Element (Seq a) -> Seq a Source #

replicateM :: Monad m => Index (Seq a) -> m (Element (Seq a)) -> m (Seq a) Source #

groupBy :: (Element (Seq a) -> Element (Seq a) -> Bool) -> Seq a -> [Seq a] Source #

groupAllOn :: Eq b => (Element (Seq a) -> b) -> Seq a -> [Seq a] Source #

subsequences :: Seq a -> [Seq a] Source #

permutations :: Seq a -> [Seq a] Source #

tailEx :: Seq a -> Seq a Source #

tailMay :: Seq a -> Maybe (Seq a) Source #

initEx :: Seq a -> Seq a Source #

initMay :: Seq a -> Maybe (Seq a) Source #

unsafeTail :: Seq a -> Seq a Source #

unsafeInit :: Seq a -> Seq a Source #

index :: Seq a -> Index (Seq a) -> Maybe (Element (Seq a)) Source #

indexEx :: Seq a -> Index (Seq a) -> Element (Seq a) Source #

unsafeIndex :: Seq a -> Index (Seq a) -> Element (Seq a) Source #

splitWhen :: (Element (Seq a) -> Bool) -> Seq a -> [Seq a] Source #

tails :: Seq a -> [Seq a] Source #

inits :: Seq a -> [Seq a] Source #

initTails :: Seq a -> [(Seq a, Seq a)] Source #

SemiSequence (Seq a) |

Instance details

Defined in Data.Sequences

Associated Types

type Index (Seq a) |
Instance details Defined in Data.Sequences type Index (Seq a) = Int

Methods

intersperse :: Element (Seq a) -> Seq a -> Seq a Source #

reverse :: Seq a -> Seq a Source #

find :: (Element (Seq a) -> Bool) -> Seq a -> Maybe (Element (Seq a)) Source #

sortBy :: (Element (Seq a) -> Element (Seq a) -> Ordering) -> Seq a -> Seq a Source #

cons :: Element (Seq a) -> Seq a -> Seq a Source #

snoc :: Seq a -> Element (Seq a) -> Seq a Source #

type Key Seq |
Instance details Defined in Data.Key type Key Seq = Int
type Item (Seq a) |
Instance details Defined in Data.Sequence.Internal type Item (Seq a) = a
type Element (Seq a) |
Instance details Defined in Data.MonoTraversable type Element (Seq a) = a
type Index (Seq a) |
Instance details Defined in Data.Sequences type Index (Seq a) = Int

data Map k a Source #

A Map from keys `k` to values `a`.

The `Semigroup` operation for `Map` is `union`, which prefers values from the left operand. If `m1` maps a key `k` to a value `a1`, and `m2` maps the same key to a different value `a2`, then their union `m1 <> m2` maps `k` to `a1`.

#### Instances

Instances details

Bifoldable Map | Since: containers-0.6.3.1
Instance details Defined in Data.Map.Internal Methods bifold :: Monoid m => Map m m -> m Source # bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> Map a b -> m Source # bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> Map a b -> c Source # bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> Map a b -> c Source #
Eq2 Map | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> Map a c -> Map b d -> Bool Source #
Ord2 Map | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> Map a c -> Map b d -> Ordering Source #
Show2 Map | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> Map a b -> ShowS Source # liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [Map a b] -> ShowS Source #
Hashable2 Map | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt2 :: (Int -> a -> Int) -> (Int -> b -> Int) -> Int -> Map a b -> Int Source #
BiPolyMap Map |

Instance details

Defined in Data.Containers

Associated Types

type BPMKeyConstraint Map key |
Instance details Defined in Data.Containers type BPMKeyConstraint Map key = Ord key

Methods

mapKeysWith :: (BPMKeyConstraint Map k1, BPMKeyConstraint Map k2) => (v -> v -> v) -> (k1 -> k2) -> Map k1 v -> Map k2 v Source #

(Lift k, Lift a) => Lift (Map k a :: Type) | Since: containers-0.6.6
Instance details Defined in Data.Map.Internal Methods lift :: Quote m => Map k a -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => Map k a -> Code m (Map k a) Source #
Eq k => Eq1 (Map k) | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods liftEq :: (a -> b -> Bool) -> Map k a -> Map k b -> Bool Source #
Ord k => Ord1 (Map k) | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods liftCompare :: (a -> b -> Ordering) -> Map k a -> Map k b -> Ordering Source #
(Ord k, Read k) => Read1 (Map k) | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Map k a) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Map k a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Map k a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Map k a] Source #
Show k => Show1 (Map k) | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Map k a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Map k a] -> ShowS Source #
Functor (Map k) |
Instance details Defined in Data.Map.Internal Methods fmap :: (a -> b) -> Map k a -> Map k b Source # (<$) :: a -> Map k b -> Map k a Source #
Foldable (Map k) | Folds in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

fold :: Monoid m => Map k m -> m Source #

foldMap :: Monoid m => (a -> m) -> Map k a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Map k a -> m Source #

foldr :: (a -> b -> b) -> b -> Map k a -> b Source #

foldr' :: (a -> b -> b) -> b -> Map k a -> b Source #

foldl :: (b -> a -> b) -> b -> Map k a -> b Source #

foldl' :: (b -> a -> b) -> b -> Map k a -> b Source #

foldr1 :: (a -> a -> a) -> Map k a -> a Source #

foldl1 :: (a -> a -> a) -> Map k a -> a Source #

toList :: Map k a -> [a] Source #

null :: Map k a -> Bool Source #

length :: Map k a -> Int Source #

elem :: Eq a => a -> Map k a -> Bool Source #

maximum :: Ord a => Map k a -> a Source #

minimum :: Ord a => Map k a -> a Source #

sum :: Num a => Map k a -> a Source #

product :: Num a => Map k a -> a Source #

Traversable (Map k) | Traverses in order of increasing key.
Instance details Defined in Data.Map.Internal Methods traverse :: Applicative f => (a -> f b) -> Map k a -> f (Map k b) Source # sequenceA :: Applicative f => Map k (f a) -> f (Map k a) Source # mapM :: Monad m => (a -> m b) -> Map k a -> m (Map k b) Source # sequence :: Monad m => Map k (m a) -> m (Map k a) Source #
Hashable k => Hashable1 (Map k) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> Map k a -> Int Source #
Ord k => Adjustable (Map k) |
Instance details Defined in Data.Key Methods adjust :: (a -> a) -> Key (Map k) -> Map k a -> Map k a replace :: Key (Map k) -> a -> Map k a -> Map k a
FoldableWithKey (Map k) |
Instance details Defined in Data.Key Methods toKeyedList :: Map k a -> [(Key (Map k), a)] foldMapWithKey :: Monoid m => (Key (Map k) -> a -> m) -> Map k a -> m foldrWithKey :: (Key (Map k) -> a -> b -> b) -> b -> Map k a -> b foldlWithKey :: (b -> Key (Map k) -> a -> b) -> b -> Map k a -> b
Ord k => Indexable (Map k) |
Instance details Defined in Data.Key Methods index :: Map k a -> Key (Map k) -> a
Keyed (Map k) |
Instance details Defined in Data.Key Methods mapWithKey :: (Key (Map k) -> a -> b) -> Map k a -> Map k b
Ord k => Lookup (Map k) |
Instance details Defined in Data.Key Methods lookup :: Key (Map k) -> Map k a -> Maybe a
TraversableWithKey (Map k) |
Instance details Defined in Data.Key Methods traverseWithKey :: Applicative f => (Key (Map k) -> a -> f b) -> Map k a -> f (Map k b) mapWithKeyM :: Monad m => (Key (Map k) -> a -> m b) -> Map k a -> m (Map k b)
Ord k => Zip (Map k) |
Instance details Defined in Data.Key Methods zipWith :: (a -> b -> c) -> Map k a -> Map k b -> Map k c zip :: Map k a -> Map k b -> Map k (a, b) zap :: Map k (a -> b) -> Map k a -> Map k b
Ord k => ZipWithKey (Map k) |
Instance details Defined in Data.Key Methods zipWithKey :: (Key (Map k) -> a -> b -> c) -> Map k a -> Map k b -> Map k c zapWithKey :: Map k (Key (Map k) -> a -> b) -> Map k a -> Map k b
Ord key => PolyMap (Map key) | This instance uses the functions from Data.Map.Strict.
Instance details Defined in Data.Containers Methods differenceMap :: Map key value1 -> Map key value2 -> Map key value1 Source # intersectionMap :: Map key value1 -> Map key value2 -> Map key value1 Source # intersectionWithMap :: (value1 -> value2 -> value3) -> Map key value1 -> Map key value2 -> Map key value3 Source #
(NFData k, NFData a) => NFData (Map k a) |
Instance details Defined in Data.Map.Internal Methods rnf :: Map k a -> () Source #
Ord k => Monoid (Map k v) |
Instance details Defined in Data.Map.Internal Methods mempty :: Map k v Source # mappend :: Map k v -> Map k v -> Map k v Source # mconcat :: [Map k v] -> Map k v Source #
Ord k => Semigroup (Map k v) |
Instance details Defined in Data.Map.Internal Methods (<>) :: Map k v -> Map k v -> Map k v Source # sconcat :: NonEmpty (Map k v) -> Map k v Source # stimes :: Integral b => b -> Map k v -> Map k v Source #
(Data k, Data a, Ord k) => Data (Map k a) |

Instance details

Defined in Data.Map.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Map k a -> c (Map k a) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Map k a) Source #

toConstr :: Map k a -> Constr Source #

dataTypeOf :: Map k a -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Map k a)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Map k a)) Source #

gmapT :: (forall b. Data b => b -> b) -> Map k a -> Map k a Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Map k a -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Map k a -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Map k a -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Map k a -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Map k a -> m (Map k a) Source #

Ord k => IsList (Map k v) | Since: containers-0.5.6.2

Instance details

Defined in Data.Map.Internal

Associated Types

type Item (Map k v) |
Instance details Defined in Data.Map.Internal type Item (Map k v) = (k, v)

Methods

fromList :: [Item (Map k v)] -> Map k v Source #

fromListN :: Int -> [Item (Map k v)] -> Map k v Source #

toList :: Map k v -> [Item (Map k v)] Source #

(Ord k, Read k, Read e) => Read (Map k e) |
Instance details Defined in Data.Map.Internal Methods readsPrec :: Int -> ReadS (Map k e) Source # readList :: ReadS [Map k e] Source # readPrec :: ReadPrec (Map k e) Source # readListPrec :: ReadPrec [Map k e] Source #
(Show k, Show a) => Show (Map k a) |
Instance details Defined in Data.Map.Internal Methods showsPrec :: Int -> Map k a -> ShowS Source # show :: Map k a -> String Source # showList :: [Map k a] -> ShowS Source #
(Eq k, Eq a) => Eq (Map k a) |
Instance details Defined in Data.Map.Internal Methods (==) :: Map k a -> Map k a -> Bool Source # (/=) :: Map k a -> Map k a -> Bool Source #
(Ord k, Ord v) => Ord (Map k v) |
Instance details Defined in Data.Map.Internal Methods compare :: Map k v -> Map k v -> Ordering Source # (<) :: Map k v -> Map k v -> Bool Source # (<=) :: Map k v -> Map k v -> Bool Source # (>) :: Map k v -> Map k v -> Bool Source # (>=) :: Map k v -> Map k v -> Bool Source # max :: Map k v -> Map k v -> Map k v Source # min :: Map k v -> Map k v -> Map k v Source #
(Hashable k, Hashable v) => Hashable (Map k v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Map k v -> Int Source # hash :: Map k v -> Int Source #
Ord k => HasKeysSet (Map k v) |

Instance details

Defined in Data.Containers

Associated Types

type KeySet (Map k v) |
Instance details Defined in Data.Containers type KeySet (Map k v) = Set k

Methods

keysSet :: Map k v -> KeySet (Map k v) Source #

Ord key => IsMap (Map key value) | This instance uses the functions from Data.Map.Strict.

Instance details

Defined in Data.Containers

Associated Types

type MapValue (Map key value) |
Instance details Defined in Data.Containers type MapValue (Map key value) = value

Methods

lookup :: ContainerKey (Map key value) -> Map key value -> Maybe (MapValue (Map key value)) Source #

insertMap :: ContainerKey (Map key value) -> MapValue (Map key value) -> Map key value -> Map key value Source #

deleteMap :: ContainerKey (Map key value) -> Map key value -> Map key value Source #

singletonMap :: ContainerKey (Map key value) -> MapValue (Map key value) -> Map key value Source #

mapFromList :: [(ContainerKey (Map key value), MapValue (Map key value))] -> Map key value Source #

mapToList :: Map key value -> [(ContainerKey (Map key value), MapValue (Map key value))] Source #

findWithDefault :: MapValue (Map key value) -> ContainerKey (Map key value) -> Map key value -> MapValue (Map key value) Source #

insertWith :: (MapValue (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> ContainerKey (Map key value) -> MapValue (Map key value) -> Map key value -> Map key value Source #

insertWithKey :: (ContainerKey (Map key value) -> MapValue (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> ContainerKey (Map key value) -> MapValue (Map key value) -> Map key value -> Map key value Source #

insertLookupWithKey :: (ContainerKey (Map key value) -> MapValue (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> ContainerKey (Map key value) -> MapValue (Map key value) -> Map key value -> (Maybe (MapValue (Map key value)), Map key value) Source #

adjustMap :: (MapValue (Map key value) -> MapValue (Map key value)) -> ContainerKey (Map key value) -> Map key value -> Map key value Source #

adjustWithKey :: (ContainerKey (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> ContainerKey (Map key value) -> Map key value -> Map key value Source #

updateMap :: (MapValue (Map key value) -> Maybe (MapValue (Map key value))) -> ContainerKey (Map key value) -> Map key value -> Map key value Source #

updateWithKey :: (ContainerKey (Map key value) -> MapValue (Map key value) -> Maybe (MapValue (Map key value))) -> ContainerKey (Map key value) -> Map key value -> Map key value Source #

updateLookupWithKey :: (ContainerKey (Map key value) -> MapValue (Map key value) -> Maybe (MapValue (Map key value))) -> ContainerKey (Map key value) -> Map key value -> (Maybe (MapValue (Map key value)), Map key value) Source #

alterMap :: (Maybe (MapValue (Map key value)) -> Maybe (MapValue (Map key value))) -> ContainerKey (Map key value) -> Map key value -> Map key value Source #

unionWith :: (MapValue (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> Map key value -> Map key value -> Map key value Source #

unionWithKey :: (ContainerKey (Map key value) -> MapValue (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> Map key value -> Map key value -> Map key value Source #

unionsWith :: (MapValue (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> [Map key value] -> Map key value Source #

mapWithKey :: (ContainerKey (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> Map key value -> Map key value Source #

omapKeysWith :: (MapValue (Map key value) -> MapValue (Map key value) -> MapValue (Map key value)) -> (ContainerKey (Map key value) -> ContainerKey (Map key value)) -> Map key value -> Map key value Source #

filterMap :: (MapValue (Map key value) -> Bool) -> Map key value -> Map key value Source #

filterWithKey :: (ContainerKey (Map key value) -> MapValue (Map key value) -> Bool) -> Map key value -> Map key value Source #

Ord k => SetContainer (Map k v) | This instance uses the functions from Data.Map.Strict.

Instance details

Defined in Data.Containers

Associated Types

type ContainerKey (Map k v) |
Instance details Defined in Data.Containers type ContainerKey (Map k v) = k

Methods

member :: ContainerKey (Map k v) -> Map k v -> Bool Source #

notMember :: ContainerKey (Map k v) -> Map k v -> Bool Source #

union :: Map k v -> Map k v -> Map k v Source #

unions :: (MonoFoldable mono, Element mono ~ Map k v) => mono -> Map k v Source #

difference :: Map k v -> Map k v -> Map k v Source #

intersection :: Map k v -> Map k v -> Map k v Source #

keys :: Map k v -> [ContainerKey (Map k v)] Source #

Ord k => GrowingAppend (Map k v) |
Instance details Defined in Data.MonoTraversable
MonoFoldable (Map k v) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (Map k v) -> m) -> Map k v -> m Source #

ofoldr :: (Element (Map k v) -> b -> b) -> b -> Map k v -> b Source #

ofoldl' :: (a -> Element (Map k v) -> a) -> a -> Map k v -> a Source #

otoList :: Map k v -> [Element (Map k v)] Source #

oall :: (Element (Map k v) -> Bool) -> Map k v -> Bool Source #

oany :: (Element (Map k v) -> Bool) -> Map k v -> Bool Source #

onull :: Map k v -> Bool Source #

olength :: Map k v -> Int Source #

olength64 :: Map k v -> Int64 Source #

ocompareLength :: Integral i => Map k v -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (Map k v) -> f b) -> Map k v -> f () Source #

ofor_ :: Applicative f => Map k v -> (Element (Map k v) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (Map k v) -> m ()) -> Map k v -> m () Source #

oforM_ :: Applicative m => Map k v -> (Element (Map k v) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a -> Element (Map k v) -> m a) -> a -> Map k v -> m a Source #

ofoldMap1Ex :: Semigroup m => (Element (Map k v) -> m) -> Map k v -> m Source #

ofoldr1Ex :: (Element (Map k v) -> Element (Map k v) -> Element (Map k v)) -> Map k v -> Element (Map k v) Source #

ofoldl1Ex' :: (Element (Map k v) -> Element (Map k v) -> Element (Map k v)) -> Map k v -> Element (Map k v) Source #

headEx :: Map k v -> Element (Map k v) Source #

lastEx :: Map k v -> Element (Map k v) Source #

unsafeHead :: Map k v -> Element (Map k v) Source #

unsafeLast :: Map k v -> Element (Map k v) Source #

maximumByEx :: (Element (Map k v) -> Element (Map k v) -> Ordering) -> Map k v -> Element (Map k v) Source #

minimumByEx :: (Element (Map k v) -> Element (Map k v) -> Ordering) -> Map k v -> Element (Map k v) Source #

oelem :: Element (Map k v) -> Map k v -> Bool Source #

onotElem :: Element (Map k v) -> Map k v -> Bool Source #

MonoFunctor (Map k v) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (Map k v) -> Element (Map k v)) -> Map k v -> Map k v Source #
MonoTraversable (Map k v) |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element (Map k v) -> f (Element (Map k v))) -> Map k v -> f (Map k v) Source # omapM :: Applicative m => (Element (Map k v) -> m (Element (Map k v))) -> Map k v -> m (Map k v) Source #
type BPMKeyConstraint Map key |
Instance details Defined in Data.Containers type BPMKeyConstraint Map key = Ord key
type Key (Map k) |
Instance details Defined in Data.Key type Key (Map k) = k
type Item (Map k v) |
Instance details Defined in Data.Map.Internal type Item (Map k v) = (k, v)
type ContainerKey (Map k v) |
Instance details Defined in Data.Containers type ContainerKey (Map k v) = k
type KeySet (Map k v) |
Instance details Defined in Data.Containers type KeySet (Map k v) = Set k
type MapValue (Map key value) |
Instance details Defined in Data.Containers type MapValue (Map key value) = value
type Element (Map k v) |
Instance details Defined in Data.MonoTraversable type Element (Map k v) = v

data IntSet Source #

A set of integers.

#### Instances

Instances details

NFData IntSet |
Instance details Defined in Data.IntSet.Internal Methods rnf :: IntSet -> () Source #
Monoid IntSet |
Instance details Defined in Data.IntSet.Internal Methods mempty :: IntSet Source # mappend :: IntSet -> IntSet -> IntSet Source # mconcat :: [IntSet] -> IntSet Source #
Semigroup IntSet | Since: containers-0.5.7
Instance details Defined in Data.IntSet.Internal Methods (<>) :: IntSet -> IntSet -> IntSet Source # sconcat :: NonEmpty IntSet -> IntSet Source # stimes :: Integral b => b -> IntSet -> IntSet Source #
Data IntSet |

Instance details

Defined in Data.IntSet.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IntSet -> c IntSet Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c IntSet Source #

toConstr :: IntSet -> Constr Source #

dataTypeOf :: IntSet -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c IntSet) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c IntSet) Source #

gmapT :: (forall b. Data b => b -> b) -> IntSet -> IntSet Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IntSet -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IntSet -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> IntSet -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> IntSet -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> IntSet -> m IntSet Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IntSet -> m IntSet Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IntSet -> m IntSet Source #

IsList IntSet | Since: containers-0.5.6.2

Instance details

Defined in Data.IntSet.Internal

Associated Types

type Item IntSet |
Instance details Defined in Data.IntSet.Internal type Item IntSet = Key

Methods

fromList :: [Item IntSet] -> IntSet Source #

fromListN :: Int -> [Item IntSet] -> IntSet Source #

toList :: IntSet -> [Item IntSet] Source #

Read IntSet |
Instance details Defined in Data.IntSet.Internal Methods readsPrec :: Int -> ReadS IntSet Source # readList :: ReadS [IntSet] Source # readPrec :: ReadPrec IntSet Source # readListPrec :: ReadPrec [IntSet] Source #
Show IntSet |
Instance details Defined in Data.IntSet.Internal Methods showsPrec :: Int -> IntSet -> ShowS Source # show :: IntSet -> String Source # showList :: [IntSet] -> ShowS Source #
Eq IntSet |
Instance details Defined in Data.IntSet.Internal Methods (==) :: IntSet -> IntSet -> Bool Source # (/=) :: IntSet -> IntSet -> Bool Source #
Ord IntSet |
Instance details Defined in Data.IntSet.Internal Methods compare :: IntSet -> IntSet -> Ordering Source # (<) :: IntSet -> IntSet -> Bool Source # (<=) :: IntSet -> IntSet -> Bool Source # (>) :: IntSet -> IntSet -> Bool Source # (>=) :: IntSet -> IntSet -> Bool Source # max :: IntSet -> IntSet -> IntSet Source # min :: IntSet -> IntSet -> IntSet Source #
Hashable IntSet | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> IntSet -> Int Source # hash :: IntSet -> Int Source #
IsSet IntSet |
Instance details Defined in Data.Containers Methods insertSet :: Element IntSet -> IntSet -> IntSet Source # deleteSet :: Element IntSet -> IntSet -> IntSet Source # singletonSet :: Element IntSet -> IntSet Source # setFromList :: [Element IntSet] -> IntSet Source # setToList :: IntSet -> [Element IntSet] Source # filterSet :: (Element IntSet -> Bool) -> IntSet -> IntSet Source #
SetContainer IntSet |

Instance details

Defined in Data.Containers

Associated Types

type ContainerKey IntSet |
Instance details Defined in Data.Containers type ContainerKey IntSet = Int

Methods

member :: ContainerKey IntSet -> IntSet -> Bool Source #

notMember :: ContainerKey IntSet -> IntSet -> Bool Source #

union :: IntSet -> IntSet -> IntSet Source #

unions :: (MonoFoldable mono, Element mono ~ IntSet) => mono -> IntSet Source #

difference :: IntSet -> IntSet -> IntSet Source #

intersection :: IntSet -> IntSet -> IntSet Source #

keys :: IntSet -> [ContainerKey IntSet] Source #

GrowingAppend IntSet |
Instance details Defined in Data.MonoTraversable
MonoFoldable IntSet |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element IntSet -> m) -> IntSet -> m Source #

ofoldr :: (Element IntSet -> b -> b) -> b -> IntSet -> b Source #

ofoldl' :: (a -> Element IntSet -> a) -> a -> IntSet -> a Source #

otoList :: IntSet -> [Element IntSet] Source #

oall :: (Element IntSet -> Bool) -> IntSet -> Bool Source #

oany :: (Element IntSet -> Bool) -> IntSet -> Bool Source #

onull :: IntSet -> Bool Source #

olength :: IntSet -> Int Source #

olength64 :: IntSet -> Int64 Source #

ocompareLength :: Integral i => IntSet -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element IntSet -> f b) -> IntSet -> f () Source #

ofor_ :: Applicative f => IntSet -> (Element IntSet -> f b) -> f () Source #

omapM_ :: Applicative m => (Element IntSet -> m ()) -> IntSet -> m () Source #

oforM_ :: Applicative m => IntSet -> (Element IntSet -> m ()) -> m () Source #

ofoldlM :: Monad m => (a -> Element IntSet -> m a) -> a -> IntSet -> m a Source #

ofoldMap1Ex :: Semigroup m => (Element IntSet -> m) -> IntSet -> m Source #

ofoldr1Ex :: (Element IntSet -> Element IntSet -> Element IntSet) -> IntSet -> Element IntSet Source #

ofoldl1Ex' :: (Element IntSet -> Element IntSet -> Element IntSet) -> IntSet -> Element IntSet Source #

headEx :: IntSet -> Element IntSet Source #

lastEx :: IntSet -> Element IntSet Source #

unsafeHead :: IntSet -> Element IntSet Source #

unsafeLast :: IntSet -> Element IntSet Source #

maximumByEx :: (Element IntSet -> Element IntSet -> Ordering) -> IntSet -> Element IntSet Source #

minimumByEx :: (Element IntSet -> Element IntSet -> Ordering) -> IntSet -> Element IntSet Source #

oelem :: Element IntSet -> IntSet -> Bool Source #

onotElem :: Element IntSet -> IntSet -> Bool Source #

MonoPointed IntSet |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element IntSet -> IntSet Source #
Lift IntSet | Since: containers-0.6.6
Instance details Defined in Data.IntSet.Internal Methods lift :: Quote m => IntSet -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => IntSet -> Code m IntSet Source #
type Item IntSet |
Instance details Defined in Data.IntSet.Internal type Item IntSet = Key
type ContainerKey IntSet |
Instance details Defined in Data.Containers type ContainerKey IntSet = Int
type Element IntSet |
Instance details Defined in Data.MonoTraversable type Element IntSet = Int

data IntMap a Source #

A map of integers to values `a`.

#### Instances

Instances details

Eq1 IntMap | Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods liftEq :: (a -> b -> Bool) -> IntMap a -> IntMap b -> Bool Source #
Ord1 IntMap | Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods liftCompare :: (a -> b -> Ordering) -> IntMap a -> IntMap b -> Ordering Source #
Read1 IntMap | Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (IntMap a) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [IntMap a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (IntMap a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [IntMap a] Source #
Show1 IntMap | Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> IntMap a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [IntMap a] -> ShowS Source #
Zip IntMap |
Instance details Defined in Data.ChunkedZip Methods zipWith :: (a -> b -> c) -> IntMap a -> IntMap b -> IntMap c Source # zip :: IntMap a -> IntMap b -> IntMap (a, b) Source # zap :: IntMap (a -> b) -> IntMap a -> IntMap b Source # unzip :: IntMap (a, b) -> (IntMap a, IntMap b) Source #
Functor IntMap |
Instance details Defined in Data.IntMap.Internal Methods fmap :: (a -> b) -> IntMap a -> IntMap b Source # (<$) :: a -> IntMap b -> IntMap a Source #
Foldable IntMap | Folds in order of increasing key.

Instance details

Defined in Data.IntMap.Internal

Methods

fold :: Monoid m => IntMap m -> m Source #

foldMap :: Monoid m => (a -> m) -> IntMap a -> m Source #

foldMap' :: Monoid m => (a -> m) -> IntMap a -> m Source #

foldr :: (a -> b -> b) -> b -> IntMap a -> b Source #

foldr' :: (a -> b -> b) -> b -> IntMap a -> b Source #

foldl :: (b -> a -> b) -> b -> IntMap a -> b Source #

foldl' :: (b -> a -> b) -> b -> IntMap a -> b Source #

foldr1 :: (a -> a -> a) -> IntMap a -> a Source #

foldl1 :: (a -> a -> a) -> IntMap a -> a Source #

toList :: IntMap a -> [a] Source #

null :: IntMap a -> Bool Source #

length :: IntMap a -> Int Source #

elem :: Eq a => a -> IntMap a -> Bool Source #

maximum :: Ord a => IntMap a -> a Source #

minimum :: Ord a => IntMap a -> a Source #

sum :: Num a => IntMap a -> a Source #

product :: Num a => IntMap a -> a Source #

Traversable IntMap | Traverses in order of increasing key.
Instance details Defined in Data.IntMap.Internal Methods traverse :: Applicative f => (a -> f b) -> IntMap a -> f (IntMap b) Source # sequenceA :: Applicative f => IntMap (f a) -> f (IntMap a) Source # mapM :: Monad m => (a -> m b) -> IntMap a -> m (IntMap b) Source # sequence :: Monad m => IntMap (m a) -> m (IntMap a) Source #
Hashable1 IntMap | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> IntMap a -> Int Source #
Adjustable IntMap |
Instance details Defined in Data.Key Methods adjust :: (a -> a) -> Key IntMap -> IntMap a -> IntMap a replace :: Key IntMap -> a -> IntMap a -> IntMap a
FoldableWithKey IntMap |
Instance details Defined in Data.Key Methods toKeyedList :: IntMap a -> [(Key IntMap, a)] foldMapWithKey :: Monoid m => (Key IntMap -> a -> m) -> IntMap a -> m foldrWithKey :: (Key IntMap -> a -> b -> b) -> b -> IntMap a -> b foldlWithKey :: (b -> Key IntMap -> a -> b) -> b -> IntMap a -> b
Indexable IntMap |
Instance details Defined in Data.Key Methods index :: IntMap a -> Key IntMap -> a
Keyed IntMap |
Instance details Defined in Data.Key Methods mapWithKey :: (Key IntMap -> a -> b) -> IntMap a -> IntMap b
Lookup IntMap |
Instance details Defined in Data.Key Methods lookup :: Key IntMap -> IntMap a -> Maybe a
TraversableWithKey IntMap |
Instance details Defined in Data.Key Methods traverseWithKey :: Applicative f => (Key IntMap -> a -> f b) -> IntMap a -> f (IntMap b) mapWithKeyM :: Monad m => (Key IntMap -> a -> m b) -> IntMap a -> m (IntMap b)
Zip IntMap |
Instance details Defined in Data.Key Methods zipWith :: (a -> b -> c) -> IntMap a -> IntMap b -> IntMap c zip :: IntMap a -> IntMap b -> IntMap (a, b) zap :: IntMap (a -> b) -> IntMap a -> IntMap b
ZipWithKey IntMap |
Instance details Defined in Data.Key Methods zipWithKey :: (Key IntMap -> a -> b -> c) -> IntMap a -> IntMap b -> IntMap c zapWithKey :: IntMap (Key IntMap -> a -> b) -> IntMap a -> IntMap b
PolyMap IntMap | This instance uses the functions from Data.IntMap.Strict.
Instance details Defined in Data.Containers Methods differenceMap :: IntMap value1 -> IntMap value2 -> IntMap value1 Source # intersectionMap :: IntMap value1 -> IntMap value2 -> IntMap value1 Source # intersectionWithMap :: (value1 -> value2 -> value3) -> IntMap value1 -> IntMap value2 -> IntMap value3 Source #
Lift a => Lift (IntMap a :: Type) | Since: containers-0.6.6
Instance details Defined in Data.IntMap.Internal Methods lift :: Quote m => IntMap a -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => IntMap a -> Code m (IntMap a) Source #
NFData a => NFData (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods rnf :: IntMap a -> () Source #
Monoid (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods mempty :: IntMap a Source # mappend :: IntMap a -> IntMap a -> IntMap a Source # mconcat :: [IntMap a] -> IntMap a Source #
Semigroup (IntMap a) | Since: containers-0.5.7
Instance details Defined in Data.IntMap.Internal Methods (<>) :: IntMap a -> IntMap a -> IntMap a Source # sconcat :: NonEmpty (IntMap a) -> IntMap a Source # stimes :: Integral b => b -> IntMap a -> IntMap a Source #
Data a => Data (IntMap a) |

Instance details

Defined in Data.IntMap.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> IntMap a -> c (IntMap a) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (IntMap a) Source #

toConstr :: IntMap a -> Constr Source #

dataTypeOf :: IntMap a -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (IntMap a)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (IntMap a)) Source #

gmapT :: (forall b. Data b => b -> b) -> IntMap a -> IntMap a Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> IntMap a -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> IntMap a -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> IntMap a -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> IntMap a -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> IntMap a -> m (IntMap a) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> IntMap a -> m (IntMap a) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> IntMap a -> m (IntMap a) Source #

IsList (IntMap a) | Since: containers-0.5.6.2

Instance details

Defined in Data.IntMap.Internal

Associated Types

type Item (IntMap a) |
Instance details Defined in Data.IntMap.Internal type Item (IntMap a) = (Key, a)

Methods

fromList :: [Item (IntMap a)] -> IntMap a Source #

fromListN :: Int -> [Item (IntMap a)] -> IntMap a Source #

toList :: IntMap a -> [Item (IntMap a)] Source #

Read e => Read (IntMap e) |
Instance details Defined in Data.IntMap.Internal Methods readsPrec :: Int -> ReadS (IntMap e) Source # readList :: ReadS [IntMap e] Source # readPrec :: ReadPrec (IntMap e) Source # readListPrec :: ReadPrec [IntMap e] Source #
Show a => Show (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods showsPrec :: Int -> IntMap a -> ShowS Source # show :: IntMap a -> String Source # showList :: [IntMap a] -> ShowS Source #
Eq a => Eq (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods (==) :: IntMap a -> IntMap a -> Bool Source # (/=) :: IntMap a -> IntMap a -> Bool Source #
Ord a => Ord (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods compare :: IntMap a -> IntMap a -> Ordering Source # (<) :: IntMap a -> IntMap a -> Bool Source # (<=) :: IntMap a -> IntMap a -> Bool Source # (>) :: IntMap a -> IntMap a -> Bool Source # (>=) :: IntMap a -> IntMap a -> Bool Source # max :: IntMap a -> IntMap a -> IntMap a Source # min :: IntMap a -> IntMap a -> IntMap a Source #
Hashable v => Hashable (IntMap v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> IntMap v -> Int Source # hash :: IntMap v -> Int Source #
HasKeysSet (IntMap v) |

Instance details

Defined in Data.Containers

Associated Types

type KeySet (IntMap v) |
Instance details Defined in Data.Containers type KeySet (IntMap v) = IntSet

Methods

keysSet :: IntMap v -> KeySet (IntMap v) Source #

IsMap (IntMap value) | This instance uses the functions from Data.IntMap.Strict.

Instance details

Defined in Data.Containers

Associated Types

type MapValue (IntMap value) |
Instance details Defined in Data.Containers type MapValue (IntMap value) = value

Methods

lookup :: ContainerKey (IntMap value) -> IntMap value -> Maybe (MapValue (IntMap value)) Source #

insertMap :: ContainerKey (IntMap value) -> MapValue (IntMap value) -> IntMap value -> IntMap value Source #

deleteMap :: ContainerKey (IntMap value) -> IntMap value -> IntMap value Source #

singletonMap :: ContainerKey (IntMap value) -> MapValue (IntMap value) -> IntMap value Source #

mapFromList :: [(ContainerKey (IntMap value), MapValue (IntMap value))] -> IntMap value Source #

mapToList :: IntMap value -> [(ContainerKey (IntMap value), MapValue (IntMap value))] Source #

findWithDefault :: MapValue (IntMap value) -> ContainerKey (IntMap value) -> IntMap value -> MapValue (IntMap value) Source #

insertWith :: (MapValue (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> ContainerKey (IntMap value) -> MapValue (IntMap value) -> IntMap value -> IntMap value Source #

insertWithKey :: (ContainerKey (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> ContainerKey (IntMap value) -> MapValue (IntMap value) -> IntMap value -> IntMap value Source #

insertLookupWithKey :: (ContainerKey (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> ContainerKey (IntMap value) -> MapValue (IntMap value) -> IntMap value -> (Maybe (MapValue (IntMap value)), IntMap value) Source #

adjustMap :: (MapValue (IntMap value) -> MapValue (IntMap value)) -> ContainerKey (IntMap value) -> IntMap value -> IntMap value Source #

adjustWithKey :: (ContainerKey (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> ContainerKey (IntMap value) -> IntMap value -> IntMap value Source #

updateMap :: (MapValue (IntMap value) -> Maybe (MapValue (IntMap value))) -> ContainerKey (IntMap value) -> IntMap value -> IntMap value Source #

updateWithKey :: (ContainerKey (IntMap value) -> MapValue (IntMap value) -> Maybe (MapValue (IntMap value))) -> ContainerKey (IntMap value) -> IntMap value -> IntMap value Source #

updateLookupWithKey :: (ContainerKey (IntMap value) -> MapValue (IntMap value) -> Maybe (MapValue (IntMap value))) -> ContainerKey (IntMap value) -> IntMap value -> (Maybe (MapValue (IntMap value)), IntMap value) Source #

alterMap :: (Maybe (MapValue (IntMap value)) -> Maybe (MapValue (IntMap value))) -> ContainerKey (IntMap value) -> IntMap value -> IntMap value Source #

unionWith :: (MapValue (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> IntMap value -> IntMap value -> IntMap value Source #

unionWithKey :: (ContainerKey (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> IntMap value -> IntMap value -> IntMap value Source #

unionsWith :: (MapValue (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> [IntMap value] -> IntMap value Source #

mapWithKey :: (ContainerKey (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> IntMap value -> IntMap value Source #

omapKeysWith :: (MapValue (IntMap value) -> MapValue (IntMap value) -> MapValue (IntMap value)) -> (ContainerKey (IntMap value) -> ContainerKey (IntMap value)) -> IntMap value -> IntMap value Source #

filterMap :: (MapValue (IntMap value) -> Bool) -> IntMap value -> IntMap value Source #

filterWithKey :: (ContainerKey (IntMap value) -> MapValue (IntMap value) -> Bool) -> IntMap value -> IntMap value Source #

SetContainer (IntMap value) | This instance uses the functions from Data.IntMap.Strict.

Instance details

Defined in Data.Containers

Associated Types

type ContainerKey (IntMap value) |
Instance details Defined in Data.Containers type ContainerKey (IntMap value) = Int

Methods

member :: ContainerKey (IntMap value) -> IntMap value -> Bool Source #

notMember :: ContainerKey (IntMap value) -> IntMap value -> Bool Source #

union :: IntMap value -> IntMap value -> IntMap value Source #

unions :: (MonoFoldable mono, Element mono ~ IntMap value) => mono -> IntMap value Source #

difference :: IntMap value -> IntMap value -> IntMap value Source #

intersection :: IntMap value -> IntMap value -> IntMap value Source #

keys :: IntMap value -> [ContainerKey (IntMap value)] Source #

GrowingAppend (IntMap v) |
Instance details Defined in Data.MonoTraversable
MonoFoldable (IntMap a) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (IntMap a) -> m) -> IntMap a -> m Source #

ofoldr :: (Element (IntMap a) -> b -> b) -> b -> IntMap a -> b Source #

ofoldl' :: (a0 -> Element (IntMap a) -> a0) -> a0 -> IntMap a -> a0 Source #

otoList :: IntMap a -> [Element (IntMap a)] Source #

oall :: (Element (IntMap a) -> Bool) -> IntMap a -> Bool Source #

oany :: (Element (IntMap a) -> Bool) -> IntMap a -> Bool Source #

onull :: IntMap a -> Bool Source #

olength :: IntMap a -> Int Source #

olength64 :: IntMap a -> Int64 Source #

ocompareLength :: Integral i => IntMap a -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (IntMap a) -> f b) -> IntMap a -> f () Source #

ofor_ :: Applicative f => IntMap a -> (Element (IntMap a) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (IntMap a) -> m ()) -> IntMap a -> m () Source #

oforM_ :: Applicative m => IntMap a -> (Element (IntMap a) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a0 -> Element (IntMap a) -> m a0) -> a0 -> IntMap a -> m a0 Source #

ofoldMap1Ex :: Semigroup m => (Element (IntMap a) -> m) -> IntMap a -> m Source #

ofoldr1Ex :: (Element (IntMap a) -> Element (IntMap a) -> Element (IntMap a)) -> IntMap a -> Element (IntMap a) Source #

ofoldl1Ex' :: (Element (IntMap a) -> Element (IntMap a) -> Element (IntMap a)) -> IntMap a -> Element (IntMap a) Source #

headEx :: IntMap a -> Element (IntMap a) Source #

lastEx :: IntMap a -> Element (IntMap a) Source #

unsafeHead :: IntMap a -> Element (IntMap a) Source #

unsafeLast :: IntMap a -> Element (IntMap a) Source #

maximumByEx :: (Element (IntMap a) -> Element (IntMap a) -> Ordering) -> IntMap a -> Element (IntMap a) Source #

minimumByEx :: (Element (IntMap a) -> Element (IntMap a) -> Ordering) -> IntMap a -> Element (IntMap a) Source #

oelem :: Element (IntMap a) -> IntMap a -> Bool Source #

onotElem :: Element (IntMap a) -> IntMap a -> Bool Source #

MonoFunctor (IntMap a) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (IntMap a) -> Element (IntMap a)) -> IntMap a -> IntMap a Source #
MonoTraversable (IntMap a) |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element (IntMap a) -> f (Element (IntMap a))) -> IntMap a -> f (IntMap a) Source # omapM :: Applicative m => (Element (IntMap a) -> m (Element (IntMap a))) -> IntMap a -> m (IntMap a) Source #
type Key IntMap |
Instance details Defined in Data.Key type Key IntMap = Int
type Item (IntMap a) |
Instance details Defined in Data.IntMap.Internal type Item (IntMap a) = (Key, a)
type ContainerKey (IntMap value) |
Instance details Defined in Data.Containers type ContainerKey (IntMap value) = Int
type KeySet (IntMap v) |
Instance details Defined in Data.Containers type KeySet (IntMap v) = IntSet
type MapValue (IntMap value) |
Instance details Defined in Data.Containers type MapValue (IntMap value) = value
type Element (IntMap a) |
Instance details Defined in Data.MonoTraversable type Element (IntMap a) = a

(<.>) :: FilePath -> String -> FilePath infixr 7 Source #

Add an extension, even if there is already one there, equivalent to `addExtension`.

    "/directory/path" <.> "ext" == "/directory/path.ext"
    "/directory/path" <.> ".ext" == "/directory/path.ext"

(</>) :: FilePath -> FilePath -> FilePath infixr 5 Source #

Combine two paths with a path separator. If the second path starts with a path separator or a drive letter, then it returns the second. The intention is that `readFile (dir `</>` file)` will access the same file as `setCurrentDirectory dir; readFile file`.

    Posix:   "/directory" </> "file.ext" == "/directory/file.ext"
    Windows: "/directory" </> "file.ext" == "/directory\\file.ext"
             "directory" </> "/file.ext" == "/file.ext"
    Valid x => (takeDirectory x </> takeFileName x) `equalFilePath` x

Combined:

    Posix:   "/" </> "test" == "/test"
    Posix:   "home" </> "bob" == "home/bob"
    Posix:   "x:" </> "foo" == "x:/foo"
    Windows: "C:\\foo" </> "bar" == "C:\\foo\\bar"
    Windows: "home" </> "bob" == "home\\bob"

Not combined:

    Posix:   "home" </> "/bob" == "/bob"
    Windows: "home" </> "C:\\bob" == "C:\\bob"

Not combined (tricky):

On Windows, if a filepath starts with a single slash, it is relative to the root of the current drive. In [1], this is (confusingly) referred to as an absolute path. The current behavior of `</>` is to never combine these forms.

    Windows: "home" </> "/bob" == "/bob"
    Windows: "home" </> "\\bob" == "\\bob"
    Windows: "C:\\home" </> "\\bob" == "\\bob"

On Windows, from [1]: "If a file name begins with only a disk designator but not the backslash after the colon, it is interpreted as a relative path to the current directory on the drive with the specified letter." The current behavior of `</>` is to never combine these forms.

    Windows: "D:\\foo" </> "C:bar" == "C:bar"
    Windows: "C:\\foo" </> "C:bar" == "C:bar"

class Eq a => Hashable a where Source #

The class of types that can be converted to a hash value.

Minimal implementation: `hashWithSalt`.

`Hashable` is intended exclusively for use in in-memory data structures. . `Hashable` does not have a fixed standard. This allows it to improve over time. . Because it does not have a fixed standard, different computers or computers on different versions of the code will observe different hash values. As such, `Hashable` is not recommended for use other than in-memory datastructures. Specifically, `Hashable` is not intended for network use or in applications which persist hashed values. For stable hashing use named hashes: sha256, crc32, xxhash etc.

If you are looking for `Hashable` instance in `time` package, check time-compat

Minimal complete definition

Nothing

Methods

hashWithSalt :: Int -> a -> Int infixl 0 Source #

Return a hash value for the argument, using the given salt.

The general contract of `hashWithSalt` is:

- If two values are equal according to the `==` method, then applying the `hashWithSalt` method on each of the two values must produce the same integer result if the same salt is used in each case.
- It is not required that if two values are unequal according to the `==` method, then applying the `hashWithSalt` method on each of the two values must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal values may improve the performance of hashing-based data structures.
- This method can be used to compute different hash values for the same input by providing a different salt in each application of the method. This implies that any instance that defines `hashWithSalt` must make use of the salt in its implementation.
- `hashWithSalt` may return negative `Int` values.

default hashWithSalt :: (Generic a, GHashable Zero (Rep a)) => Int -> a -> Int Source #

hash :: a -> Int Source #

Like `hashWithSalt`, but no salt is used. The default implementation uses `hashWithSalt` with some default salt. Instances might want to implement this method to provide a more efficient implementation than the default implementation.

#### Instances

Instances details

Hashable ByteArray | This instance was available since 1.4.1.0 only for GHC-9.4+ Since: hashable-1.4.2.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> ByteArray -> Int Source # hash :: ByteArray -> Int Source #
Hashable ByteString |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> ByteString -> Int Source # hash :: ByteString -> Int Source #
Hashable ByteString |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> ByteString -> Int Source # hash :: ByteString -> Int Source #
Hashable ShortByteString |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> ShortByteString -> Int Source # hash :: ShortByteString -> Int Source #
Hashable IntSet | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> IntSet -> Int Source # hash :: IntSet -> Int Source #
Hashable BigNat |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> BigNat -> Int Source # hash :: BigNat -> Int Source #
Hashable Void |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Void -> Int Source # hash :: Void -> Int Source #
Hashable ThreadId |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> ThreadId -> Int Source # hash :: ThreadId -> Int Source #
Hashable SomeTypeRep |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> SomeTypeRep -> Int Source # hash :: SomeTypeRep -> Int Source #
Hashable Unique |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Unique -> Int Source # hash :: Unique -> Int Source #
Hashable Version |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Version -> Int Source # hash :: Version -> Int Source #
Hashable Fingerprint | Since: hashable-1.3.0.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Fingerprint -> Int Source # hash :: Fingerprint -> Int Source #
Hashable IntPtr |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> IntPtr -> Int Source # hash :: IntPtr -> Int Source #
Hashable WordPtr |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> WordPtr -> Int Source # hash :: WordPtr -> Int Source #
Hashable Int16 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Int16 -> Int Source # hash :: Int16 -> Int Source #
Hashable Int32 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Int32 -> Int Source # hash :: Int32 -> Int Source #
Hashable Int64 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Int64 -> Int Source # hash :: Int64 -> Int Source #
Hashable Int8 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Int8 -> Int Source # hash :: Int8 -> Int Source #
Hashable Word16 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word16 -> Int Source # hash :: Word16 -> Int Source #
Hashable Word32 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word32 -> Int Source # hash :: Word32 -> Int Source #
Hashable Word64 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word64 -> Int Source # hash :: Word64 -> Int Source #
Hashable Word8 |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word8 -> Int Source # hash :: Word8 -> Int Source #
Hashable Ordering |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Ordering -> Int Source # hash :: Ordering -> Int Source #
Hashable OsString | Since: hashable-1.4.2.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> OsString -> Int Source # hash :: OsString -> Int Source #
Hashable PosixString | Since: hashable-1.4.2.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> PosixString -> Int Source # hash :: PosixString -> Int Source #
Hashable WindowsString | Since: hashable-1.4.2.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> WindowsString -> Int Source # hash :: WindowsString -> Int Source #
Hashable Text |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Text -> Int Source # hash :: Text -> Int Source #
Hashable Text |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Text -> Int Source # hash :: Text -> Int Source #
Hashable Integer |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Integer -> Int Source # hash :: Integer -> Int Source #
Hashable Natural |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Natural -> Int Source # hash :: Natural -> Int Source #
Hashable () |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> () -> Int Source # hash :: () -> Int Source #
Hashable Bool |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Bool -> Int Source # hash :: Bool -> Int Source #
Hashable Char |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Char -> Int Source # hash :: Char -> Int Source #
Hashable Double | Note: prior to `hashable-1.3.0.0`, `hash 0.0 /= hash (-0.0)` The `hash` of NaN is not well defined. Since: hashable-1.3.0.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Double -> Int Source # hash :: Double -> Int Source #
Hashable Float | Note: prior to `hashable-1.3.0.0`, `hash 0.0 /= hash (-0.0)` The `hash` of NaN is not well defined. Since: hashable-1.3.0.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Float -> Int Source # hash :: Float -> Int Source #
Hashable Int |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Int -> Int Source # hash :: Int -> Int Source #
Hashable Word |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Word -> Int Source # hash :: Word -> Int Source #
Hashable (Async a) |
Instance details Defined in Control.Concurrent.Async.Internal Methods hashWithSalt :: Int -> Async a -> Int Source # hash :: Async a -> Int Source #
Hashable a => Hashable (Complex a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Complex a -> Int Source # hash :: Complex a -> Int Source #
Hashable a => Hashable (First a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> First a -> Int Source # hash :: First a -> Int Source #
Hashable a => Hashable (Last a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Last a -> Int Source # hash :: Last a -> Int Source #
Hashable a => Hashable (Max a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Max a -> Int Source # hash :: Max a -> Int Source #
Hashable a => Hashable (Min a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Min a -> Int Source # hash :: Min a -> Int Source #
Hashable a => Hashable (WrappedMonoid a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> WrappedMonoid a -> Int Source # hash :: WrappedMonoid a -> Int Source #
Hashable v => Hashable (IntMap v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> IntMap v -> Int Source # hash :: IntMap v -> Int Source #
Hashable v => Hashable (Seq v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Seq v -> Int Source # hash :: Seq v -> Int Source #
Hashable v => Hashable (Set v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Set v -> Int Source # hash :: Set v -> Int Source #
Hashable v => Hashable (Tree v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Tree v -> Int Source # hash :: Tree v -> Int Source #
Hashable a => Hashable (NonEmpty a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> NonEmpty a -> Int Source # hash :: NonEmpty a -> Int Source #
Hashable a => Hashable (Identity a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Identity a -> Int Source # hash :: Identity a -> Int Source #
Hashable (FunPtr a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> FunPtr a -> Int Source # hash :: FunPtr a -> Int Source #
Hashable (Ptr a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Ptr a -> Int Source # hash :: Ptr a -> Int Source #
Hashable a => Hashable (Ratio a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Ratio a -> Int Source # hash :: Ratio a -> Int Source #
Hashable (StableName a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> StableName a -> Int Source # hash :: StableName a -> Int Source #
Eq a => Hashable (Hashed a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Hashed a -> Int Source # hash :: Hashed a -> Int Source #
Hashable a => Hashable (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods hashWithSalt :: Int -> HashSet a -> Int Source # hash :: HashSet a -> Int Source #
Hashable a => Hashable (Vector a) |
Instance details Defined in Data.Vector.Instances Methods hashWithSalt :: Int -> Vector a -> Int Source # hash :: Vector a -> Int Source #
(Prim a, Hashable a) => Hashable (Vector a) |
Instance details Defined in Data.Vector.Instances Methods hashWithSalt :: Int -> Vector a -> Int Source # hash :: Vector a -> Int Source #
(Storable a, Hashable a) => Hashable (Vector a) |
Instance details Defined in Data.Vector.Instances Methods hashWithSalt :: Int -> Vector a -> Int Source # hash :: Vector a -> Int Source #
Hashable a => Hashable (Vector a) |
Instance details Defined in Data.Vector.Instances Methods hashWithSalt :: Int -> Vector a -> Int Source # hash :: Vector a -> Int Source #
(Unbox a, Hashable a) => Hashable (Vector a) |
Instance details Defined in Data.Vector.Instances Methods hashWithSalt :: Int -> Vector a -> Int Source # hash :: Vector a -> Int Source #
Hashable a => Hashable (Maybe a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Maybe a -> Int Source # hash :: Maybe a -> Int Source #
Hashable a => Hashable (Solo a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Solo a -> Int Source # hash :: Solo a -> Int Source #
Hashable a => Hashable [a] |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> [a] -> Int Source # hash :: [a] -> Int Source #
Hashable (Fixed a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Fixed a -> Int Source # hash :: Fixed a -> Int Source #
Hashable a => Hashable (Arg a b) | Note: Prior to `hashable-1.3.0.0` the hash computation included the second argument of `Arg` which wasn't consistent with its `Eq` instance. Since `hashable-1.5.0.0`, `hash (Semi.arg a _) = hash a` Since: hashable-1.3.0.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Arg a b -> Int Source # hash :: Arg a b -> Int Source #
(Hashable k, Hashable v) => Hashable (Map k v) | Since: hashable-1.3.4.0
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Map k v -> Int Source # hash :: Map k v -> Int Source #
(Hashable a, Hashable b) => Hashable (Either a b) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Either a b -> Int Source # hash :: Either a b -> Int Source #
Hashable (Proxy a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Proxy a -> Int Source # hash :: Proxy a -> Int Source #
Hashable (TypeRep a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> TypeRep a -> Int Source # hash :: TypeRep a -> Int Source #
(Hashable k, Hashable v) => Hashable (HashMap k v) |
Instance details Defined in Data.HashMap.Internal Methods hashWithSalt :: Int -> HashMap k v -> Int Source # hash :: HashMap k v -> Int Source #
(Hashable a1, Hashable a2) => Hashable (a1, a2) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> (a1, a2) -> Int Source # hash :: (a1, a2) -> Int Source #
Hashable a => Hashable (Const a b) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Const a b -> Int Source # hash :: Const a b -> Int Source #
(Hashable a1, Hashable a2, Hashable a3) => Hashable (a1, a2, a3) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> (a1, a2, a3) -> Int Source # hash :: (a1, a2, a3) -> Int Source #
(Hashable (f a), Hashable (g a)) => Hashable (Product f g a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Product f g a -> Int Source # hash :: Product f g a -> Int Source #
(Hashable (f a), Hashable (g a)) => Hashable (Sum f g a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Sum f g a -> Int Source # hash :: Sum f g a -> Int Source #
(Hashable a1, Hashable a2, Hashable a3, Hashable a4) => Hashable (a1, a2, a3, a4) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> (a1, a2, a3, a4) -> Int Source # hash :: (a1, a2, a3, a4) -> Int Source #
Hashable (f (g a)) => Hashable (Compose f g a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Compose f g a -> Int Source # hash :: Compose f g a -> Int Source #
(Hashable a1, Hashable a2, Hashable a3, Hashable a4, Hashable a5) => Hashable (a1, a2, a3, a4, a5) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> (a1, a2, a3, a4, a5) -> Int Source # hash :: (a1, a2, a3, a4, a5) -> Int Source #
(Hashable a1, Hashable a2, Hashable a3, Hashable a4, Hashable a5, Hashable a6) => Hashable (a1, a2, a3, a4, a5, a6) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> (a1, a2, a3, a4, a5, a6) -> Int Source # hash :: (a1, a2, a3, a4, a5, a6) -> Int Source #
(Hashable a1, Hashable a2, Hashable a3, Hashable a4, Hashable a5, Hashable a6, Hashable a7) => Hashable (a1, a2, a3, a4, a5, a6, a7) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> (a1, a2, a3, a4, a5, a6, a7) -> Int Source # hash :: (a1, a2, a3, a4, a5, a6, a7) -> Int Source #

data HashMap k v Source #

A map from keys to values. A map cannot contain duplicate keys; each key can map to at most one value.

#### Instances

Instances details

Bifoldable HashMap | Since: unordered-containers-0.2.11
Instance details Defined in Data.HashMap.Internal Methods bifold :: Monoid m => HashMap m m -> m Source # bifoldMap :: Monoid m => (a -> m) -> (b -> m) -> HashMap a b -> m Source # bifoldr :: (a -> c -> c) -> (b -> c -> c) -> c -> HashMap a b -> c Source # bifoldl :: (c -> a -> c) -> (c -> b -> c) -> c -> HashMap a b -> c Source #
Eq2 HashMap |
Instance details Defined in Data.HashMap.Internal Methods liftEq2 :: (a -> b -> Bool) -> (c -> d -> Bool) -> HashMap a c -> HashMap b d -> Bool Source #
Ord2 HashMap |
Instance details Defined in Data.HashMap.Internal Methods liftCompare2 :: (a -> b -> Ordering) -> (c -> d -> Ordering) -> HashMap a c -> HashMap b d -> Ordering Source #
Show2 HashMap |
Instance details Defined in Data.HashMap.Internal Methods liftShowsPrec2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> Int -> HashMap a b -> ShowS Source # liftShowList2 :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> (Int -> b -> ShowS) -> ([b] -> ShowS) -> [HashMap a b] -> ShowS Source #
NFData2 HashMap | Since: unordered-containers-0.2.14.0
Instance details Defined in Data.HashMap.Internal Methods liftRnf2 :: (a -> ()) -> (b -> ()) -> HashMap a b -> () Source #
Hashable2 HashMap |
Instance details Defined in Data.HashMap.Internal Methods liftHashWithSalt2 :: (Int -> a -> Int) -> (Int -> b -> Int) -> Int -> HashMap a b -> Int Source #
BiPolyMap HashMap |

Instance details

Defined in Data.Containers

Associated Types

type BPMKeyConstraint HashMap key |
Instance details Defined in Data.Containers type BPMKeyConstraint HashMap key = (Hashable key, Eq key)

Methods

mapKeysWith :: (BPMKeyConstraint HashMap k1, BPMKeyConstraint HashMap k2) => (v -> v -> v) -> (k1 -> k2) -> HashMap k1 v -> HashMap k2 v Source #

(Lift k, Lift v) => Lift (HashMap k v :: Type) | Since: unordered-containers-0.2.17.0
Instance details Defined in Data.HashMap.Internal Methods lift :: Quote m => HashMap k v -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => HashMap k v -> Code m (HashMap k v) Source #
Eq k => Eq1 (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods liftEq :: (a -> b -> Bool) -> HashMap k a -> HashMap k b -> Bool Source #
Ord k => Ord1 (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods liftCompare :: (a -> b -> Ordering) -> HashMap k a -> HashMap k b -> Ordering Source #
(Eq k, Hashable k, Read k) => Read1 (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (HashMap k a) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [HashMap k a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (HashMap k a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [HashMap k a] Source #
Show k => Show1 (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> HashMap k a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [HashMap k a] -> ShowS Source #
NFData k => NFData1 (HashMap k) | Since: unordered-containers-0.2.14.0
Instance details Defined in Data.HashMap.Internal Methods liftRnf :: (a -> ()) -> HashMap k a -> () Source #
Functor (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods fmap :: (a -> b) -> HashMap k a -> HashMap k b Source # (<$) :: a -> HashMap k b -> HashMap k a Source #
Foldable (HashMap k) |

Instance details

Defined in Data.HashMap.Internal

Methods

fold :: Monoid m => HashMap k m -> m Source #

foldMap :: Monoid m => (a -> m) -> HashMap k a -> m Source #

foldMap' :: Monoid m => (a -> m) -> HashMap k a -> m Source #

foldr :: (a -> b -> b) -> b -> HashMap k a -> b Source #

foldr' :: (a -> b -> b) -> b -> HashMap k a -> b Source #

foldl :: (b -> a -> b) -> b -> HashMap k a -> b Source #

foldl' :: (b -> a -> b) -> b -> HashMap k a -> b Source #

foldr1 :: (a -> a -> a) -> HashMap k a -> a Source #

foldl1 :: (a -> a -> a) -> HashMap k a -> a Source #

toList :: HashMap k a -> [a] Source #

null :: HashMap k a -> Bool Source #

length :: HashMap k a -> Int Source #

elem :: Eq a => a -> HashMap k a -> Bool Source #

maximum :: Ord a => HashMap k a -> a Source #

minimum :: Ord a => HashMap k a -> a Source #

sum :: Num a => HashMap k a -> a Source #

product :: Num a => HashMap k a -> a Source #

Traversable (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods traverse :: Applicative f => (a -> f b) -> HashMap k a -> f (HashMap k b) Source # sequenceA :: Applicative f => HashMap k (f a) -> f (HashMap k a) Source # mapM :: Monad m => (a -> m b) -> HashMap k a -> m (HashMap k b) Source # sequence :: Monad m => HashMap k (m a) -> m (HashMap k a) Source #
Hashable k => Hashable1 (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> HashMap k a -> Int Source #
FoldableWithKey (HashMap k) |
Instance details Defined in Data.Key Methods toKeyedList :: HashMap k a -> [(Key (HashMap k), a)] foldMapWithKey :: Monoid m => (Key (HashMap k) -> a -> m) -> HashMap k a -> m foldrWithKey :: (Key (HashMap k) -> a -> b -> b) -> b -> HashMap k a -> b foldlWithKey :: (b -> Key (HashMap k) -> a -> b) -> b -> HashMap k a -> b
(Eq k, Hashable k) => Indexable (HashMap k) |
Instance details Defined in Data.Key Methods index :: HashMap k a -> Key (HashMap k) -> a
Keyed (HashMap k) |
Instance details Defined in Data.Key Methods mapWithKey :: (Key (HashMap k) -> a -> b) -> HashMap k a -> HashMap k b
(Eq k, Hashable k) => Lookup (HashMap k) |
Instance details Defined in Data.Key Methods lookup :: Key (HashMap k) -> HashMap k a -> Maybe a
TraversableWithKey (HashMap k) |
Instance details Defined in Data.Key Methods traverseWithKey :: Applicative f => (Key (HashMap k) -> a -> f b) -> HashMap k a -> f (HashMap k b) mapWithKeyM :: Monad m => (Key (HashMap k) -> a -> m b) -> HashMap k a -> m (HashMap k b)
(Eq k, Hashable k) => Zip (HashMap k) |
Instance details Defined in Data.Key Methods zipWith :: (a -> b -> c) -> HashMap k a -> HashMap k b -> HashMap k c zip :: HashMap k a -> HashMap k b -> HashMap k (a, b) zap :: HashMap k (a -> b) -> HashMap k a -> HashMap k b
(Eq k, Hashable k) => ZipWithKey (HashMap k) |
Instance details Defined in Data.Key Methods zipWithKey :: (Key (HashMap k) -> a -> b -> c) -> HashMap k a -> HashMap k b -> HashMap k c zapWithKey :: HashMap k (Key (HashMap k) -> a -> b) -> HashMap k a -> HashMap k b
(Eq key, Hashable key) => PolyMap (HashMap key) | This instance uses the functions from Data.HashMap.Strict.
Instance details Defined in Data.Containers Methods differenceMap :: HashMap key value1 -> HashMap key value2 -> HashMap key value1 Source # intersectionMap :: HashMap key value1 -> HashMap key value2 -> HashMap key value1 Source # intersectionWithMap :: (value1 -> value2 -> value3) -> HashMap key value1 -> HashMap key value2 -> HashMap key value3 Source #
(NFData k, NFData v) => NFData (HashMap k v) |
Instance details Defined in Data.HashMap.Internal Methods rnf :: HashMap k v -> () Source #

(Eq k, Hashable k) => Monoid (HashMap k v)

`mempty` = `empty`

`mappend` = `union`

If a key occurs in both maps, the mapping from the first will be the mapping in the result.

#### Examples

Expand

    >>> mappend (fromList [(1,'a'),(2,'b')]) (fromList [(2,'c'),(3,'d')])
    fromList [(1,'a'),(2,'b'),(3,'d')]

Instance details Defined in Data.HashMap.Internal Methods mempty :: HashMap k v Source # mappend :: HashMap k v -> HashMap k v -> HashMap k v Source # mconcat :: [HashMap k v] -> HashMap k v Source #

(Eq k, Hashable k) => Semigroup (HashMap k v)

`<>` = `union`

If a key occurs in both maps, the mapping from the first will be the mapping in the result.

#### Examples

Expand

    >>> fromList [(1,'a'),(2,'b')] <> fromList [(2,'c'),(3,'d')]
    fromList [(1,'a'),(2,'b'),(3,'d')]

Instance details Defined in Data.HashMap.Internal Methods (<>) :: HashMap k v -> HashMap k v -> HashMap k v Source # sconcat :: NonEmpty (HashMap k v) -> HashMap k v Source # stimes :: Integral b => b -> HashMap k v -> HashMap k v Source #
(Data k, Data v, Eq k, Hashable k) => Data (HashMap k v) |

Instance details

Defined in Data.HashMap.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HashMap k v -> c (HashMap k v) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (HashMap k v) Source #

toConstr :: HashMap k v -> Constr Source #

dataTypeOf :: HashMap k v -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (HashMap k v)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (HashMap k v)) Source #

gmapT :: (forall b. Data b => b -> b) -> HashMap k v -> HashMap k v Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HashMap k v -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HashMap k v -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> HashMap k v -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> HashMap k v -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> HashMap k v -> m (HashMap k v) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HashMap k v -> m (HashMap k v) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HashMap k v -> m (HashMap k v) Source #

(Eq k, Hashable k) => IsList (HashMap k v) |

Instance details

Defined in Data.HashMap.Internal

Associated Types

type Item (HashMap k v) |
Instance details Defined in Data.HashMap.Internal type Item (HashMap k v) = (k, v)

Methods

fromList :: [Item (HashMap k v)] -> HashMap k v Source #

fromListN :: Int -> [Item (HashMap k v)] -> HashMap k v Source #

toList :: HashMap k v -> [Item (HashMap k v)] Source #

(Eq k, Hashable k, Read k, Read e) => Read (HashMap k e) |
Instance details Defined in Data.HashMap.Internal Methods readsPrec :: Int -> ReadS (HashMap k e) Source # readList :: ReadS [HashMap k e] Source # readPrec :: ReadPrec (HashMap k e) Source # readListPrec :: ReadPrec [HashMap k e] Source #
(Show k, Show v) => Show (HashMap k v) |
Instance details Defined in Data.HashMap.Internal Methods showsPrec :: Int -> HashMap k v -> ShowS Source # show :: HashMap k v -> String Source # showList :: [HashMap k v] -> ShowS Source #

(Eq k, Eq v) => Eq (HashMap k v)

Note that, in the presence of hash collisions, equal `HashMap`s may behave differently, i.e. extensionality may be violated:

    >>> data D = A | B deriving (Eq, Show)
    >>> instance Hashable D where hashWithSalt salt _d = salt

    >>> x = fromList [(A,1), (B,2)]
    >>> y = fromList [(B,2), (A,1)]

    >>> x == y
    True
    >>> toList x
    [(A,1),(B,2)]
    >>> toList y
    [(B,2),(A,1)]

In general, the lack of extensionality can be observed with any function that depends on the key ordering, such as folds and traversals.

Instance details Defined in Data.HashMap.Internal Methods (==) :: HashMap k v -> HashMap k v -> Bool Source # (/=) :: HashMap k v -> HashMap k v -> Bool Source #
(Ord k, Ord v) => Ord (HashMap k v) | The ordering is total and consistent with the `Eq` instance. However, nothing else about the ordering is specified, and it may change from version to version of either this package or of `hashable`.

Instance details

Defined in Data.HashMap.Internal

Methods

compare :: HashMap k v -> HashMap k v -> Ordering Source #

(<) :: HashMap k v -> HashMap k v -> Bool Source #

(<=) :: HashMap k v -> HashMap k v -> Bool Source #

(>) :: HashMap k v -> HashMap k v -> Bool Source #

(>=) :: HashMap k v -> HashMap k v -> Bool Source #

max :: HashMap k v -> HashMap k v -> HashMap k v Source #

min :: HashMap k v -> HashMap k v -> HashMap k v Source #

(Hashable k, Hashable v) => Hashable (HashMap k v) |
Instance details Defined in Data.HashMap.Internal Methods hashWithSalt :: Int -> HashMap k v -> Int Source # hash :: HashMap k v -> Int Source #
(Hashable k, Eq k) => HasKeysSet (HashMap k v) |

Instance details

Defined in Data.Containers

Associated Types

type KeySet (HashMap k v) |
Instance details Defined in Data.Containers type KeySet (HashMap k v) = HashSet k

Methods

keysSet :: HashMap k v -> KeySet (HashMap k v) Source #

(Eq key, Hashable key) => IsMap (HashMap key value) | This instance uses the functions from Data.HashMap.Strict.

Instance details

Defined in Data.Containers

Associated Types

type MapValue (HashMap key value) |
Instance details Defined in Data.Containers type MapValue (HashMap key value) = value

Methods

lookup :: ContainerKey (HashMap key value) -> HashMap key value -> Maybe (MapValue (HashMap key value)) Source #

insertMap :: ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> HashMap key value -> HashMap key value Source #

deleteMap :: ContainerKey (HashMap key value) -> HashMap key value -> HashMap key value Source #

singletonMap :: ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> HashMap key value Source #

mapFromList :: [(ContainerKey (HashMap key value), MapValue (HashMap key value))] -> HashMap key value Source #

mapToList :: HashMap key value -> [(ContainerKey (HashMap key value), MapValue (HashMap key value))] Source #

findWithDefault :: MapValue (HashMap key value) -> ContainerKey (HashMap key value) -> HashMap key value -> MapValue (HashMap key value) Source #

insertWith :: (MapValue (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> HashMap key value -> HashMap key value Source #

insertWithKey :: (ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> HashMap key value -> HashMap key value Source #

insertLookupWithKey :: (ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> HashMap key value -> (Maybe (MapValue (HashMap key value)), HashMap key value) Source #

adjustMap :: (MapValue (HashMap key value) -> MapValue (HashMap key value)) -> ContainerKey (HashMap key value) -> HashMap key value -> HashMap key value Source #

adjustWithKey :: (ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> ContainerKey (HashMap key value) -> HashMap key value -> HashMap key value Source #

updateMap :: (MapValue (HashMap key value) -> Maybe (MapValue (HashMap key value))) -> ContainerKey (HashMap key value) -> HashMap key value -> HashMap key value Source #

updateWithKey :: (ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> Maybe (MapValue (HashMap key value))) -> ContainerKey (HashMap key value) -> HashMap key value -> HashMap key value Source #

updateLookupWithKey :: (ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> Maybe (MapValue (HashMap key value))) -> ContainerKey (HashMap key value) -> HashMap key value -> (Maybe (MapValue (HashMap key value)), HashMap key value) Source #

alterMap :: (Maybe (MapValue (HashMap key value)) -> Maybe (MapValue (HashMap key value))) -> ContainerKey (HashMap key value) -> HashMap key value -> HashMap key value Source #

unionWith :: (MapValue (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> HashMap key value -> HashMap key value -> HashMap key value Source #

unionWithKey :: (ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> HashMap key value -> HashMap key value -> HashMap key value Source #

unionsWith :: (MapValue (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> [HashMap key value] -> HashMap key value Source #

mapWithKey :: (ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> HashMap key value -> HashMap key value Source #

omapKeysWith :: (MapValue (HashMap key value) -> MapValue (HashMap key value) -> MapValue (HashMap key value)) -> (ContainerKey (HashMap key value) -> ContainerKey (HashMap key value)) -> HashMap key value -> HashMap key value Source #

filterMap :: (MapValue (HashMap key value) -> Bool) -> HashMap key value -> HashMap key value Source #

filterWithKey :: (ContainerKey (HashMap key value) -> MapValue (HashMap key value) -> Bool) -> HashMap key value -> HashMap key value Source #

(Eq key, Hashable key) => SetContainer (HashMap key value) | This instance uses the functions from Data.HashMap.Strict.

Instance details

Defined in Data.Containers

Associated Types

type ContainerKey (HashMap key value) |
Instance details Defined in Data.Containers type ContainerKey (HashMap key value) = key

Methods

member :: ContainerKey (HashMap key value) -> HashMap key value -> Bool Source #

notMember :: ContainerKey (HashMap key value) -> HashMap key value -> Bool Source #

union :: HashMap key value -> HashMap key value -> HashMap key value Source #

unions :: (MonoFoldable mono, Element mono ~ HashMap key value) => mono -> HashMap key value Source #

difference :: HashMap key value -> HashMap key value -> HashMap key value Source #

intersection :: HashMap key value -> HashMap key value -> HashMap key value Source #

keys :: HashMap key value -> [ContainerKey (HashMap key value)] Source #

(Eq k, Hashable k) => GrowingAppend (HashMap k v) |
Instance details Defined in Data.MonoTraversable
MonoFoldable (HashMap k v) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (HashMap k v) -> m) -> HashMap k v -> m Source #

ofoldr :: (Element (HashMap k v) -> b -> b) -> b -> HashMap k v -> b Source #

ofoldl' :: (a -> Element (HashMap k v) -> a) -> a -> HashMap k v -> a Source #

otoList :: HashMap k v -> [Element (HashMap k v)] Source #

oall :: (Element (HashMap k v) -> Bool) -> HashMap k v -> Bool Source #

oany :: (Element (HashMap k v) -> Bool) -> HashMap k v -> Bool Source #

onull :: HashMap k v -> Bool Source #

olength :: HashMap k v -> Int Source #

olength64 :: HashMap k v -> Int64 Source #

ocompareLength :: Integral i => HashMap k v -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (HashMap k v) -> f b) -> HashMap k v -> f () Source #

ofor_ :: Applicative f => HashMap k v -> (Element (HashMap k v) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (HashMap k v) -> m ()) -> HashMap k v -> m () Source #

oforM_ :: Applicative m => HashMap k v -> (Element (HashMap k v) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a -> Element (HashMap k v) -> m a) -> a -> HashMap k v -> m a Source #

ofoldMap1Ex :: Semigroup m => (Element (HashMap k v) -> m) -> HashMap k v -> m Source #

ofoldr1Ex :: (Element (HashMap k v) -> Element (HashMap k v) -> Element (HashMap k v)) -> HashMap k v -> Element (HashMap k v) Source #

ofoldl1Ex' :: (Element (HashMap k v) -> Element (HashMap k v) -> Element (HashMap k v)) -> HashMap k v -> Element (HashMap k v) Source #

headEx :: HashMap k v -> Element (HashMap k v) Source #

lastEx :: HashMap k v -> Element (HashMap k v) Source #

unsafeHead :: HashMap k v -> Element (HashMap k v) Source #

unsafeLast :: HashMap k v -> Element (HashMap k v) Source #

maximumByEx :: (Element (HashMap k v) -> Element (HashMap k v) -> Ordering) -> HashMap k v -> Element (HashMap k v) Source #

minimumByEx :: (Element (HashMap k v) -> Element (HashMap k v) -> Ordering) -> HashMap k v -> Element (HashMap k v) Source #

oelem :: Element (HashMap k v) -> HashMap k v -> Bool Source #

onotElem :: Element (HashMap k v) -> HashMap k v -> Bool Source #

MonoFunctor (HashMap k v) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (HashMap k v) -> Element (HashMap k v)) -> HashMap k v -> HashMap k v Source #
MonoTraversable (HashMap k v) |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element (HashMap k v) -> f (Element (HashMap k v))) -> HashMap k v -> f (HashMap k v) Source # omapM :: Applicative m => (Element (HashMap k v) -> m (Element (HashMap k v))) -> HashMap k v -> m (HashMap k v) Source #
type BPMKeyConstraint HashMap key |
Instance details Defined in Data.Containers type BPMKeyConstraint HashMap key = (Hashable key, Eq key)
type Key (HashMap k) |
Instance details Defined in Data.Key type Key (HashMap k) = k
type Item (HashMap k v) |
Instance details Defined in Data.HashMap.Internal type Item (HashMap k v) = (k, v)
type ContainerKey (HashMap key value) |
Instance details Defined in Data.Containers type ContainerKey (HashMap key value) = key
type KeySet (HashMap k v) |
Instance details Defined in Data.Containers type KeySet (HashMap k v) = HashSet k
type MapValue (HashMap key value) |
Instance details Defined in Data.Containers type MapValue (HashMap key value) = value
type Element (HashMap k v) |
Instance details Defined in Data.MonoTraversable type Element (HashMap k v) = v

data HashSet a Source #

A set of values. A set cannot contain duplicate values.

#### Instances

Instances details

Eq1 HashSet |
Instance details Defined in Data.HashSet.Internal Methods liftEq :: (a -> b -> Bool) -> HashSet a -> HashSet b -> Bool Source #
Ord1 HashSet |
Instance details Defined in Data.HashSet.Internal Methods liftCompare :: (a -> b -> Ordering) -> HashSet a -> HashSet b -> Ordering Source #
Show1 HashSet |
Instance details Defined in Data.HashSet.Internal Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> HashSet a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [HashSet a] -> ShowS Source #
NFData1 HashSet | Since: unordered-containers-0.2.14.0
Instance details Defined in Data.HashSet.Internal Methods liftRnf :: (a -> ()) -> HashSet a -> () Source #
Foldable HashSet |

Instance details

Defined in Data.HashSet.Internal

Methods

fold :: Monoid m => HashSet m -> m Source #

foldMap :: Monoid m => (a -> m) -> HashSet a -> m Source #

foldMap' :: Monoid m => (a -> m) -> HashSet a -> m Source #

foldr :: (a -> b -> b) -> b -> HashSet a -> b Source #

foldr' :: (a -> b -> b) -> b -> HashSet a -> b Source #

foldl :: (b -> a -> b) -> b -> HashSet a -> b Source #

foldl' :: (b -> a -> b) -> b -> HashSet a -> b Source #

foldr1 :: (a -> a -> a) -> HashSet a -> a Source #

foldl1 :: (a -> a -> a) -> HashSet a -> a Source #

toList :: HashSet a -> [a] Source #

null :: HashSet a -> Bool Source #

length :: HashSet a -> Int Source #

elem :: Eq a => a -> HashSet a -> Bool Source #

maximum :: Ord a => HashSet a -> a Source #

minimum :: Ord a => HashSet a -> a Source #

sum :: Num a => HashSet a -> a Source #

product :: Num a => HashSet a -> a Source #

Hashable1 HashSet |
Instance details Defined in Data.HashSet.Internal Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> HashSet a -> Int Source #
Lift a => Lift (HashSet a :: Type) | Since: unordered-containers-0.2.17.0
Instance details Defined in Data.HashSet.Internal Methods lift :: Quote m => HashSet a -> m Exp Source # liftTyped :: forall (m :: Type -> Type). Quote m => HashSet a -> Code m (HashSet a) Source #
NFData a => NFData (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods rnf :: HashSet a -> () Source #

(Hashable a, Eq a) => Monoid (HashSet a)

`mempty` = `empty`

`mappend` = `union`

\(O(n+m)\)

To obtain good performance, the smaller set must be presented as the first argument.

#### Examples

Expand

    >>> mappend (fromList [1,2]) (fromList [2,3])
    fromList [1,2,3]

Instance details Defined in Data.HashSet.Internal Methods mempty :: HashSet a Source # mappend :: HashSet a -> HashSet a -> HashSet a Source # mconcat :: [HashSet a] -> HashSet a Source #

(Hashable a, Eq a) => Semigroup (HashSet a)

`<>` = `union`

\(O(n+m)\)

To obtain good performance, the smaller set must be presented as the first argument.

#### Examples

Expand

    >>> fromList [1,2] <> fromList [2,3]
    fromList [1,2,3]

Instance details Defined in Data.HashSet.Internal Methods (<>) :: HashSet a -> HashSet a -> HashSet a Source # sconcat :: NonEmpty (HashSet a) -> HashSet a Source # stimes :: Integral b => b -> HashSet a -> HashSet a Source #
(Data a, Eq a, Hashable a) => Data (HashSet a) |

Instance details

Defined in Data.HashSet.Internal

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> HashSet a -> c (HashSet a) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (HashSet a) Source #

toConstr :: HashSet a -> Constr Source #

dataTypeOf :: HashSet a -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (HashSet a)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (HashSet a)) Source #

gmapT :: (forall b. Data b => b -> b) -> HashSet a -> HashSet a Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> HashSet a -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> HashSet a -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> HashSet a -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> HashSet a -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> HashSet a -> m (HashSet a) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> HashSet a -> m (HashSet a) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> HashSet a -> m (HashSet a) Source #

(Eq a, Hashable a) => IsList (HashSet a) |

Instance details

Defined in Data.HashSet.Internal

Associated Types

type Item (HashSet a) |
Instance details Defined in Data.HashSet.Internal type Item (HashSet a) = a

Methods

fromList :: [Item (HashSet a)] -> HashSet a Source #

fromListN :: Int -> [Item (HashSet a)] -> HashSet a Source #

toList :: HashSet a -> [Item (HashSet a)] Source #

(Eq a, Hashable a, Read a) => Read (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods readsPrec :: Int -> ReadS (HashSet a) Source # readList :: ReadS [HashSet a] Source # readPrec :: ReadPrec (HashSet a) Source # readListPrec :: ReadPrec [HashSet a] Source #
Show a => Show (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods showsPrec :: Int -> HashSet a -> ShowS Source # show :: HashSet a -> String Source # showList :: [HashSet a] -> ShowS Source #

Eq a => Eq (HashSet a)

Note that, in the presence of hash collisions, equal `HashSet`s may behave differently, i.e. extensionality may be violated:

    >>> data D = A | B deriving (Eq, Show)
    >>> instance Hashable D where hashWithSalt salt _d = salt

    >>> x = fromList [A, B]
    >>> y = fromList [B, A]

    >>> x == y
    True
    >>> toList x
    [A,B]
    >>> toList y
    [B,A]

In general, the lack of extensionality can be observed with any function that depends on the key ordering, such as folds and traversals.

Instance details Defined in Data.HashSet.Internal Methods (==) :: HashSet a -> HashSet a -> Bool Source # (/=) :: HashSet a -> HashSet a -> Bool Source #
Ord a => Ord (HashSet a) |

Instance details

Defined in Data.HashSet.Internal

Methods

compare :: HashSet a -> HashSet a -> Ordering Source #

(<) :: HashSet a -> HashSet a -> Bool Source #

(<=) :: HashSet a -> HashSet a -> Bool Source #

(>) :: HashSet a -> HashSet a -> Bool Source #

(>=) :: HashSet a -> HashSet a -> Bool Source #

max :: HashSet a -> HashSet a -> HashSet a Source #

min :: HashSet a -> HashSet a -> HashSet a Source #

Hashable a => Hashable (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods hashWithSalt :: Int -> HashSet a -> Int Source # hash :: HashSet a -> Int Source #
(Eq element, Hashable element) => IsSet (HashSet element) |

Instance details

Defined in Data.Containers

Methods

insertSet :: Element (HashSet element) -> HashSet element -> HashSet element Source #

deleteSet :: Element (HashSet element) -> HashSet element -> HashSet element Source #

singletonSet :: Element (HashSet element) -> HashSet element Source #

setFromList :: [Element (HashSet element)] -> HashSet element Source #

setToList :: HashSet element -> [Element (HashSet element)] Source #

filterSet :: (Element (HashSet element) -> Bool) -> HashSet element -> HashSet element Source #

(Eq element, Hashable element) => SetContainer (HashSet element) |

Instance details

Defined in Data.Containers

Associated Types

type ContainerKey (HashSet element) |
Instance details Defined in Data.Containers type ContainerKey (HashSet element) = element

Methods

member :: ContainerKey (HashSet element) -> HashSet element -> Bool Source #

notMember :: ContainerKey (HashSet element) -> HashSet element -> Bool Source #

union :: HashSet element -> HashSet element -> HashSet element Source #

unions :: (MonoFoldable mono, Element mono ~ HashSet element) => mono -> HashSet element Source #

difference :: HashSet element -> HashSet element -> HashSet element Source #

intersection :: HashSet element -> HashSet element -> HashSet element Source #

keys :: HashSet element -> [ContainerKey (HashSet element)] Source #

(Eq v, Hashable v) => GrowingAppend (HashSet v) |
Instance details Defined in Data.MonoTraversable
MonoFoldable (HashSet e) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (HashSet e) -> m) -> HashSet e -> m Source #

ofoldr :: (Element (HashSet e) -> b -> b) -> b -> HashSet e -> b Source #

ofoldl' :: (a -> Element (HashSet e) -> a) -> a -> HashSet e -> a Source #

otoList :: HashSet e -> [Element (HashSet e)] Source #

oall :: (Element (HashSet e) -> Bool) -> HashSet e -> Bool Source #

oany :: (Element (HashSet e) -> Bool) -> HashSet e -> Bool Source #

onull :: HashSet e -> Bool Source #

olength :: HashSet e -> Int Source #

olength64 :: HashSet e -> Int64 Source #

ocompareLength :: Integral i => HashSet e -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (HashSet e) -> f b) -> HashSet e -> f () Source #

ofor_ :: Applicative f => HashSet e -> (Element (HashSet e) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (HashSet e) -> m ()) -> HashSet e -> m () Source #

oforM_ :: Applicative m => HashSet e -> (Element (HashSet e) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a -> Element (HashSet e) -> m a) -> a -> HashSet e -> m a Source #

ofoldMap1Ex :: Semigroup m => (Element (HashSet e) -> m) -> HashSet e -> m Source #

ofoldr1Ex :: (Element (HashSet e) -> Element (HashSet e) -> Element (HashSet e)) -> HashSet e -> Element (HashSet e) Source #

ofoldl1Ex' :: (Element (HashSet e) -> Element (HashSet e) -> Element (HashSet e)) -> HashSet e -> Element (HashSet e) Source #

headEx :: HashSet e -> Element (HashSet e) Source #

lastEx :: HashSet e -> Element (HashSet e) Source #

unsafeHead :: HashSet e -> Element (HashSet e) Source #

unsafeLast :: HashSet e -> Element (HashSet e) Source #

maximumByEx :: (Element (HashSet e) -> Element (HashSet e) -> Ordering) -> HashSet e -> Element (HashSet e) Source #

minimumByEx :: (Element (HashSet e) -> Element (HashSet e) -> Ordering) -> HashSet e -> Element (HashSet e) Source #

oelem :: Element (HashSet e) -> HashSet e -> Bool Source #

onotElem :: Element (HashSet e) -> HashSet e -> Bool Source #

Hashable a => MonoPointed (HashSet a) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (HashSet a) -> HashSet a Source #
type Item (HashSet a) |
Instance details Defined in Data.HashSet.Internal type Item (HashSet a) = a
type ContainerKey (HashSet element) |
Instance details Defined in Data.Containers type ContainerKey (HashSet element) = element
type Element (HashSet e) |
Instance details Defined in Data.MonoTraversable type Element (HashSet e) = e

class (Vector Vector a, MVector MVector a) => Unbox a #

#### Instances

Instances details

Unbox All |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Any |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Int16 |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Int32 |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Int64 |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Int8 |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Word16 |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Word32 |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Word64 |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Word8 |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox () |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Bool |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Char |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Double |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Float |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Int |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox Word |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Complex a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (First a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Last a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Max a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Min a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (WrappedMonoid a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Identity a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Down a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Dual a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Product a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Sum a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox (DoNotUnboxLazy a) |
Instance details Defined in Data.Vector.Unboxed.Base
NFData a => Unbox (DoNotUnboxNormalForm a) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox (DoNotUnboxStrict a) |
Instance details Defined in Data.Vector.Unboxed.Base
(Unbox a, Unbox b) => Unbox (Arg a b) |
Instance details Defined in Data.Vector.Unboxed.Base
(Unbox a, Unbox b) => Unbox (a, b) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox a => Unbox (Const a b) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox (f a) => Unbox (Alt f a) |
Instance details Defined in Data.Vector.Unboxed.Base
(Unbox a, Unbox b, Unbox c) => Unbox (a, b, c) |
Instance details Defined in Data.Vector.Unboxed.Base
(Unbox a, Unbox b, Unbox c, Unbox d) => Unbox (a, b, c, d) |
Instance details Defined in Data.Vector.Unboxed.Base
Unbox (f (g a)) => Unbox (Compose f g a) |
Instance details Defined in Data.Vector.Unboxed.Base
(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e) => Unbox (a, b, c, d, e) |
Instance details Defined in Data.Vector.Unboxed.Base
(Unbox a, Unbox b, Unbox c, Unbox d, Unbox e, Unbox f) => Unbox (a, b, c, d, e, f) |
Instance details Defined in Data.Vector.Unboxed.Base

data Vector a #

#### Instances

Instances details

MonadZip Vector |
Instance details Defined in Data.Vector Methods mzip :: Vector a -> Vector b -> Vector (a, b) Source # mzipWith :: (a -> b -> c) -> Vector a -> Vector b -> Vector c Source # munzip :: Vector (a, b) -> (Vector a, Vector b) Source #
Eq1 Vector |
Instance details Defined in Data.Vector Methods liftEq :: (a -> b -> Bool) -> Vector a -> Vector b -> Bool Source #
Ord1 Vector |
Instance details Defined in Data.Vector Methods liftCompare :: (a -> b -> Ordering) -> Vector a -> Vector b -> Ordering Source #
Read1 Vector |
Instance details Defined in Data.Vector Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Vector a) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Vector a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Vector a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Vector a] Source #
Show1 Vector |
Instance details Defined in Data.Vector Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Vector a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Vector a] -> ShowS Source #
Zip Vector |
Instance details Defined in Data.ChunkedZip Methods zipWith :: (a -> b -> c) -> Vector a -> Vector b -> Vector c Source # zip :: Vector a -> Vector b -> Vector (a, b) Source # zap :: Vector (a -> b) -> Vector a -> Vector b Source # unzip :: Vector (a, b) -> (Vector a, Vector b) Source #
Zip3 Vector |
Instance details Defined in Data.ChunkedZip Methods zipWith3 :: (a -> b -> c -> d) -> Vector a -> Vector b -> Vector c -> Vector d Source # zip3 :: Vector a -> Vector b -> Vector c -> Vector (a, b, c) Source # zap3 :: Vector (a -> b -> c) -> Vector a -> Vector b -> Vector c Source # unzip3 :: Vector (a, b, c) -> (Vector a, Vector b, Vector c) Source #
Zip4 Vector |

Instance details

Defined in Data.ChunkedZip

Methods

zipWith4 :: (a -> b -> c -> d -> e) -> Vector a -> Vector b -> Vector c -> Vector d -> Vector e Source #

zip4 :: Vector a -> Vector b -> Vector c -> Vector d -> Vector (a, b, c, d) Source #

zap4 :: Vector (a -> b -> c -> d) -> Vector a -> Vector b -> Vector c -> Vector d Source #

unzip4 :: Vector (a, b, c, d) -> (Vector a, Vector b, Vector c, Vector d) Source #

Zip5 Vector |

Instance details

Defined in Data.ChunkedZip

Methods

zipWith5 :: (a -> b -> c -> d -> e -> g) -> Vector a -> Vector b -> Vector c -> Vector d -> Vector e -> Vector g Source #

zip5 :: Vector a -> Vector b -> Vector c -> Vector d -> Vector e -> Vector (a, b, c, d, e) Source #

zap5 :: Vector (a -> b -> c -> d -> e) -> Vector a -> Vector b -> Vector c -> Vector d -> Vector e Source #

unzip5 :: Vector (a, b, c, d, e) -> (Vector a, Vector b, Vector c, Vector d, Vector e) Source #

Zip6 Vector |

Instance details

Defined in Data.ChunkedZip

Methods

zipWith6 :: (a -> b -> c -> d -> e -> g -> h) -> Vector a -> Vector b -> Vector c -> Vector d -> Vector e -> Vector g -> Vector h Source #

zip6 :: Vector a -> Vector b -> Vector c -> Vector d -> Vector e -> Vector g -> Vector (a, b, c, d, e, g) Source #

zap6 :: Vector (a -> b -> c -> d -> e -> g) -> Vector a -> Vector b -> Vector c -> Vector d -> Vector e -> Vector g Source #

unzip6 :: Vector (a, b, c, d, e, g) -> (Vector a, Vector b, Vector c, Vector d, Vector e, Vector g) Source #

NFData1 Vector |
Instance details Defined in Data.Vector Methods liftRnf :: (a -> ()) -> Vector a -> () Source #
Alternative Vector |
Instance details Defined in Data.Vector Methods empty :: Vector a Source # (<|>) :: Vector a -> Vector a -> Vector a Source # some :: Vector a -> Vector [a] Source # many :: Vector a -> Vector [a] Source #
Applicative Vector |
Instance details Defined in Data.Vector Methods pure :: a -> Vector a Source # (<*>) :: Vector (a -> b) -> Vector a -> Vector b Source # liftA2 :: (a -> b -> c) -> Vector a -> Vector b -> Vector c Source # (*>) :: Vector a -> Vector b -> Vector b Source # (<*) :: Vector a -> Vector b -> Vector a Source #
Functor Vector |
Instance details Defined in Data.Vector Methods fmap :: (a -> b) -> Vector a -> Vector b Source # (<$) :: a -> Vector b -> Vector a Source #
Monad Vector |
Instance details Defined in Data.Vector Methods (>>=) :: Vector a -> (a -> Vector b) -> Vector b Source # (>>) :: Vector a -> Vector b -> Vector b Source # return :: a -> Vector a Source #
MonadPlus Vector |
Instance details Defined in Data.Vector Methods mzero :: Vector a Source # mplus :: Vector a -> Vector a -> Vector a Source #
MonadFail Vector |
Instance details Defined in Data.Vector Methods fail :: String -> Vector a Source #
MonadFix Vector |
Instance details Defined in Data.Vector Methods mfix :: (a -> Vector a) -> Vector a Source #
Foldable Vector |

Instance details

Defined in Data.Vector

Methods

fold :: Monoid m => Vector m -> m Source #

foldMap :: Monoid m => (a -> m) -> Vector a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Vector a -> m Source #

foldr :: (a -> b -> b) -> b -> Vector a -> b Source #

foldr' :: (a -> b -> b) -> b -> Vector a -> b Source #

foldl :: (b -> a -> b) -> b -> Vector a -> b Source #

foldl' :: (b -> a -> b) -> b -> Vector a -> b Source #

foldr1 :: (a -> a -> a) -> Vector a -> a Source #

foldl1 :: (a -> a -> a) -> Vector a -> a Source #

toList :: Vector a -> [a] Source #

null :: Vector a -> Bool Source #

length :: Vector a -> Int Source #

elem :: Eq a => a -> Vector a -> Bool Source #

maximum :: Ord a => Vector a -> a Source #

minimum :: Ord a => Vector a -> a Source #

sum :: Num a => Vector a -> a Source #

product :: Num a => Vector a -> a Source #

Traversable Vector |
Instance details Defined in Data.Vector Methods traverse :: Applicative f => (a -> f b) -> Vector a -> f (Vector b) Source # sequenceA :: Applicative f => Vector (f a) -> f (Vector a) Source # mapM :: Monad m => (a -> m b) -> Vector a -> m (Vector b) Source # sequence :: Monad m => Vector (m a) -> m (Vector a) Source #
Hashable1 Vector |
Instance details Defined in Data.Vector.Instances Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> Vector a -> Int Source #
Adjustable Vector |
Instance details Defined in Data.Vector.Instances Methods adjust :: (a -> a) -> Key Vector -> Vector a -> Vector a replace :: Key Vector -> a -> Vector a -> Vector a
FoldableWithKey Vector |
Instance details Defined in Data.Vector.Instances Methods toKeyedList :: Vector a -> [(Key Vector, a)] foldMapWithKey :: Monoid m => (Key Vector -> a -> m) -> Vector a -> m foldrWithKey :: (Key Vector -> a -> b -> b) -> b -> Vector a -> b foldlWithKey :: (b -> Key Vector -> a -> b) -> b -> Vector a -> b
Indexable Vector |
Instance details Defined in Data.Vector.Instances Methods index :: Vector a -> Key Vector -> a
Keyed Vector |
Instance details Defined in Data.Vector.Instances Methods mapWithKey :: (Key Vector -> a -> b) -> Vector a -> Vector b
Lookup Vector |
Instance details Defined in Data.Vector.Instances Methods lookup :: Key Vector -> Vector a -> Maybe a
TraversableWithKey Vector |
Instance details Defined in Data.Vector.Instances Methods traverseWithKey :: Applicative f => (Key Vector -> a -> f b) -> Vector a -> f (Vector b) mapWithKeyM :: Monad m => (Key Vector -> a -> m b) -> Vector a -> m (Vector b)
Zip Vector |
Instance details Defined in Data.Vector.Instances Methods zipWith :: (a -> b -> c) -> Vector a -> Vector b -> Vector c zip :: Vector a -> Vector b -> Vector (a, b) zap :: Vector (a -> b) -> Vector a -> Vector b
ZipWithKey Vector |
Instance details Defined in Data.Vector.Instances Methods zipWithKey :: (Key Vector -> a -> b -> c) -> Vector a -> Vector b -> Vector c zapWithKey :: Vector (Key Vector -> a -> b) -> Vector a -> Vector b
Pointed Vector |
Instance details Defined in Data.Vector.Instances Methods point :: a -> Vector a
Alt Vector |
Instance details Defined in Data.Vector.Instances Methods (<!>) :: Vector a -> Vector a -> Vector a some :: Applicative Vector => Vector a -> Vector [a] many :: Applicative Vector => Vector a -> Vector [a]
Apply Vector |
Instance details Defined in Data.Vector.Instances Methods (<.>) :: Vector (a -> b) -> Vector a -> Vector b (.>) :: Vector a -> Vector b -> Vector b (<.) :: Vector a -> Vector b -> Vector a liftF2 :: (a -> b -> c) -> Vector a -> Vector b -> Vector c
Bind Vector |
Instance details Defined in Data.Vector.Instances Methods (>>-) :: Vector a -> (a -> Vector b) -> Vector b join :: Vector (Vector a) -> Vector a
Extend Vector |
Instance details Defined in Data.Vector.Instances Methods duplicated :: Vector a -> Vector (Vector a) extended :: (Vector a -> b) -> Vector a -> Vector b
Plus Vector |
Instance details Defined in Data.Vector.Instances Methods zero :: Vector a
Vector Vector a |
Instance details Defined in Data.Vector Methods basicUnsafeFreeze :: Mutable Vector s a -> ST s (Vector a) basicUnsafeThaw :: Vector a -> ST s (Mutable Vector s a) basicLength :: Vector a -> Int basicUnsafeSlice :: Int -> Int -> Vector a -> Vector a basicUnsafeIndexM :: Vector a -> Int -> Box a basicUnsafeCopy :: Mutable Vector s a -> Vector a -> ST s () elemseq :: Vector a -> a -> b -> b
NFData a => NFData (Vector a) |
Instance details Defined in Data.Vector Methods rnf :: Vector a -> () Source #
Monoid (Vector a) |
Instance details Defined in Data.Vector Methods mempty :: Vector a Source # mappend :: Vector a -> Vector a -> Vector a Source # mconcat :: [Vector a] -> Vector a Source #
Semigroup (Vector a) |
Instance details Defined in Data.Vector Methods (<>) :: Vector a -> Vector a -> Vector a Source # sconcat :: NonEmpty (Vector a) -> Vector a Source # stimes :: Integral b => b -> Vector a -> Vector a Source #
Data a => Data (Vector a) |

Instance details

Defined in Data.Vector

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Vector a -> c (Vector a) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (Vector a) Source #

toConstr :: Vector a -> Constr Source #

dataTypeOf :: Vector a -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (Vector a)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (Vector a)) Source #

gmapT :: (forall b. Data b => b -> b) -> Vector a -> Vector a Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Vector a -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Vector a -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Vector a -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Vector a -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Vector a -> m (Vector a) Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Vector a -> m (Vector a) Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Vector a -> m (Vector a) Source #

IsList (Vector a) |

Instance details

Defined in Data.Vector

Associated Types

type Item (Vector a) |
Instance details Defined in Data.Vector type Item (Vector a) = a

Methods

fromList :: [Item (Vector a)] -> Vector a Source #

fromListN :: Int -> [Item (Vector a)] -> Vector a Source #

toList :: Vector a -> [Item (Vector a)] Source #

Read a => Read (Vector a) |
Instance details Defined in Data.Vector Methods readsPrec :: Int -> ReadS (Vector a) Source # readList :: ReadS [Vector a] Source # readPrec :: ReadPrec (Vector a) Source # readListPrec :: ReadPrec [Vector a] Source #
Show a => Show (Vector a) |
Instance details Defined in Data.Vector Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
Eq a => Eq (Vector a) |
Instance details Defined in Data.Vector Methods (==) :: Vector a -> Vector a -> Bool Source # (/=) :: Vector a -> Vector a -> Bool Source #
Ord a => Ord (Vector a) |
Instance details Defined in Data.Vector Methods compare :: Vector a -> Vector a -> Ordering Source # (<) :: Vector a -> Vector a -> Bool Source # (<=) :: Vector a -> Vector a -> Bool Source # (>) :: Vector a -> Vector a -> Bool Source # (>=) :: Vector a -> Vector a -> Bool Source # max :: Vector a -> Vector a -> Vector a Source # min :: Vector a -> Vector a -> Vector a Source #
Hashable a => Hashable (Vector a) |
Instance details Defined in Data.Vector.Instances Methods hashWithSalt :: Int -> Vector a -> Int Source # hash :: Vector a -> Int Source #
GrowingAppend (Vector a) |
Instance details Defined in Data.MonoTraversable
MonoFoldable (Vector a) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (Vector a) -> m) -> Vector a -> m Source #

ofoldr :: (Element (Vector a) -> b -> b) -> b -> Vector a -> b Source #

ofoldl' :: (a0 -> Element (Vector a) -> a0) -> a0 -> Vector a -> a0 Source #

otoList :: Vector a -> [Element (Vector a)] Source #

oall :: (Element (Vector a) -> Bool) -> Vector a -> Bool Source #

oany :: (Element (Vector a) -> Bool) -> Vector a -> Bool Source #

onull :: Vector a -> Bool Source #

olength :: Vector a -> Int Source #

olength64 :: Vector a -> Int64 Source #

ocompareLength :: Integral i => Vector a -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (Vector a) -> f b) -> Vector a -> f () Source #

ofor_ :: Applicative f => Vector a -> (Element (Vector a) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (Vector a) -> m ()) -> Vector a -> m () Source #

oforM_ :: Applicative m => Vector a -> (Element (Vector a) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a0 -> Element (Vector a) -> m a0) -> a0 -> Vector a -> m a0 Source #

ofoldMap1Ex :: Semigroup m => (Element (Vector a) -> m) -> Vector a -> m Source #

ofoldr1Ex :: (Element (Vector a) -> Element (Vector a) -> Element (Vector a)) -> Vector a -> Element (Vector a) Source #

ofoldl1Ex' :: (Element (Vector a) -> Element (Vector a) -> Element (Vector a)) -> Vector a -> Element (Vector a) Source #

headEx :: Vector a -> Element (Vector a) Source #

lastEx :: Vector a -> Element (Vector a) Source #

unsafeHead :: Vector a -> Element (Vector a) Source #

unsafeLast :: Vector a -> Element (Vector a) Source #

maximumByEx :: (Element (Vector a) -> Element (Vector a) -> Ordering) -> Vector a -> Element (Vector a) Source #

minimumByEx :: (Element (Vector a) -> Element (Vector a) -> Ordering) -> Vector a -> Element (Vector a) Source #

oelem :: Element (Vector a) -> Vector a -> Bool Source #

onotElem :: Element (Vector a) -> Vector a -> Bool Source #

MonoFunctor (Vector a) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (Vector a) -> Element (Vector a)) -> Vector a -> Vector a Source #
MonoPointed (Vector a) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (Vector a) -> Vector a Source #
MonoTraversable (Vector a) |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element (Vector a) -> f (Element (Vector a))) -> Vector a -> f (Vector a) Source # omapM :: Applicative m => (Element (Vector a) -> m (Element (Vector a))) -> Vector a -> m (Vector a) Source #
IsSequence (Vector a) |

Instance details

Defined in Data.Sequences

Methods

fromList :: [Element (Vector a)] -> Vector a Source #

lengthIndex :: Vector a -> Index (Vector a) Source #

break :: (Element (Vector a) -> Bool) -> Vector a -> (Vector a, Vector a) Source #

span :: (Element (Vector a) -> Bool) -> Vector a -> (Vector a, Vector a) Source #

dropWhile :: (Element (Vector a) -> Bool) -> Vector a -> Vector a Source #

takeWhile :: (Element (Vector a) -> Bool) -> Vector a -> Vector a Source #

splitAt :: Index (Vector a) -> Vector a -> (Vector a, Vector a) Source #

unsafeSplitAt :: Index (Vector a) -> Vector a -> (Vector a, Vector a) Source #

take :: Index (Vector a) -> Vector a -> Vector a Source #

unsafeTake :: Index (Vector a) -> Vector a -> Vector a Source #

drop :: Index (Vector a) -> Vector a -> Vector a Source #

unsafeDrop :: Index (Vector a) -> Vector a -> Vector a Source #

dropEnd :: Index (Vector a) -> Vector a -> Vector a Source #

partition :: (Element (Vector a) -> Bool) -> Vector a -> (Vector a, Vector a) Source #

uncons :: Vector a -> Maybe (Element (Vector a), Vector a) Source #

unsnoc :: Vector a -> Maybe (Vector a, Element (Vector a)) Source #

filter :: (Element (Vector a) -> Bool) -> Vector a -> Vector a Source #

filterM :: Monad m => (Element (Vector a) -> m Bool) -> Vector a -> m (Vector a) Source #

replicate :: Index (Vector a) -> Element (Vector a) -> Vector a Source #

replicateM :: Monad m => Index (Vector a) -> m (Element (Vector a)) -> m (Vector a) Source #

groupBy :: (Element (Vector a) -> Element (Vector a) -> Bool) -> Vector a -> [Vector a] Source #

groupAllOn :: Eq b => (Element (Vector a) -> b) -> Vector a -> [Vector a] Source #

subsequences :: Vector a -> [Vector a] Source #

permutations :: Vector a -> [Vector a] Source #

tailEx :: Vector a -> Vector a Source #

tailMay :: Vector a -> Maybe (Vector a) Source #

initEx :: Vector a -> Vector a Source #

initMay :: Vector a -> Maybe (Vector a) Source #

unsafeTail :: Vector a -> Vector a Source #

unsafeInit :: Vector a -> Vector a Source #

index :: Vector a -> Index (Vector a) -> Maybe (Element (Vector a)) Source #

indexEx :: Vector a -> Index (Vector a) -> Element (Vector a) Source #

unsafeIndex :: Vector a -> Index (Vector a) -> Element (Vector a) Source #

splitWhen :: (Element (Vector a) -> Bool) -> Vector a -> [Vector a] Source #

tails :: Vector a -> [Vector a] Source #

inits :: Vector a -> [Vector a] Source #

initTails :: Vector a -> [(Vector a, Vector a)] Source #

SemiSequence (Vector a) |

Instance details

Defined in Data.Sequences

Associated Types

type Index (Vector a) |
Instance details Defined in Data.Sequences type Index (Vector a) = Int

Methods

intersperse :: Element (Vector a) -> Vector a -> Vector a Source #

reverse :: Vector a -> Vector a Source #

find :: (Element (Vector a) -> Bool) -> Vector a -> Maybe (Element (Vector a)) Source #

sortBy :: (Element (Vector a) -> Element (Vector a) -> Ordering) -> Vector a -> Vector a Source #

cons :: Element (Vector a) -> Vector a -> Vector a Source #

snoc :: Vector a -> Element (Vector a) -> Vector a Source #

type Key Vector |
Instance details Defined in Data.Vector.Instances type Key Vector = Int
type Mutable Vector |
Instance details Defined in Data.Vector type Mutable Vector = MVector
type Item (Vector a) |
Instance details Defined in Data.Vector type Item (Vector a) = a
type Element (Vector a) |
Instance details Defined in Data.MonoTraversable type Element (Vector a) = a
type Index (Vector a) |
Instance details Defined in Data.Sequences type Index (Vector a) = Int

type SVector = Vector Source #

type UVector = Vector Source #

type LByteString = ByteString Source #

type LText = Text Source #

equating :: Eq a => (b -> a) -> b -> b -> Bool Source #

terror :: HasCallStack => Text -> a Source #

`error` applied to `Text`

Since 0.4.1

undefined :: HasCallStack => a Source #

Deprecated: It is highly recommended that you either avoid partial functions or provide meaningful error messages

We define our own `undefined` which is marked as deprecated. This makes it useful to use during development, but lets you more easily get notifications if you accidentally ship partial code in production.

The classy prelude recommendation for when you need to really have a partial function in production is to use `error` with a very descriptive message so that, in case an exception is thrown, you get more information than `Prelude.`undefined``.

Since 0.5.5

# Standard

## Monoid

(++) :: Monoid m => m -> m -> m infixr 5 Source #

## Semigroup

class Semigroup a where Source #

The class of semigroups (types with an associative binary operation).

Instances should satisfy the following:

Associativity
  `x `<>` (y `<>` z) = (x `<>` y) `<>` z`

You can alternatively define `sconcat` instead of (`<>`), in which case the laws are:

Unit
  ``sconcat` (`pure` x) = x`
Multiplication
  ``sconcat` (`join` xss) = `sconcat` (`fmap` `sconcat` xss)`

Since: base-4.9.0.0

Minimal complete definition

(<>) | sconcat

Methods

(<>) :: a -> a -> a infixr 6 Source #

An associative operation.

#### Examples

Expand

    >>> [1,2,3] <> [4,5,6]
    [1,2,3,4,5,6]

    >>> Just [1, 2, 3] <> Just [4, 5, 6]
    Just [1,2,3,4,5,6]

    >>> putStr "Hello, " <> putStrLn "World!"
    Hello, World!

sconcat :: NonEmpty a -> a Source #

Reduce a non-empty list with `<>`

The default definition should be sufficient, but this can be overridden for efficiency.

#### Examples

Expand

For the following examples, we will assume that we have:

    >>> import Data.List.NonEmpty (NonEmpty (..))

    >>> sconcat $ "Hello" :| [" ", "Haskell", "!"]
    "Hello Haskell!"

    >>> sconcat $ Just [1, 2, 3] :| [Nothing, Just [4, 5, 6]]
    Just [1,2,3,4,5,6]

    >>> sconcat $ Left 1 :| [Right 2, Left 3, Right 4]
    Right 2

stimes :: Integral b => b -> a -> a Source #

Repeat a value `n` times.

The default definition will raise an exception for a multiplier that is `<= 0`. This may be overridden with an implementation that is total. For monoids it is preferred to use `stimesMonoid`.

By making this a member of the class, idempotent semigroups and monoids can upgrade this to execute in \(\mathcal{O}(1)\) by picking `stimes = `stimesIdempotent`` or `stimes = `stimesIdempotentMonoid`` respectively.

#### Examples

Expand

    >>> stimes 4 [1]
    [1,1,1,1]

    >>> stimes 5 (putStr "hi!")
    hi!hi!hi!hi!hi!

    >>> stimes 3 (Right ":)")
    Right ":)"

#### Instances

Instances details

Semigroup ByteArray | Since: base-4.17.0.0
Instance details Defined in Data.Array.Byte Methods (<>) :: ByteArray -> ByteArray -> ByteArray Source # sconcat :: NonEmpty ByteArray -> ByteArray Source # stimes :: Integral b => b -> ByteArray -> ByteArray Source #
Semigroup Builder |
Instance details Defined in Data.ByteString.Builder.Internal Methods (<>) :: Builder -> Builder -> Builder Source # sconcat :: NonEmpty Builder -> Builder Source # stimes :: Integral b => b -> Builder -> Builder Source #
Semigroup ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods (<>) :: ByteString -> ByteString -> ByteString Source # sconcat :: NonEmpty ByteString -> ByteString Source # stimes :: Integral b => b -> ByteString -> ByteString Source #
Semigroup ByteString |
Instance details Defined in Data.ByteString.Lazy.Internal Methods (<>) :: ByteString -> ByteString -> ByteString Source # sconcat :: NonEmpty ByteString -> ByteString Source # stimes :: Integral b => b -> ByteString -> ByteString Source #
Semigroup ShortByteString |
Instance details Defined in Data.ByteString.Short.Internal Methods (<>) :: ShortByteString -> ShortByteString -> ShortByteString Source # sconcat :: NonEmpty ShortByteString -> ShortByteString Source # stimes :: Integral b => b -> ShortByteString -> ShortByteString Source #
Semigroup IntSet | Since: containers-0.5.7
Instance details Defined in Data.IntSet.Internal Methods (<>) :: IntSet -> IntSet -> IntSet Source # sconcat :: NonEmpty IntSet -> IntSet Source # stimes :: Integral b => b -> IntSet -> IntSet Source #
Semigroup Void | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: Void -> Void -> Void Source # sconcat :: NonEmpty Void -> Void Source # stimes :: Integral b => b -> Void -> Void Source #
Semigroup ExceptionContext |
Instance details Defined in GHC.Internal.Exception.Context Methods (<>) :: ExceptionContext -> ExceptionContext -> ExceptionContext Source # sconcat :: NonEmpty ExceptionContext -> ExceptionContext Source # stimes :: Integral b => b -> ExceptionContext -> ExceptionContext Source #
Semigroup Ordering | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: Ordering -> Ordering -> Ordering Source # sconcat :: NonEmpty Ordering -> Ordering Source # stimes :: Integral b => b -> Ordering -> Ordering Source #
Semigroup Text | Beware: `stimes` will crash if the given number does not fit into an `Int`. Since: text-1.2.2.0
Instance details Defined in Data.Text Methods (<>) :: Text -> Text -> Text Source # sconcat :: NonEmpty Text -> Text Source # stimes :: Integral b => b -> Text -> Text Source #
Semigroup Builder |
Instance details Defined in Data.Text.Internal.Builder Methods (<>) :: Builder -> Builder -> Builder Source # sconcat :: NonEmpty Builder -> Builder Source # stimes :: Integral b => b -> Builder -> Builder Source #
Semigroup Text | Since: text-1.2.2.0
Instance details Defined in Data.Text.Lazy Methods (<>) :: Text -> Text -> Text Source # sconcat :: NonEmpty Text -> Text Source # stimes :: Integral b => b -> Text -> Text Source #
Semigroup StrictTextBuilder | Concatenation of `StrictBuilder` is right-biased: the right builder will be run first. This allows a builder to run tail-recursively when it was accumulated left-to-right.
Instance details Defined in Data.Text.Internal.StrictBuilder Methods (<>) :: StrictTextBuilder -> StrictTextBuilder -> StrictTextBuilder Source # sconcat :: NonEmpty StrictTextBuilder -> StrictTextBuilder Source # stimes :: Integral b => b -> StrictTextBuilder -> StrictTextBuilder Source #
Semigroup () | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: () -> () -> () Source # sconcat :: NonEmpty () -> () Source # stimes :: Integral b => b -> () -> () Source #
Semigroup a => Semigroup (Concurrently a) | Only defined by `async` for `base >= 4.9` Since: async-2.1.0
Instance details Defined in Control.Concurrent.Async.Internal Methods (<>) :: Concurrently a -> Concurrently a -> Concurrently a Source # sconcat :: NonEmpty (Concurrently a) -> Concurrently a Source # stimes :: Integral b => b -> Concurrently a -> Concurrently a Source #
Semigroup (FromMaybe b) |
Instance details Defined in Data.Foldable1 Methods (<>) :: FromMaybe b -> FromMaybe b -> FromMaybe b Source # sconcat :: NonEmpty (FromMaybe b) -> FromMaybe b Source # stimes :: Integral b0 => b0 -> FromMaybe b -> FromMaybe b Source #
Semigroup a => Semigroup (JoinWith a) |
Instance details Defined in Data.Foldable1 Methods (<>) :: JoinWith a -> JoinWith a -> JoinWith a Source # sconcat :: NonEmpty (JoinWith a) -> JoinWith a Source # stimes :: Integral b => b -> JoinWith a -> JoinWith a Source #
Semigroup (NonEmptyDList a) |
Instance details Defined in Data.Foldable1 Methods (<>) :: NonEmptyDList a -> NonEmptyDList a -> NonEmptyDList a Source # sconcat :: NonEmpty (NonEmptyDList a) -> NonEmptyDList a Source # stimes :: Integral b => b -> NonEmptyDList a -> NonEmptyDList a Source #

Semigroup (Comparison a)

`(`<>`)` on comparisons combines results with `(`<>`) @Ordering`. Without newtypes this equals ``liftA2` (`liftA2` (`<>`))`.

    (<>) :: Comparison a -> Comparison a -> Comparison a
    Comparison cmp <> Comparison cmp' = Comparison a a' ->
      cmp a a' <> cmp a a'

Instance details Defined in Data.Functor.Contravariant Methods (<>) :: Comparison a -> Comparison a -> Comparison a Source # sconcat :: NonEmpty (Comparison a) -> Comparison a Source # stimes :: Integral b => b -> Comparison a -> Comparison a Source #

Semigroup (Equivalence a)

`(`<>`)` on equivalences uses logical conjunction `(`&&`)` on the results. Without newtypes this equals ``liftA2` (`liftA2` (&&))`.

    (<>) :: Equivalence a -> Equivalence a -> Equivalence a
    Equivalence equiv <> Equivalence equiv' = Equivalence a b ->
      equiv a b && equiv' a b

Instance details Defined in Data.Functor.Contravariant Methods (<>) :: Equivalence a -> Equivalence a -> Equivalence a Source # sconcat :: NonEmpty (Equivalence a) -> Equivalence a Source # stimes :: Integral b => b -> Equivalence a -> Equivalence a Source #

Semigroup (Predicate a)

`(`<>`)` on predicates uses logical conjunction `(`&&`)` on the results. Without newtypes this equals ``liftA2` (&&)`.

    (<>) :: Predicate a -> Predicate a -> Predicate a
    Predicate pred <> Predicate pred' = Predicate a ->
      pred a && pred' a

Instance details Defined in Data.Functor.Contravariant Methods (<>) :: Predicate a -> Predicate a -> Predicate a Source # sconcat :: NonEmpty (Predicate a) -> Predicate a Source # stimes :: Integral b => b -> Predicate a -> Predicate a Source #
Semigroup (First a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (<>) :: First a -> First a -> First a Source # sconcat :: NonEmpty (First a) -> First a Source # stimes :: Integral b => b -> First a -> First a Source #
Semigroup (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (<>) :: Last a -> Last a -> Last a Source # sconcat :: NonEmpty (Last a) -> Last a Source # stimes :: Integral b => b -> Last a -> Last a Source #
Ord a => Semigroup (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (<>) :: Max a -> Max a -> Max a Source # sconcat :: NonEmpty (Max a) -> Max a Source # stimes :: Integral b => b -> Max a -> Max a Source #
Ord a => Semigroup (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (<>) :: Min a -> Min a -> Min a Source # sconcat :: NonEmpty (Min a) -> Min a Source # stimes :: Integral b => b -> Min a -> Min a Source #
Monoid m => Semigroup (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (<>) :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Source # sconcat :: NonEmpty (WrappedMonoid m) -> WrappedMonoid m Source # stimes :: Integral b => b -> WrappedMonoid m -> WrappedMonoid m Source #
Semigroup (IntMap a) | Since: containers-0.5.7
Instance details Defined in Data.IntMap.Internal Methods (<>) :: IntMap a -> IntMap a -> IntMap a Source # sconcat :: NonEmpty (IntMap a) -> IntMap a Source # stimes :: Integral b => b -> IntMap a -> IntMap a Source #
Semigroup (Seq a) | Since: containers-0.5.7
Instance details Defined in Data.Sequence.Internal Methods (<>) :: Seq a -> Seq a -> Seq a Source # sconcat :: NonEmpty (Seq a) -> Seq a Source # stimes :: Integral b => b -> Seq a -> Seq a Source #
Ord a => Semigroup (Intersection a) |
Instance details Defined in Data.Set.Internal Methods (<>) :: Intersection a -> Intersection a -> Intersection a Source # sconcat :: NonEmpty (Intersection a) -> Intersection a Source # stimes :: Integral b => b -> Intersection a -> Intersection a Source #
Semigroup (MergeSet a) |
Instance details Defined in Data.Set.Internal Methods (<>) :: MergeSet a -> MergeSet a -> MergeSet a Source # sconcat :: NonEmpty (MergeSet a) -> MergeSet a Source # stimes :: Integral b => b -> MergeSet a -> MergeSet a Source #
Ord a => Semigroup (Set a) | Since: containers-0.5.7
Instance details Defined in Data.Set.Internal Methods (<>) :: Set a -> Set a -> Set a Source # sconcat :: NonEmpty (Set a) -> Set a Source # stimes :: Integral b => b -> Set a -> Set a Source #
Semigroup (DList a) |
Instance details Defined in Data.DList.Internal Methods (<>) :: DList a -> DList a -> DList a Source # sconcat :: NonEmpty (DList a) -> DList a Source # stimes :: Integral b => b -> DList a -> DList a Source #
Semigroup (NonEmpty a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: NonEmpty a -> NonEmpty a -> NonEmpty a Source # sconcat :: NonEmpty (NonEmpty a) -> NonEmpty a Source # stimes :: Integral b => b -> NonEmpty a -> NonEmpty a Source #
Semigroup a => Semigroup (STM a) | Since: base-4.17.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods (<>) :: STM a -> STM a -> STM a Source # sconcat :: NonEmpty (STM a) -> STM a Source # stimes :: Integral b => b -> STM a -> STM a Source #
Semigroup a => Semigroup (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods (<>) :: Identity a -> Identity a -> Identity a Source # sconcat :: NonEmpty (Identity a) -> Identity a Source # stimes :: Integral b => b -> Identity a -> Identity a Source #
Semigroup a => Semigroup (Down a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods (<>) :: Down a -> Down a -> Down a Source # sconcat :: NonEmpty (Down a) -> Down a Source # stimes :: Integral b => b -> Down a -> Down a Source #
(Generic a, Semigroup (Rep a ())) => Semigroup (Generically a) | Since: base-4.17.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: Generically a -> Generically a -> Generically a Source # sconcat :: NonEmpty (Generically a) -> Generically a Source # stimes :: Integral b => b -> Generically a -> Generically a Source #
Semigroup p => Semigroup (Par1 p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: Par1 p -> Par1 p -> Par1 p Source # sconcat :: NonEmpty (Par1 p) -> Par1 p Source # stimes :: Integral b => b -> Par1 p -> Par1 p Source #
Semigroup a => Semigroup (IO a) | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: IO a -> IO a -> IO a Source # sconcat :: NonEmpty (IO a) -> IO a Source # stimes :: Integral b => b -> IO a -> IO a Source #
(Semigroup mono, GrowingAppend mono) => Semigroup (NonNull mono) |
Instance details Defined in Data.NonNull Methods (<>) :: NonNull mono -> NonNull mono -> NonNull mono Source # sconcat :: NonEmpty (NonNull mono) -> NonNull mono Source # stimes :: Integral b => b -> NonNull mono -> NonNull mono Source #
Semigroup (Array a) | Since: primitive-0.6.3.0
Instance details Defined in Data.Primitive.Array Methods (<>) :: Array a -> Array a -> Array a Source # sconcat :: NonEmpty (Array a) -> Array a Source # stimes :: Integral b => b -> Array a -> Array a Source #
Semigroup (PrimArray a) | Since: primitive-0.6.4.0
Instance details Defined in Data.Primitive.PrimArray Methods (<>) :: PrimArray a -> PrimArray a -> PrimArray a Source # sconcat :: NonEmpty (PrimArray a) -> PrimArray a Source # stimes :: Integral b => b -> PrimArray a -> PrimArray a Source #
Semigroup (SmallArray a) | Since: primitive-0.6.3.0
Instance details Defined in Data.Primitive.SmallArray Methods (<>) :: SmallArray a -> SmallArray a -> SmallArray a Source # sconcat :: NonEmpty (SmallArray a) -> SmallArray a Source # stimes :: Integral b => b -> SmallArray a -> SmallArray a Source #
Semigroup (Validity k) |
Instance details Defined in Data.HashMap.Internal.Debug Methods (<>) :: Validity k -> Validity k -> Validity k Source # sconcat :: NonEmpty (Validity k) -> Validity k Source # stimes :: Integral b => b -> Validity k -> Validity k Source #

(Hashable a, Eq a) => Semigroup (HashSet a)

`<>` = `union`

\(O(n+m)\)

To obtain good performance, the smaller set must be presented as the first argument.

#### Examples

Expand

    >>> fromList [1,2] <> fromList [2,3]
    fromList [1,2,3]

Instance details Defined in Data.HashSet.Internal Methods (<>) :: HashSet a -> HashSet a -> HashSet a Source # sconcat :: NonEmpty (HashSet a) -> HashSet a Source # stimes :: Integral b => b -> HashSet a -> HashSet a Source #
Semigroup (Vector a) |
Instance details Defined in Data.Vector Methods (<>) :: Vector a -> Vector a -> Vector a Source # sconcat :: NonEmpty (Vector a) -> Vector a Source # stimes :: Integral b => b -> Vector a -> Vector a Source #
Prim a => Semigroup (Vector a) |
Instance details Defined in Data.Vector.Primitive Methods (<>) :: Vector a -> Vector a -> Vector a Source # sconcat :: NonEmpty (Vector a) -> Vector a Source # stimes :: Integral b => b -> Vector a -> Vector a Source #
Storable a => Semigroup (Vector a) |
Instance details Defined in Data.Vector.Storable Methods (<>) :: Vector a -> Vector a -> Vector a Source # sconcat :: NonEmpty (Vector a) -> Vector a Source # stimes :: Integral b => b -> Vector a -> Vector a Source #
Semigroup (Vector a) |
Instance details Defined in Data.Vector.Strict Methods (<>) :: Vector a -> Vector a -> Vector a Source # sconcat :: NonEmpty (Vector a) -> Vector a Source # stimes :: Integral b => b -> Vector a -> Vector a Source #
Unbox a => Semigroup (Vector a) |
Instance details Defined in Data.Vector.Unboxed Methods (<>) :: Vector a -> Vector a -> Vector a Source # sconcat :: NonEmpty (Vector a) -> Vector a Source # stimes :: Integral b => b -> Vector a -> Vector a Source #
Semigroup a => Semigroup (Maybe a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: Maybe a -> Maybe a -> Maybe a Source # sconcat :: NonEmpty (Maybe a) -> Maybe a Source # stimes :: Integral b => b -> Maybe a -> Maybe a Source #
Semigroup a => Semigroup (Solo a) | Since: base-4.15
Instance details Defined in GHC.Internal.Base Methods (<>) :: Solo a -> Solo a -> Solo a Source # sconcat :: NonEmpty (Solo a) -> Solo a Source # stimes :: Integral b => b -> Solo a -> Solo a Source #
Semigroup [a] | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: [a] -> [a] -> [a] Source # sconcat :: NonEmpty [a] -> [a] Source # stimes :: Integral b => b -> [a] -> [a] Source #
Semigroup a => Semigroup (ConcurrentlyE e a) | Either the combination of the successful results, or the first failure.
Instance details Defined in Control.Concurrent.Async.Internal Methods (<>) :: ConcurrentlyE e a -> ConcurrentlyE e a -> ConcurrentlyE e a Source # sconcat :: NonEmpty (ConcurrentlyE e a) -> ConcurrentlyE e a Source # stimes :: Integral b => b -> ConcurrentlyE e a -> ConcurrentlyE e a Source #

Semigroup a => Semigroup (Op a b)

`(`<>`) @(Op a b)` without newtypes is `(`<>`) @(b->a)` = `liftA2 (`<>`)`. This lifts the `Semigroup` operation `(`<>`)` over the output of `a`.

    (<>) :: Op a b -> Op a b -> Op a b
    Op f <> Op g = Op a -> f a <> g a

Instance details Defined in Data.Functor.Contravariant Methods (<>) :: Op a b -> Op a b -> Op a b Source # sconcat :: NonEmpty (Op a b) -> Op a b Source # stimes :: Integral b0 => b0 -> Op a b -> Op a b Source #
Ord k => Semigroup (Map k v) |
Instance details Defined in Data.Map.Internal Methods (<>) :: Map k v -> Map k v -> Map k v Source # sconcat :: NonEmpty (Map k v) -> Map k v Source # stimes :: Integral b => b -> Map k v -> Map k v Source #
Semigroup (Either a b) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Either Methods (<>) :: Either a b -> Either a b -> Either a b Source # sconcat :: NonEmpty (Either a b) -> Either a b Source # stimes :: Integral b0 => b0 -> Either a b -> Either a b Source #
Semigroup (U1 p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: U1 p -> U1 p -> U1 p Source # sconcat :: NonEmpty (U1 p) -> U1 p Source # stimes :: Integral b => b -> U1 p -> U1 p Source #
Semigroup (V1 p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: V1 p -> V1 p -> V1 p Source # sconcat :: NonEmpty (V1 p) -> V1 p Source # stimes :: Integral b => b -> V1 p -> V1 p Source #
Semigroup a => Semigroup (ST s a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.ST Methods (<>) :: ST s a -> ST s a -> ST s a Source # sconcat :: NonEmpty (ST s a) -> ST s a Source # stimes :: Integral b => b -> ST s a -> ST s a Source #
Apply f => Semigroup (Act f a) |
Instance details Defined in Data.Key Methods (<>) :: Act f a -> Act f a -> Act f a Source # sconcat :: NonEmpty (Act f a) -> Act f a Source # stimes :: Integral b => b -> Act f a -> Act f a Source #
(MonadUnliftIO m, Semigroup a) => Semigroup (Conc m a) | Since: unliftio-0.2.9.0
Instance details Defined in UnliftIO.Internals.Async Methods (<>) :: Conc m a -> Conc m a -> Conc m a Source # sconcat :: NonEmpty (Conc m a) -> Conc m a Source # stimes :: Integral b => b -> Conc m a -> Conc m a Source #
(MonadUnliftIO m, Semigroup a) => Semigroup (Concurrently m a) | Only defined by `async` for `base >= 4.9`. Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Internals.Async Methods (<>) :: Concurrently m a -> Concurrently m a -> Concurrently m a Source # sconcat :: NonEmpty (Concurrently m a) -> Concurrently m a Source # stimes :: Integral b => b -> Concurrently m a -> Concurrently m a Source #

(Eq k, Hashable k) => Semigroup (HashMap k v)

`<>` = `union`

If a key occurs in both maps, the mapping from the first will be the mapping in the result.

#### Examples

Expand

    >>> fromList [(1,'a'),(2,'b')] <> fromList [(2,'c'),(3,'d')]
    fromList [(1,'a'),(2,'b'),(3,'d')]

Instance details Defined in Data.HashMap.Internal Methods (<>) :: HashMap k v -> HashMap k v -> HashMap k v Source # sconcat :: NonEmpty (HashMap k v) -> HashMap k v Source # stimes :: Integral b => b -> HashMap k v -> HashMap k v Source #
(Semigroup a, Semigroup b) => Semigroup (a, b) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: (a, b) -> (a, b) -> (a, b) Source # sconcat :: NonEmpty (a, b) -> (a, b) Source # stimes :: Integral b0 => b0 -> (a, b) -> (a, b) Source #
Semigroup b => Semigroup (a -> b) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: (a -> b) -> (a -> b) -> a -> b Source # sconcat :: NonEmpty (a -> b) -> a -> b Source # stimes :: Integral b0 => b0 -> (a -> b) -> a -> b Source #
(Biapplicative bi, Semigroup a, Semigroup b) => Semigroup (Biap bi a b) |
Instance details Defined in Data.Bifunctor.Biap Methods (<>) :: Biap bi a b -> Biap bi a b -> Biap bi a b Source # sconcat :: NonEmpty (Biap bi a b) -> Biap bi a b Source # stimes :: Integral b0 => b0 -> Biap bi a b -> Biap bi a b Source #
Semigroup (f p) => Semigroup (Rec1 f p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: Rec1 f p -> Rec1 f p -> Rec1 f p Source # sconcat :: NonEmpty (Rec1 f p) -> Rec1 f p Source # stimes :: Integral b => b -> Rec1 f p -> Rec1 f p Source #
Semigroup a => Semigroup (Tagged s a) |
Instance details Defined in Data.Tagged Methods (<>) :: Tagged s a -> Tagged s a -> Tagged s a Source # sconcat :: NonEmpty (Tagged s a) -> Tagged s a Source # stimes :: Integral b => b -> Tagged s a -> Tagged s a Source #
Semigroup a => Semigroup (Constant a b) |
Instance details Defined in Data.Functor.Constant Methods (<>) :: Constant a b -> Constant a b -> Constant a b Source # sconcat :: NonEmpty (Constant a b) -> Constant a b Source # stimes :: Integral b0 => b0 -> Constant a b -> Constant a b Source #
(Semigroup a, Semigroup b, Semigroup c) => Semigroup (a, b, c) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: (a, b, c) -> (a, b, c) -> (a, b, c) Source # sconcat :: NonEmpty (a, b, c) -> (a, b, c) Source # stimes :: Integral b0 => b0 -> (a, b, c) -> (a, b, c) Source #
(Semigroup (f a), Semigroup (g a)) => Semigroup (Product f g a) | Since: base-4.16.0.0
Instance details Defined in Data.Functor.Product Methods (<>) :: Product f g a -> Product f g a -> Product f g a Source # sconcat :: NonEmpty (Product f g a) -> Product f g a Source # stimes :: Integral b => b -> Product f g a -> Product f g a Source #
(Semigroup (f p), Semigroup (g p)) => Semigroup ((f :*: g) p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: (f :*: g) p -> (f :*: g) p -> (f :*: g) p Source # sconcat :: NonEmpty ((f :*: g) p) -> (f :*: g) p Source # stimes :: Integral b => b -> (f :*: g) p -> (f :*: g) p Source #
Semigroup c => Semigroup (K1 i c p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: K1 i c p -> K1 i c p -> K1 i c p Source # sconcat :: NonEmpty (K1 i c p) -> K1 i c p Source # stimes :: Integral b => b -> K1 i c p -> K1 i c p Source #
(Semigroup a, Semigroup b, Semigroup c, Semigroup d) => Semigroup (a, b, c, d) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: (a, b, c, d) -> (a, b, c, d) -> (a, b, c, d) Source # sconcat :: NonEmpty (a, b, c, d) -> (a, b, c, d) Source # stimes :: Integral b0 => b0 -> (a, b, c, d) -> (a, b, c, d) Source #
Semigroup (f (g a)) => Semigroup (Compose f g a) | Since: base-4.16.0.0
Instance details Defined in Data.Functor.Compose Methods (<>) :: Compose f g a -> Compose f g a -> Compose f g a Source # sconcat :: NonEmpty (Compose f g a) -> Compose f g a Source # stimes :: Integral b => b -> Compose f g a -> Compose f g a Source #
Semigroup (f (g p)) => Semigroup ((f :.: g) p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: (f :.: g) p -> (f :.: g) p -> (f :.: g) p Source # sconcat :: NonEmpty ((f :.: g) p) -> (f :.: g) p Source # stimes :: Integral b => b -> (f :.: g) p -> (f :.: g) p Source #
Semigroup (f p) => Semigroup (M1 i c f p) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics Methods (<>) :: M1 i c f p -> M1 i c f p -> M1 i c f p Source # sconcat :: NonEmpty (M1 i c f p) -> M1 i c f p Source # stimes :: Integral b => b -> M1 i c f p -> M1 i c f p Source #
(Semigroup a, Semigroup b, Semigroup c, Semigroup d, Semigroup e) => Semigroup (a, b, c, d, e) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods (<>) :: (a, b, c, d, e) -> (a, b, c, d, e) -> (a, b, c, d, e) Source # sconcat :: NonEmpty (a, b, c, d, e) -> (a, b, c, d, e) Source # stimes :: Integral b0 => b0 -> (a, b, c, d, e) -> (a, b, c, d, e) Source #

data WrappedMonoid m Source #

Provide a Semigroup for an arbitrary Monoid.

NOTE: This is not needed anymore since `Semigroup` became a superclass of `Monoid` in base-4.11 and this newtype be deprecated at some point in the future.

#### Instances

Instances details

NFData1 WrappedMonoid | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods liftRnf :: (a -> ()) -> WrappedMonoid a -> () Source #
Generic1 WrappedMonoid |

Instance details

Defined in Data.Semigroup

Associated Types

type Rep1 WrappedMonoid | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep1 WrappedMonoid = D1 ('MetaData "WrappedMonoid" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "WrapMonoid" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapMonoid") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))

Methods

from1 :: WrappedMonoid a -> Rep1 WrappedMonoid a Source #

to1 :: Rep1 WrappedMonoid a -> WrappedMonoid a Source #

Unbox a => Vector Vector (WrappedMonoid a) |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (WrappedMonoid a) -> ST s (Vector (WrappedMonoid a))

basicUnsafeThaw :: Vector (WrappedMonoid a) -> ST s (Mutable Vector s (WrappedMonoid a))

basicLength :: Vector (WrappedMonoid a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (WrappedMonoid a) -> Vector (WrappedMonoid a)

basicUnsafeIndexM :: Vector (WrappedMonoid a) -> Int -> Box (WrappedMonoid a)

basicUnsafeCopy :: Mutable Vector s (WrappedMonoid a) -> Vector (WrappedMonoid a) -> ST s ()

elemseq :: Vector (WrappedMonoid a) -> WrappedMonoid a -> b -> b

Unbox a => MVector MVector (WrappedMonoid a) |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (WrappedMonoid a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a)

basicOverlaps :: MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (WrappedMonoid a))

basicInitialize :: MVector s (WrappedMonoid a) -> ST s ()

basicUnsafeReplicate :: Int -> WrappedMonoid a -> ST s (MVector s (WrappedMonoid a))

basicUnsafeRead :: MVector s (WrappedMonoid a) -> Int -> ST s (WrappedMonoid a)

basicUnsafeWrite :: MVector s (WrappedMonoid a) -> Int -> WrappedMonoid a -> ST s ()

basicClear :: MVector s (WrappedMonoid a) -> ST s ()

basicSet :: MVector s (WrappedMonoid a) -> WrappedMonoid a -> ST s ()

basicUnsafeCopy :: MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a) -> ST s ()

basicUnsafeMove :: MVector s (WrappedMonoid a) -> MVector s (WrappedMonoid a) -> ST s ()

basicUnsafeGrow :: MVector s (WrappedMonoid a) -> Int -> ST s (MVector s (WrappedMonoid a))

NFData m => NFData (WrappedMonoid m) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: WrappedMonoid m -> () Source #
Monoid m => Monoid (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods mempty :: WrappedMonoid m Source # mappend :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Source # mconcat :: [WrappedMonoid m] -> WrappedMonoid m Source #
Monoid m => Semigroup (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (<>) :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Source # sconcat :: NonEmpty (WrappedMonoid m) -> WrappedMonoid m Source # stimes :: Integral b => b -> WrappedMonoid m -> WrappedMonoid m Source #
Data m => Data (WrappedMonoid m) | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> WrappedMonoid m -> c (WrappedMonoid m) Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c (WrappedMonoid m) Source #

toConstr :: WrappedMonoid m -> Constr Source #

dataTypeOf :: WrappedMonoid m -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c (WrappedMonoid m)) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c (WrappedMonoid m)) Source #

gmapT :: (forall b. Data b => b -> b) -> WrappedMonoid m -> WrappedMonoid m Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> WrappedMonoid m -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> WrappedMonoid m -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> WrappedMonoid m -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> WrappedMonoid m -> u Source #

gmapM :: Monad m0 => (forall d. Data d => d -> m0 d) -> WrappedMonoid m -> m0 (WrappedMonoid m) Source #

gmapMp :: MonadPlus m0 => (forall d. Data d => d -> m0 d) -> WrappedMonoid m -> m0 (WrappedMonoid m) Source #

gmapMo :: MonadPlus m0 => (forall d. Data d => d -> m0 d) -> WrappedMonoid m -> m0 (WrappedMonoid m) Source #

Bounded m => Bounded (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods minBound :: WrappedMonoid m Source # maxBound :: WrappedMonoid m Source #
Enum a => Enum (WrappedMonoid a) | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

succ :: WrappedMonoid a -> WrappedMonoid a Source #

pred :: WrappedMonoid a -> WrappedMonoid a Source #

toEnum :: Int -> WrappedMonoid a Source #

fromEnum :: WrappedMonoid a -> Int Source #

enumFrom :: WrappedMonoid a -> [WrappedMonoid a] Source #

enumFromThen :: WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] Source #

enumFromTo :: WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] Source #

enumFromThenTo :: WrappedMonoid a -> WrappedMonoid a -> WrappedMonoid a -> [WrappedMonoid a] Source #

Generic (WrappedMonoid m) |

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep (WrappedMonoid m) = D1 ('MetaData "WrappedMonoid" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "WrapMonoid" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapMonoid") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m)))

Methods

from :: WrappedMonoid m -> Rep (WrappedMonoid m) x Source #

to :: Rep (WrappedMonoid m) x -> WrappedMonoid m Source #

Read m => Read (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods readsPrec :: Int -> ReadS (WrappedMonoid m) Source # readList :: ReadS [WrappedMonoid m] Source # readPrec :: ReadPrec (WrappedMonoid m) Source # readListPrec :: ReadPrec [WrappedMonoid m] Source #
Show m => Show (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> WrappedMonoid m -> ShowS Source # show :: WrappedMonoid m -> String Source # showList :: [WrappedMonoid m] -> ShowS Source #
Eq m => Eq (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods (==) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source # (/=) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #
Ord m => Ord (WrappedMonoid m) | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

compare :: WrappedMonoid m -> WrappedMonoid m -> Ordering Source #

(<) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #

(<=) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #

(>) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #

(>=) :: WrappedMonoid m -> WrappedMonoid m -> Bool Source #

max :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Source #

min :: WrappedMonoid m -> WrappedMonoid m -> WrappedMonoid m Source #

Hashable a => Hashable (WrappedMonoid a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> WrappedMonoid a -> Int Source # hash :: WrappedMonoid a -> Int Source #
Unbox a => Unbox (WrappedMonoid a) |
Instance details Defined in Data.Vector.Unboxed.Base
type Rep1 WrappedMonoid | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep1 WrappedMonoid = D1 ('MetaData "WrappedMonoid" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "WrapMonoid" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapMonoid") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))
newtype MVector s (WrappedMonoid a) |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s (WrappedMonoid a) = MV_WrappedMonoid (MVector s a)
type Rep (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep (WrappedMonoid m) = D1 ('MetaData "WrappedMonoid" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "WrapMonoid" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapMonoid") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m)))
newtype Vector (WrappedMonoid a) |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector (WrappedMonoid a) = V_WrappedMonoid (Vector a)

## Functor

void :: Functor f => f a -> f () Source #

``void` value` discards or ignores the result of evaluation, such as the return value of an `IO` action.

#### Examples

Expand

Replace the contents of a ``Maybe` `Int`` with unit:

    >>> void Nothing
    Nothing

    >>> void (Just 3)
    Just ()

Replace the contents of an ``Either` `Int` `Int`` with unit, resulting in an ``Either` `Int` `()``:

    >>> void (Left 8675309)
    Left 8675309

    >>> void (Right 8675309)
    Right ()

Replace every element of a list with unit:

    >>> void [1,2,3]
    [(),(),()]

Replace the second element of a pair with unit:

    >>> void (1,2)
    (1,())

Discard the result of an `IO` action:

    >>> mapM print [1,2]
    1
    2
    [(),()]

    >>> void $ mapM print [1,2]
    1
    2

class Functor (f :: Type -> Type) where Source #

A type `f` is a Functor if it provides a function `fmap` which, given any types `a` and `b` lets you apply any function from `(a -> b)` to turn an `f a` into an `f b`, preserving the structure of `f`. Furthermore `f` needs to adhere to the following:

Identity
  ``fmap` `id` == `id``
Composition
  ``fmap` (f . g) == `fmap` f . `fmap` g`

Note, that the second law follows from the free theorem of the type `fmap` and the first law, so you need only check that the former condition holds. See these articles by School of Haskell or David Luposchainsky for an explanation.

Minimal complete definition

fmap

Methods

fmap :: (a -> b) -> f a -> f b Source #

`fmap` is used to apply a function of type `(a -> b)` to a value of type `f a`, where f is a functor, to produce a value of type `f b`. Note that for any type constructor with more than one parameter (e.g., `Either`), only the last type parameter can be modified with `fmap` (e.g., `b` in `Either a b`).

Some type constructors with two parameters or more have a ``Bifunctor`` instance that allows both the last and the penultimate parameters to be mapped over.

#### Examples

Expand

Convert from a ``Maybe` Int` to a `Maybe String` using `show`:

    >>> fmap show Nothing
    Nothing
    >>> fmap show (Just 3)
    Just "3"

Convert from an ``Either` Int Int` to an `Either Int String` using `show`:

    >>> fmap show (Left 17)
    Left 17
    >>> fmap show (Right 17)
    Right "17"

Double each element of a list:

    >>> fmap (*2) [1,2,3]
    [2,4,6]

Apply `even` to the second element of a pair:

    >>> fmap even (2,2)
    (2,True)

It may seem surprising that the function is only applied to the last element of the tuple compared to the list example above which applies it to every element in the list. To understand, remember that tuples are type constructors with multiple type parameters: a tuple of 3 elements `(a,b,c)` can also be written `(,,) a b c` and its `Functor` instance is defined for `Functor ((,,) a b)` (i.e., only the third parameter is free to be mapped over with `fmap`).

It explains why `fmap` can be used with tuples containing values of different types as in the following example:

    >>> fmap even ("hello", 1.0, 4)
    ("hello",1.0,True)

(<$) :: a -> f b -> f a infixl 4 Source #

Replace all locations in the input with the same value. The default definition is ``fmap` . `const``, but this may be overridden with a more efficient version.

#### Examples

Expand

Perform a computation with `Maybe` and replace the result with a constant value if it is `Just`:

    >>> 'a' <$ Just 2
    Just 'a'
    >>> 'a' <$ Nothing
    Nothing

#### Instances

Instances details

Functor Async |
Instance details Defined in Control.Concurrent.Async.Internal Methods fmap :: (a -> b) -> Async a -> Async b Source # (<$) :: a -> Async b -> Async a Source #
Functor Concurrently |
Instance details Defined in Control.Concurrent.Async.Internal Methods fmap :: (a -> b) -> Concurrently a -> Concurrently b Source # (<$) :: a -> Concurrently b -> Concurrently a Source #
Functor Complex | Since: base-4.9.0.0
Instance details Defined in Data.Complex Methods fmap :: (a -> b) -> Complex a -> Complex b Source # (<$) :: a -> Complex b -> Complex a Source #
Functor First | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a -> b) -> First a -> First b Source # (<$) :: a -> First b -> First a Source #
Functor Last | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a -> b) -> Last a -> Last b Source # (<$) :: a -> Last b -> Last a Source #
Functor Max | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a -> b) -> Max a -> Max b Source # (<$) :: a -> Max b -> Max a Source #
Functor Min | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a -> b) -> Min a -> Min b Source # (<$) :: a -> Min b -> Min a Source #
Functor ArgDescr | Since: base-4.7.0.0
Instance details Defined in System.Console.GetOpt Methods fmap :: (a -> b) -> ArgDescr a -> ArgDescr b Source # (<$) :: a -> ArgDescr b -> ArgDescr a Source #
Functor ArgOrder | Since: base-4.7.0.0
Instance details Defined in System.Console.GetOpt Methods fmap :: (a -> b) -> ArgOrder a -> ArgOrder b Source # (<$) :: a -> ArgOrder b -> ArgOrder a Source #
Functor OptDescr | Since: base-4.7.0.0
Instance details Defined in System.Console.GetOpt Methods fmap :: (a -> b) -> OptDescr a -> OptDescr b Source # (<$) :: a -> OptDescr b -> OptDescr a Source #
Functor Put |
Instance details Defined in Data.ByteString.Builder.Internal Methods fmap :: (a -> b) -> Put a -> Put b Source # (<$) :: a -> Put b -> Put a Source #
Functor SCC | Since: containers-0.5.4
Instance details Defined in Data.Graph Methods fmap :: (a -> b) -> SCC a -> SCC b Source # (<$) :: a -> SCC b -> SCC a Source #
Functor IntMap |
Instance details Defined in Data.IntMap.Internal Methods fmap :: (a -> b) -> IntMap a -> IntMap b Source # (<$) :: a -> IntMap b -> IntMap a Source #
Functor Digit |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Digit a -> Digit b Source # (<$) :: a -> Digit b -> Digit a Source #
Functor Elem |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Elem a -> Elem b Source # (<$) :: a -> Elem b -> Elem a Source #
Functor FingerTree |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> FingerTree a -> FingerTree b Source # (<$) :: a -> FingerTree b -> FingerTree a Source #
Functor Node |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Node a -> Node b Source # (<$) :: a -> Node b -> Node a Source #
Functor Seq |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> Seq a -> Seq b Source # (<$) :: a -> Seq b -> Seq a Source #
Functor ViewL |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> ViewL a -> ViewL b Source # (<$) :: a -> ViewL b -> ViewL a Source #
Functor ViewR |
Instance details Defined in Data.Sequence.Internal Methods fmap :: (a -> b) -> ViewR a -> ViewR b Source # (<$) :: a -> ViewR b -> ViewR a Source #
Functor Tree |
Instance details Defined in Data.Tree Methods fmap :: (a -> b) -> Tree a -> Tree b Source # (<$) :: a -> Tree b -> Tree a Source #
Functor DList |
Instance details Defined in Data.DList.Internal Methods fmap :: (a -> b) -> DList a -> DList b Source # (<$) :: a -> DList b -> DList a Source #
Functor NonEmpty | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> NonEmpty a -> NonEmpty b Source # (<$) :: a -> NonEmpty b -> NonEmpty a Source #
Functor STM | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods fmap :: (a -> b) -> STM a -> STM b Source # (<$) :: a -> STM b -> STM a Source #
Functor Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods fmap :: (a -> b) -> Identity a -> Identity b Source # (<$) :: a -> Identity b -> Identity a Source #
Functor Down | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods fmap :: (a -> b) -> Down a -> Down b Source # (<$) :: a -> Down b -> Down a Source #
Functor Par1 | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> Par1 a -> Par1 b Source # (<$) :: a -> Par1 b -> Par1 a Source #
Functor P | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods fmap :: (a -> b) -> P a -> P b Source # (<$) :: a -> P b -> P a Source #
Functor ReadP | Since: base-2.1
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods fmap :: (a -> b) -> ReadP a -> ReadP b Source # (<$) :: a -> ReadP b -> ReadP a Source #
Functor IO | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> IO a -> IO b Source # (<$) :: a -> IO b -> IO a Source #
Functor Array |
Instance details Defined in Data.Primitive.Array Methods fmap :: (a -> b) -> Array a -> Array b Source # (<$) :: a -> Array b -> Array a Source #
Functor SmallArray |
Instance details Defined in Data.Primitive.SmallArray Methods fmap :: (a -> b) -> SmallArray a -> SmallArray b Source # (<$) :: a -> SmallArray b -> SmallArray a Source #
Functor Flat |
Instance details Defined in UnliftIO.Internals.Async Methods fmap :: (a -> b) -> Flat a -> Flat b Source # (<$) :: a -> Flat b -> Flat a Source #
Functor FlatApp |
Instance details Defined in UnliftIO.Internals.Async Methods fmap :: (a -> b) -> FlatApp a -> FlatApp b Source # (<$) :: a -> FlatApp b -> FlatApp a Source #
Functor Memoized |
Instance details Defined in UnliftIO.Memoize Methods fmap :: (a -> b) -> Memoized a -> Memoized b Source # (<$) :: a -> Memoized b -> Memoized a Source #
Functor Vector |
Instance details Defined in Data.Vector Methods fmap :: (a -> b) -> Vector a -> Vector b Source # (<$) :: a -> Vector b -> Vector a Source #
Functor Id |
Instance details Defined in Data.Vector.Fusion.Util Methods fmap :: (a -> b) -> Id a -> Id b Source # (<$) :: a -> Id b -> Id a Source #
Functor Vector |
Instance details Defined in Data.Vector.Strict Methods fmap :: (a -> b) -> Vector a -> Vector b Source # (<$) :: a -> Vector b -> Vector a Source #
Functor Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> Maybe a -> Maybe b Source # (<$) :: a -> Maybe b -> Maybe a Source #
Functor Solo | Since: base-4.15
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> Solo a -> Solo b Source # (<$) :: a -> Solo b -> Solo a Source #
Functor [] | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> [a] -> [b] Source # (<$) :: a -> [b] -> [a] Source #
Functor f => Functor (Co f) |
Instance details Defined in Data.Functor.Rep Methods fmap :: (a -> b) -> Co f a -> Co f b Source # (<$) :: a -> Co f b -> Co f a Source #
Functor (ConcurrentlyE e) |
Instance details Defined in Control.Concurrent.Async.Internal Methods fmap :: (a -> b) -> ConcurrentlyE e a -> ConcurrentlyE e b Source # (<$) :: a -> ConcurrentlyE e b -> ConcurrentlyE e a Source #
Monad m => Functor (WrappedMonad m) | Since: base-2.1
Instance details Defined in Control.Applicative Methods fmap :: (a -> b) -> WrappedMonad m a -> WrappedMonad m b Source # (<$) :: a -> WrappedMonad m b -> WrappedMonad m a Source #
Functor (Arg a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods fmap :: (a0 -> b) -> Arg a a0 -> Arg a b Source # (<$) :: a0 -> Arg a b -> Arg a a0 Source #
Functor (SetM s) |
Instance details Defined in Data.Graph Methods fmap :: (a -> b) -> SetM s a -> SetM s b Source # (<$) :: a -> SetM s b -> SetM s a Source #
Functor (Map k) |
Instance details Defined in Data.Map.Internal Methods fmap :: (a -> b) -> Map k a -> Map k b Source # (<$) :: a -> Map k b -> Map k a Source #
Monad m => Functor (Handler m) |
Instance details Defined in Control.Monad.Catch Methods fmap :: (a -> b) -> Handler m a -> Handler m b Source # (<$) :: a -> Handler m b -> Handler m a Source #
Functor f => Functor (Cofree f) |
Instance details Defined in Control.Comonad.Cofree Methods fmap :: (a -> b) -> Cofree f a -> Cofree f b Source # (<$) :: a -> Cofree f b -> Cofree f a Source #
Functor f => Functor (Free f) |
Instance details Defined in Control.Monad.Free Methods fmap :: (a -> b) -> Free f a -> Free f b Source # (<$) :: a -> Free f b -> Free f a Source #
Arrow a => Functor (ArrowMonad a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods fmap :: (a0 -> b) -> ArrowMonad a a0 -> ArrowMonad a b Source # (<$) :: a0 -> ArrowMonad a b -> ArrowMonad a a0 Source #
Functor (Either a) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods fmap :: (a0 -> b) -> Either a a0 -> Either a b Source # (<$) :: a0 -> Either a b -> Either a a0 Source #
Functor (U1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> U1 a -> U1 b Source # (<$) :: a -> U1 b -> U1 a Source #
Functor (V1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> V1 a -> V1 b Source # (<$) :: a -> V1 b -> V1 a Source #
Functor (ST s) | Since: base-2.1
Instance details Defined in GHC.Internal.ST Methods fmap :: (a -> b) -> ST s a -> ST s b Source # (<$) :: a -> ST s b -> ST s a Source #
Functor f => Functor (Act f) |
Instance details Defined in Data.Key Methods fmap :: (a -> b) -> Act f a -> Act f b Source # (<$) :: a -> Act f b -> Act f a Source #
Functor (StateL s) |
Instance details Defined in Data.Key Methods fmap :: (a -> b) -> StateL s a -> StateL s b Source # (<$) :: a -> StateL s b -> StateL s a Source #
Functor (StateR s) |
Instance details Defined in Data.Key Methods fmap :: (a -> b) -> StateR s a -> StateR s b Source # (<$) :: a -> StateR s b -> StateR s a Source #
Functor f => Functor (WrappedPoly f) |
Instance details Defined in Data.MonoTraversable Methods fmap :: (a -> b) -> WrappedPoly f a -> WrappedPoly f b Source # (<$) :: a -> WrappedPoly f b -> WrappedPoly f a Source #
Functor (IParser t) |
Instance details Defined in Data.Text.Internal.Read Methods fmap :: (a -> b) -> IParser t a -> IParser t b Source # (<$) :: a -> IParser t b -> IParser t a Source #
Functor f => Functor (Lift f) |
Instance details Defined in Control.Applicative.Lift Methods fmap :: (a -> b) -> Lift f a -> Lift f b Source # (<$) :: a -> Lift f b -> Lift f a Source #
Functor m => Functor (MaybeT m) |
Instance details Defined in Control.Monad.Trans.Maybe Methods fmap :: (a -> b) -> MaybeT m a -> MaybeT m b Source # (<$) :: a -> MaybeT m b -> MaybeT m a Source #
Functor m => Functor (Conc m) |
Instance details Defined in UnliftIO.Internals.Async Methods fmap :: (a -> b) -> Conc m a -> Conc m b Source # (<$) :: a -> Conc m b -> Conc m a Source #
Monad m => Functor (Concurrently m) | Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Internals.Async Methods fmap :: (a -> b) -> Concurrently m a -> Concurrently m b Source # (<$) :: a -> Concurrently m b -> Concurrently m a Source #
Functor (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods fmap :: (a -> b) -> HashMap k a -> HashMap k b Source # (<$) :: a -> HashMap k b -> HashMap k a Source #
Functor ((,) a) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b) -> (a, a0) -> (a, b) Source # (<$) :: a0 -> (a, b) -> (a, a0) Source #
Arrow a => Functor (WrappedArrow a b) | Since: base-2.1
Instance details Defined in Control.Applicative Methods fmap :: (a0 -> b0) -> WrappedArrow a b a0 -> WrappedArrow a b b0 Source # (<$) :: a0 -> WrappedArrow a b b0 -> WrappedArrow a b a0 Source #
Functor (Mag a b) |
Instance details Defined in Data.Biapplicative Methods fmap :: (a0 -> b0) -> Mag a b a0 -> Mag a b b0 Source # (<$) :: a0 -> Mag a b b0 -> Mag a b a0 Source #
Functor (bi a) => Functor (Biap bi a) |
Instance details Defined in Data.Bifunctor.Biap Methods fmap :: (a0 -> b) -> Biap bi a a0 -> Biap bi a b Source # (<$) :: a0 -> Biap bi a b -> Biap bi a a0 Source #
Bifunctor p => Functor (Fix p) |
Instance details Defined in Data.Bifunctor.Fix Methods fmap :: (a -> b) -> Fix p a -> Fix p b Source # (<$) :: a -> Fix p b -> Fix p a Source #
Bifunctor p => Functor (Join p) |
Instance details Defined in Data.Bifunctor.Join Methods fmap :: (a -> b) -> Join p a -> Join p b Source # (<$) :: a -> Join p b -> Join p a Source #
(Applicative f, Monad f) => Functor (WhenMissing f x) | Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods fmap :: (a -> b) -> WhenMissing f x a -> WhenMissing f x b Source # (<$) :: a -> WhenMissing f x b -> WhenMissing f x a Source #
Functor f => Functor (FreeF f a) |
Instance details Defined in Control.Monad.Trans.Free Methods fmap :: (a0 -> b) -> FreeF f a a0 -> FreeF f a b Source # (<$) :: a0 -> FreeF f a b -> FreeF f a a0 Source #
(Functor f, Functor m) => Functor (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods fmap :: (a -> b) -> FreeT f m a -> FreeT f m b Source # (<$) :: a -> FreeT f m b -> FreeT f m a Source #
Functor m => Functor (Kleisli m a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods fmap :: (a0 -> b) -> Kleisli m a a0 -> Kleisli m a b Source # (<$) :: a0 -> Kleisli m a b -> Kleisli m a a0 Source #
(Generic1 f, Functor (Rep1 f)) => Functor (Generically1 f) | Since: base-4.17.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> Generically1 f a -> Generically1 f b Source # (<$) :: a -> Generically1 f b -> Generically1 f a Source #
Functor f => Functor (Rec1 f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> Rec1 f a -> Rec1 f b Source # (<$) :: a -> Rec1 f b -> Rec1 f a Source #
Functor (URec (Ptr ()) :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec (Ptr ()) a -> URec (Ptr ()) b Source # (<$) :: a -> URec (Ptr ()) b -> URec (Ptr ()) a Source #
Functor (URec Char :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Char a -> URec Char b Source # (<$) :: a -> URec Char b -> URec Char a Source #
Functor (URec Double :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Double a -> URec Double b Source # (<$) :: a -> URec Double b -> URec Double a Source #
Functor (URec Float :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Float a -> URec Float b Source # (<$) :: a -> URec Float b -> URec Float a Source #
Functor (URec Int :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Int a -> URec Int b Source # (<$) :: a -> URec Int b -> URec Int a Source #
Functor (URec Word :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> URec Word a -> URec Word b Source # (<$) :: a -> URec Word b -> URec Word a Source #
Functor (Day f g) |
Instance details Defined in Data.Functor.Day Methods fmap :: (a -> b) -> Day f g a -> Day f g b Source # (<$) :: a -> Day f g b -> Day f g a Source #
Functor (t m) => Functor (LiftingAccum t m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Accum Methods fmap :: (a -> b) -> LiftingAccum t m a -> LiftingAccum t m b Source # (<$) :: a -> LiftingAccum t m b -> LiftingAccum t m a Source #
Functor (t m) => Functor (LiftingSelect t m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Select Methods fmap :: (a -> b) -> LiftingSelect t m a -> LiftingSelect t m b Source # (<$) :: a -> LiftingSelect t m b -> LiftingSelect t m a Source #
Profunctor p => Functor (Coprep p) |
Instance details Defined in Data.Profunctor.Rep Methods fmap :: (a -> b) -> Coprep p a -> Coprep p b Source # (<$) :: a -> Coprep p b -> Coprep p a Source #
Profunctor p => Functor (Prep p) |
Instance details Defined in Data.Profunctor.Rep Methods fmap :: (a -> b) -> Prep p a -> Prep p b Source # (<$) :: a -> Prep p b -> Prep p a Source #
Functor (Tagged s) |
Instance details Defined in Data.Tagged Methods fmap :: (a -> b) -> Tagged s a -> Tagged s b Source # (<$) :: a -> Tagged s b -> Tagged s a Source #
Functor f => Functor (Backwards f) | Derived instance.
Instance details Defined in Control.Applicative.Backwards Methods fmap :: (a -> b) -> Backwards f a -> Backwards f b Source # (<$) :: a -> Backwards f b -> Backwards f a Source #
Functor m => Functor (AccumT w m) |
Instance details Defined in Control.Monad.Trans.Accum Methods fmap :: (a -> b) -> AccumT w m a -> AccumT w m b Source # (<$) :: a -> AccumT w m b -> AccumT w m a Source #
Functor m => Functor (ExceptT e m) |
Instance details Defined in Control.Monad.Trans.Except Methods fmap :: (a -> b) -> ExceptT e m a -> ExceptT e m b Source # (<$) :: a -> ExceptT e m b -> ExceptT e m a Source #
Functor m => Functor (IdentityT m) |
Instance details Defined in Control.Monad.Trans.Identity Methods fmap :: (a -> b) -> IdentityT m a -> IdentityT m b Source # (<$) :: a -> IdentityT m b -> IdentityT m a Source #
Functor m => Functor (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods fmap :: (a -> b) -> ReaderT r m a -> ReaderT r m b Source # (<$) :: a -> ReaderT r m b -> ReaderT r m a Source #
Functor m => Functor (SelectT r m) |
Instance details Defined in Control.Monad.Trans.Select Methods fmap :: (a -> b) -> SelectT r m a -> SelectT r m b Source # (<$) :: a -> SelectT r m b -> SelectT r m a Source #
Functor m => Functor (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Lazy Methods fmap :: (a -> b) -> StateT s m a -> StateT s m b Source # (<$) :: a -> StateT s m b -> StateT s m a Source #
Functor m => Functor (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Strict Methods fmap :: (a -> b) -> StateT s m a -> StateT s m b Source # (<$) :: a -> StateT s m b -> StateT s m a Source #
Functor m => Functor (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.CPS Methods fmap :: (a -> b) -> WriterT w m a -> WriterT w m b Source # (<$) :: a -> WriterT w m b -> WriterT w m a Source #
Functor m => Functor (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods fmap :: (a -> b) -> WriterT w m a -> WriterT w m b Source # (<$) :: a -> WriterT w m b -> WriterT w m a Source #
Functor m => Functor (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods fmap :: (a -> b) -> WriterT w m a -> WriterT w m b Source # (<$) :: a -> WriterT w m b -> WriterT w m a Source #
Functor (Constant a :: Type -> Type) |
Instance details Defined in Data.Functor.Constant Methods fmap :: (a0 -> b) -> Constant a a0 -> Constant a b Source # (<$) :: a0 -> Constant a b -> Constant a a0 Source #
Functor f => Functor (Reverse f) | Derived instance.
Instance details Defined in Data.Functor.Reverse Methods fmap :: (a -> b) -> Reverse f a -> Reverse f b Source # (<$) :: a -> Reverse f b -> Reverse f a Source #
Monad m => Functor (Bundle m v) |
Instance details Defined in Data.Vector.Fusion.Bundle.Monadic Methods fmap :: (a -> b) -> Bundle m v a -> Bundle m v b Source # (<$) :: a -> Bundle m v b -> Bundle m v a Source #
Functor ((,,) a b) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, a0) -> (a, b, b0) Source # (<$) :: a0 -> (a, b, b0) -> (a, b, a0) Source #
(Functor f, Functor g) => Functor (Product f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Product Methods fmap :: (a -> b) -> Product f g a -> Product f g b Source # (<$) :: a -> Product f g b -> Product f g a Source #
(Functor f, Functor g) => Functor (Sum f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Sum Methods fmap :: (a -> b) -> Sum f g a -> Sum f g b Source # (<$) :: a -> Sum f g b -> Sum f g a Source #
Functor f => Functor (WhenMatched f x y) | Since: containers-0.5.9
Instance details Defined in Data.IntMap.Internal Methods fmap :: (a -> b) -> WhenMatched f x y a -> WhenMatched f x y b Source # (<$) :: a -> WhenMatched f x y b -> WhenMatched f x y a Source #
(Applicative f, Monad f) => Functor (WhenMissing f k x) | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods fmap :: (a -> b) -> WhenMissing f k x a -> WhenMissing f k x b Source # (<$) :: a -> WhenMissing f k x b -> WhenMissing f k x a Source #
(Functor f, Functor g) => Functor (f :*: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> (f :*: g) a -> (f :*: g) b Source # (<$) :: a -> (f :*: g) b -> (f :*: g) a Source #
(Functor f, Functor g) => Functor (f :+: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> (f :+: g) a -> (f :+: g) b Source # (<$) :: a -> (f :+: g) b -> (f :+: g) a Source #
Functor (K1 i c :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> K1 i c a -> K1 i c b Source # (<$) :: a -> K1 i c b -> K1 i c a Source #
Functor (ContT r m) |
Instance details Defined in Control.Monad.Trans.Cont Methods fmap :: (a -> b) -> ContT r m a -> ContT r m b Source # (<$) :: a -> ContT r m b -> ContT r m a Source #
Functor ((,,,) a b c) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, c, a0) -> (a, b, c, b0) Source # (<$) :: a0 -> (a, b, c, b0) -> (a, b, c, a0) Source #
Functor ((->) r) | Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods fmap :: (a -> b) -> (r -> a) -> r -> b Source # (<$) :: a -> (r -> b) -> r -> a Source #
(Functor f, Functor g) => Functor (Compose f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Compose Methods fmap :: (a -> b) -> Compose f g a -> Compose f g b Source # (<$) :: a -> Compose f g b -> Compose f g a Source #
Functor (Clown f a :: Type -> Type) |
Instance details Defined in Data.Bifunctor.Clown Methods fmap :: (a0 -> b) -> Clown f a a0 -> Clown f a b Source # (<$) :: a0 -> Clown f a b -> Clown f a a0 Source #
Bifunctor p => Functor (Flip p a) |
Instance details Defined in Data.Bifunctor.Flip Methods fmap :: (a0 -> b) -> Flip p a a0 -> Flip p a b Source # (<$) :: a0 -> Flip p a b -> Flip p a a0 Source #
Functor g => Functor (Joker g a) |
Instance details Defined in Data.Bifunctor.Joker Methods fmap :: (a0 -> b) -> Joker g a a0 -> Joker g a b Source # (<$) :: a0 -> Joker g a b -> Joker g a a0 Source #
Bifunctor p => Functor (WrappedBifunctor p a) |
Instance details Defined in Data.Bifunctor.Wrapped Methods fmap :: (a0 -> b) -> WrappedBifunctor p a a0 -> WrappedBifunctor p a b Source # (<$) :: a0 -> WrappedBifunctor p a b -> WrappedBifunctor p a a0 Source #
Functor f => Functor (WhenMatched f k x y) | Since: containers-0.5.9
Instance details Defined in Data.Map.Internal Methods fmap :: (a -> b) -> WhenMatched f k x y a -> WhenMatched f k x y b Source # (<$) :: a -> WhenMatched f k x y b -> WhenMatched f k x y a Source #
(Functor f, Functor g) => Functor (f :.: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> (f :.: g) a -> (f :.: g) b Source # (<$) :: a -> (f :.: g) b -> (f :.: g) a Source #
Functor f => Functor (M1 i c f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods fmap :: (a -> b) -> M1 i c f a -> M1 i c f b Source # (<$) :: a -> M1 i c f b -> M1 i c f a Source #
Functor m => Functor (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.CPS Methods fmap :: (a -> b) -> RWST r w s m a -> RWST r w s m b Source # (<$) :: a -> RWST r w s m b -> RWST r w s m a Source #
Functor m => Functor (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Lazy Methods fmap :: (a -> b) -> RWST r w s m a -> RWST r w s m b Source # (<$) :: a -> RWST r w s m b -> RWST r w s m a Source #
Functor m => Functor (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Strict Methods fmap :: (a -> b) -> RWST r w s m a -> RWST r w s m b Source # (<$) :: a -> RWST r w s m b -> RWST r w s m a Source #
Functor ((,,,,) a b c d) | Since: base-4.18.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, c, d, a0) -> (a, b, c, d, b0) Source # (<$) :: a0 -> (a, b, c, d, b0) -> (a, b, c, d, a0) Source #
(Functor (f a), Functor (g a)) => Functor (Product f g a) |
Instance details Defined in Data.Bifunctor.Product Methods fmap :: (a0 -> b) -> Product f g a a0 -> Product f g a b Source # (<$) :: a0 -> Product f g a b -> Product f g a a0 Source #
(Functor (f a), Functor (g a)) => Functor (Sum f g a) |
Instance details Defined in Data.Bifunctor.Sum Methods fmap :: (a0 -> b) -> Sum f g a a0 -> Sum f g a b Source # (<$) :: a0 -> Sum f g a b -> Sum f g a a0 Source #
Functor ((,,,,,) a b c d e) | Since: base-4.18.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, c, d, e, a0) -> (a, b, c, d, e, b0) Source # (<$) :: a0 -> (a, b, c, d, e, b0) -> (a, b, c, d, e, a0) Source #
(Functor f, Bifunctor p) => Functor (Tannen f p a) |
Instance details Defined in Data.Bifunctor.Tannen Methods fmap :: (a0 -> b) -> Tannen f p a a0 -> Tannen f p a b Source # (<$) :: a0 -> Tannen f p a b -> Tannen f p a a0 Source #
Profunctor p => Functor (Procompose p q a) |
Instance details Defined in Data.Profunctor.Composition Methods fmap :: (a0 -> b) -> Procompose p q a a0 -> Procompose p q a b Source # (<$) :: a0 -> Procompose p q a b -> Procompose p q a a0 Source #
Profunctor p => Functor (Rift p q a) |
Instance details Defined in Data.Profunctor.Composition Methods fmap :: (a0 -> b) -> Rift p q a a0 -> Rift p q a b Source # (<$) :: a0 -> Rift p q a b -> Rift p q a a0 Source #
Functor ((,,,,,,) a b c d e f) | Since: base-4.18.0.0
Instance details Defined in GHC.Internal.Base Methods fmap :: (a0 -> b0) -> (a, b, c, d, e, f, a0) -> (a, b, c, d, e, f, b0) Source # (<$) :: a0 -> (a, b, c, d, e, f, b0) -> (a, b, c, d, e, f, a0) Source #
(Bifunctor p, Functor g) => Functor (Biff p f g a) |
Instance details Defined in Data.Bifunctor.Biff Methods fmap :: (a0 -> b) -> Biff p f g a a0 -> Biff p f g a b Source # (<$) :: a0 -> Biff p f g a b -> Biff p f g a a0 Source #

(<$>) :: Functor f => (a -> b) -> f a -> f b infixl 4 Source #

An infix synonym for `fmap`.

The name of this operator is an allusion to `$`. Note the similarities between their types:

     ($)  ::              (a -> b) ->   a ->   b
    (<$>) :: Functor f => (a -> b) -> f a -> f b

Whereas `$` is function application, `<$>` is function application lifted over a `Functor`.

#### Examples

Expand

Convert from a ``Maybe` `Int`` to a ``Maybe` `String`` using `show`:

    >>> show <$> Nothing
    Nothing

    >>> show <$> Just 3
    Just "3"

Convert from an ``Either` `Int` `Int`` to an ``Either` `Int`` `String` using `show`:

    >>> show <$> Left 17
    Left 17

    >>> show <$> Right 17
    Right "17"

Double each element of a list:

    >>> (*2) <$> [1,2,3]
    [2,4,6]

Apply `even` to the second element of a pair:

    >>> even <$> (2,2)
    (2,True)

(<&>) :: Functor f => f a -> (a -> b) -> f b infixl 1 Source #

Flipped version of `<$>`.

    (<&>) = flip fmap

#### Examples

Expand

Apply `(+1)` to a list, a `Just` and a `Right`:

    >>> Just 2 <&> (+1)
    Just 3

    >>> [1,2,3] <&> (+1)
    [2,3,4]

    >>> Right 3 <&> (+1)
    Right 4

Since: base-4.11.0.0

($>) :: Functor f => f a -> b -> f b infixl 4 Source #

Flipped version of `<$`.

#### Examples

Expand

Replace the contents of a ``Maybe` `Int`` with a constant `String`:

    >>> Nothing $> "foo"
    Nothing

    >>> Just 90210 $> "foo"
    Just "foo"

Replace the contents of an ``Either` `Int` `Int`` with a constant `String`, resulting in an ``Either` `Int` `String``:

    >>> Left 8675309 $> "foo"
    Left 8675309

    >>> Right 8675309 $> "foo"
    Right "foo"

Replace each element of a list with a constant `String`:

    >>> [1,2,3] $> "foo"
    ["foo","foo","foo"]

Replace the second element of a pair with a constant `String`:

    >>> (1,2) $> "foo"
    (1,"foo")

Since: base-4.7.0.0

## Applicative

class Applicative f => Alternative (f :: Type -> Type) where Source #

A monoid on applicative functors.

If defined, `some` and `many` should be the least solutions of the equations:

-     some v = (:) <$> v <*> many v

-     many v = some v <|> pure []

#### Examples

Expand

    >>> Nothing <|> Just 42
    Just 42

    >>> [1, 2] <|> [3, 4]
    [1,2,3,4]

    >>> empty <|> print (2^15)
    32768

Minimal complete definition

empty, (<|>)

Methods

empty :: f a Source #

The identity of `<|>`

    empty <|> a     == a
    a     <|> empty == a

(<|>) :: f a -> f a -> f a infixl 3 Source #

An associative binary operation

some :: f a -> f [a] Source #

One or more.

#### Examples

Expand

    >>> some (putStr "la")
    lalalalalalalalala... * goes on forever *

    >>> some Nothing
    nothing

    >>> take 5 <$> some (Just 1)
    * hangs forever *

Note that this function can be used with Parsers based on Applicatives. In that case `some parser` will attempt to parse `parser` one or more times until it fails.

many :: f a -> f [a] Source #

Zero or more.

#### Examples

Expand

    >>> many (putStr "la")
    lalalalalalalalala... * goes on forever *

    >>> many Nothing
    Just []

    >>> take 5 <$> many (Just 1)
    * hangs forever *

Note that this function can be used with Parsers based on Applicatives. In that case `many parser` will attempt to parse `parser` zero or more times until it fails.

#### Instances

Instances details

Alternative Concurrently | `empty` waits forever. `<|>` returns the first to finish and `cancel`s the other.
Instance details Defined in Control.Concurrent.Async.Internal Methods empty :: Concurrently a Source # (<|>) :: Concurrently a -> Concurrently a -> Concurrently a Source # some :: Concurrently a -> Concurrently [a] Source # many :: Concurrently a -> Concurrently [a] Source #
Alternative Seq | Since: containers-0.5.4
Instance details Defined in Data.Sequence.Internal Methods empty :: Seq a Source # (<|>) :: Seq a -> Seq a -> Seq a Source # some :: Seq a -> Seq [a] Source # many :: Seq a -> Seq [a] Source #
Alternative DList |
Instance details Defined in Data.DList.Internal Methods empty :: DList a Source # (<|>) :: DList a -> DList a -> DList a Source # some :: DList a -> DList [a] Source # many :: DList a -> DList [a] Source #
Alternative STM | Takes the first non-`retry`ing `STM` action. Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods empty :: STM a Source # (<|>) :: STM a -> STM a -> STM a Source # some :: STM a -> STM [a] Source # many :: STM a -> STM [a] Source #
Alternative P | Since: base-4.5.0.0
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods empty :: P a Source # (<|>) :: P a -> P a -> P a Source # some :: P a -> P [a] Source # many :: P a -> P [a] Source #
Alternative ReadP | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods empty :: ReadP a Source # (<|>) :: ReadP a -> ReadP a -> ReadP a Source # some :: ReadP a -> ReadP [a] Source # many :: ReadP a -> ReadP [a] Source #
Alternative IO | Takes the first non-throwing `IO` action's result. `empty` throws an exception. Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods empty :: IO a Source # (<|>) :: IO a -> IO a -> IO a Source # some :: IO a -> IO [a] Source # many :: IO a -> IO [a] Source #
Alternative Array |
Instance details Defined in Data.Primitive.Array Methods empty :: Array a Source # (<|>) :: Array a -> Array a -> Array a Source # some :: Array a -> Array [a] Source # many :: Array a -> Array [a] Source #
Alternative SmallArray |
Instance details Defined in Data.Primitive.SmallArray Methods empty :: SmallArray a Source # (<|>) :: SmallArray a -> SmallArray a -> SmallArray a Source # some :: SmallArray a -> SmallArray [a] Source # many :: SmallArray a -> SmallArray [a] Source #
Alternative Vector |
Instance details Defined in Data.Vector Methods empty :: Vector a Source # (<|>) :: Vector a -> Vector a -> Vector a Source # some :: Vector a -> Vector [a] Source # many :: Vector a -> Vector [a] Source #
Alternative Vector |
Instance details Defined in Data.Vector.Strict Methods empty :: Vector a Source # (<|>) :: Vector a -> Vector a -> Vector a Source # some :: Vector a -> Vector [a] Source # many :: Vector a -> Vector [a] Source #
Alternative Maybe | Picks the leftmost `Just` value, or, alternatively, `Nothing`. Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods empty :: Maybe a Source # (<|>) :: Maybe a -> Maybe a -> Maybe a Source # some :: Maybe a -> Maybe [a] Source # many :: Maybe a -> Maybe [a] Source #
Alternative [] | Combines lists by concatenation, starting from the empty list. Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods empty :: [a] Source # (<|>) :: [a] -> [a] -> [a] Source # some :: [a] -> [[a]] Source # many :: [a] -> [[a]] Source #
MonadPlus m => Alternative (WrappedMonad m) | Since: base-2.1
Instance details Defined in Control.Applicative Methods empty :: WrappedMonad m a Source # (<|>) :: WrappedMonad m a -> WrappedMonad m a -> WrappedMonad m a Source # some :: WrappedMonad m a -> WrappedMonad m [a] Source # many :: WrappedMonad m a -> WrappedMonad m [a] Source #
Alternative v => Alternative (Free v) |
Instance details Defined in Control.Monad.Free Methods empty :: Free v a Source # (<|>) :: Free v a -> Free v a -> Free v a Source # some :: Free v a -> Free v [a] Source # many :: Free v a -> Free v [a] Source #
ArrowPlus a => Alternative (ArrowMonad a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods empty :: ArrowMonad a a0 Source # (<|>) :: ArrowMonad a a0 -> ArrowMonad a a0 -> ArrowMonad a a0 Source # some :: ArrowMonad a a0 -> ArrowMonad a [a0] Source # many :: ArrowMonad a a0 -> ArrowMonad a [a0] Source #
Alternative (U1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods empty :: U1 a Source # (<|>) :: U1 a -> U1 a -> U1 a Source # some :: U1 a -> U1 [a] Source # many :: U1 a -> U1 [a] Source #
Alternative f => Alternative (Lift f) | A combination is `Pure` only either part is.
Instance details Defined in Control.Applicative.Lift Methods empty :: Lift f a Source # (<|>) :: Lift f a -> Lift f a -> Lift f a Source # some :: Lift f a -> Lift f [a] Source # many :: Lift f a -> Lift f [a] Source #
(Functor m, Monad m) => Alternative (MaybeT m) |
Instance details Defined in Control.Monad.Trans.Maybe Methods empty :: MaybeT m a Source # (<|>) :: MaybeT m a -> MaybeT m a -> MaybeT m a Source # some :: MaybeT m a -> MaybeT m [a] Source # many :: MaybeT m a -> MaybeT m [a] Source #
MonadUnliftIO m => Alternative (Conc m) | Since: unliftio-0.2.9.0
Instance details Defined in UnliftIO.Internals.Async Methods empty :: Conc m a Source # (<|>) :: Conc m a -> Conc m a -> Conc m a Source # some :: Conc m a -> Conc m [a] Source # many :: Conc m a -> Conc m [a] Source #
MonadUnliftIO m => Alternative (Concurrently m) | Composing two unlifted `Concurrently` values using `Alternative` is the equivalent to using a `race` combinator, the asynchrounous sub-routine that returns a value first is the one that gets it's value returned, the slowest sub-routine gets cancelled and it's thread is killed. Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Internals.Async Methods empty :: Concurrently m a Source # (<|>) :: Concurrently m a -> Concurrently m a -> Concurrently m a Source # some :: Concurrently m a -> Concurrently m [a] Source # many :: Concurrently m a -> Concurrently m [a] Source #
(ArrowZero a, ArrowPlus a) => Alternative (WrappedArrow a b) | Since: base-2.1
Instance details Defined in Control.Applicative Methods empty :: WrappedArrow a b a0 Source # (<|>) :: WrappedArrow a b a0 -> WrappedArrow a b a0 -> WrappedArrow a b a0 Source # some :: WrappedArrow a b a0 -> WrappedArrow a b [a0] Source # many :: WrappedArrow a b a0 -> WrappedArrow a b [a0] Source #
Alternative (bi a) => Alternative (Biap bi a) |
Instance details Defined in Data.Bifunctor.Biap Methods empty :: Biap bi a a0 Source # (<|>) :: Biap bi a a0 -> Biap bi a a0 -> Biap bi a a0 Source # some :: Biap bi a a0 -> Biap bi a [a0] Source # many :: Biap bi a a0 -> Biap bi a [a0] Source #
(Functor f, MonadPlus m) => Alternative (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods empty :: FreeT f m a Source # (<|>) :: FreeT f m a -> FreeT f m a -> FreeT f m a Source # some :: FreeT f m a -> FreeT f m [a] Source # many :: FreeT f m a -> FreeT f m [a] Source #
Alternative m => Alternative (Kleisli m a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods empty :: Kleisli m a a0 Source # (<|>) :: Kleisli m a a0 -> Kleisli m a a0 -> Kleisli m a a0 Source # some :: Kleisli m a a0 -> Kleisli m a [a0] Source # many :: Kleisli m a a0 -> Kleisli m a [a0] Source #
(Generic1 f, Alternative (Rep1 f)) => Alternative (Generically1 f) | Since: base-4.17.0.0
Instance details Defined in GHC.Internal.Generics Methods empty :: Generically1 f a Source # (<|>) :: Generically1 f a -> Generically1 f a -> Generically1 f a Source # some :: Generically1 f a -> Generically1 f [a] Source # many :: Generically1 f a -> Generically1 f [a] Source #
Alternative f => Alternative (Rec1 f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods empty :: Rec1 f a Source # (<|>) :: Rec1 f a -> Rec1 f a -> Rec1 f a Source # some :: Rec1 f a -> Rec1 f [a] Source # many :: Rec1 f a -> Rec1 f [a] Source #
Alternative f => Alternative (Backwards f) | Try alternatives in the same order as `f`.
Instance details Defined in Control.Applicative.Backwards Methods empty :: Backwards f a Source # (<|>) :: Backwards f a -> Backwards f a -> Backwards f a Source # some :: Backwards f a -> Backwards f [a] Source # many :: Backwards f a -> Backwards f [a] Source #
(Monoid w, Functor m, MonadPlus m) => Alternative (AccumT w m) |
Instance details Defined in Control.Monad.Trans.Accum Methods empty :: AccumT w m a Source # (<|>) :: AccumT w m a -> AccumT w m a -> AccumT w m a Source # some :: AccumT w m a -> AccumT w m [a] Source # many :: AccumT w m a -> AccumT w m [a] Source #
(Functor m, Monad m, Monoid e) => Alternative (ExceptT e m) |
Instance details Defined in Control.Monad.Trans.Except Methods empty :: ExceptT e m a Source # (<|>) :: ExceptT e m a -> ExceptT e m a -> ExceptT e m a Source # some :: ExceptT e m a -> ExceptT e m [a] Source # many :: ExceptT e m a -> ExceptT e m [a] Source #
Alternative m => Alternative (IdentityT m) |
Instance details Defined in Control.Monad.Trans.Identity Methods empty :: IdentityT m a Source # (<|>) :: IdentityT m a -> IdentityT m a -> IdentityT m a Source # some :: IdentityT m a -> IdentityT m [a] Source # many :: IdentityT m a -> IdentityT m [a] Source #
Alternative m => Alternative (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods empty :: ReaderT r m a Source # (<|>) :: ReaderT r m a -> ReaderT r m a -> ReaderT r m a Source # some :: ReaderT r m a -> ReaderT r m [a] Source # many :: ReaderT r m a -> ReaderT r m [a] Source #
(Functor m, MonadPlus m) => Alternative (SelectT r m) |
Instance details Defined in Control.Monad.Trans.Select Methods empty :: SelectT r m a Source # (<|>) :: SelectT r m a -> SelectT r m a -> SelectT r m a Source # some :: SelectT r m a -> SelectT r m [a] Source # many :: SelectT r m a -> SelectT r m [a] Source #
(Functor m, MonadPlus m) => Alternative (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Lazy Methods empty :: StateT s m a Source # (<|>) :: StateT s m a -> StateT s m a -> StateT s m a Source # some :: StateT s m a -> StateT s m [a] Source # many :: StateT s m a -> StateT s m [a] Source #
(Functor m, MonadPlus m) => Alternative (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Strict Methods empty :: StateT s m a Source # (<|>) :: StateT s m a -> StateT s m a -> StateT s m a Source # some :: StateT s m a -> StateT s m [a] Source # many :: StateT s m a -> StateT s m [a] Source #
(Functor m, MonadPlus m) => Alternative (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.CPS Methods empty :: WriterT w m a Source # (<|>) :: WriterT w m a -> WriterT w m a -> WriterT w m a Source # some :: WriterT w m a -> WriterT w m [a] Source # many :: WriterT w m a -> WriterT w m [a] Source #
(Monoid w, Alternative m) => Alternative (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods empty :: WriterT w m a Source # (<|>) :: WriterT w m a -> WriterT w m a -> WriterT w m a Source # some :: WriterT w m a -> WriterT w m [a] Source # many :: WriterT w m a -> WriterT w m [a] Source #
(Monoid w, Alternative m) => Alternative (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods empty :: WriterT w m a Source # (<|>) :: WriterT w m a -> WriterT w m a -> WriterT w m a Source # some :: WriterT w m a -> WriterT w m [a] Source # many :: WriterT w m a -> WriterT w m [a] Source #
Alternative f => Alternative (Reverse f) | Derived instance.
Instance details Defined in Data.Functor.Reverse Methods empty :: Reverse f a Source # (<|>) :: Reverse f a -> Reverse f a -> Reverse f a Source # some :: Reverse f a -> Reverse f [a] Source # many :: Reverse f a -> Reverse f [a] Source #
(Alternative f, Alternative g) => Alternative (Product f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Product Methods empty :: Product f g a Source # (<|>) :: Product f g a -> Product f g a -> Product f g a Source # some :: Product f g a -> Product f g [a] Source # many :: Product f g a -> Product f g [a] Source #
(Alternative f, Alternative g) => Alternative (f :*: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods empty :: (f :*: g) a Source # (<|>) :: (f :*: g) a -> (f :*: g) a -> (f :*: g) a Source # some :: (f :*: g) a -> (f :*: g) [a] Source # many :: (f :*: g) a -> (f :*: g) [a] Source #
(Alternative f, Applicative g) => Alternative (Compose f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Compose Methods empty :: Compose f g a Source # (<|>) :: Compose f g a -> Compose f g a -> Compose f g a Source # some :: Compose f g a -> Compose f g [a] Source # many :: Compose f g a -> Compose f g [a] Source #
(Alternative f, Applicative g) => Alternative (f :.: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods empty :: (f :.: g) a Source # (<|>) :: (f :.: g) a -> (f :.: g) a -> (f :.: g) a Source # some :: (f :.: g) a -> (f :.: g) [a] Source # many :: (f :.: g) a -> (f :.: g) [a] Source #
Alternative f => Alternative (M1 i c f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods empty :: M1 i c f a Source # (<|>) :: M1 i c f a -> M1 i c f a -> M1 i c f a Source # some :: M1 i c f a -> M1 i c f [a] Source # many :: M1 i c f a -> M1 i c f [a] Source #
(Functor m, MonadPlus m) => Alternative (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.CPS Methods empty :: RWST r w s m a Source # (<|>) :: RWST r w s m a -> RWST r w s m a -> RWST r w s m a Source # some :: RWST r w s m a -> RWST r w s m [a] Source # many :: RWST r w s m a -> RWST r w s m [a] Source #
(Monoid w, Functor m, MonadPlus m) => Alternative (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Lazy Methods empty :: RWST r w s m a Source # (<|>) :: RWST r w s m a -> RWST r w s m a -> RWST r w s m a Source # some :: RWST r w s m a -> RWST r w s m [a] Source # many :: RWST r w s m a -> RWST r w s m [a] Source #
(Monoid w, Functor m, MonadPlus m) => Alternative (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Strict Methods empty :: RWST r w s m a Source # (<|>) :: RWST r w s m a -> RWST r w s m a -> RWST r w s m a Source # some :: RWST r w s m a -> RWST r w s m [a] Source # many :: RWST r w s m a -> RWST r w s m [a] Source #

liftA2 :: Applicative f => (a -> b -> c) -> f a -> f b -> f c Source #

Lift a binary function to actions.

Some functors support an implementation of `liftA2` that is more efficient than the default one. In particular, if `fmap` is an expensive operation, it is likely better to use `liftA2` than to `fmap` over the structure and then use `<*>`.

This became a typeclass method in 4.10.0.0. Prior to that, it was a function defined in terms of `<*>` and `fmap`.

#### Example

Expand

    >>> liftA2 (,) (Just 3) (Just 5)
    Just (3,5)

    >>> liftA2 (+) [1, 2, 3] [4, 5, 6]
    [5,6,7,6,7,8,7,8,9]

(<**>) :: Applicative f => f a -> f (a -> b) -> f b infixl 4 Source #

A variant of `<*>` with the types of the arguments reversed. It differs from ``flip` `(<*>)`` in that the effects are resolved in the order the arguments are presented.

#### Examples

Expand

    >>> (<**>) (print 1) (id <$ print 2)
    1
    2

    >>> flip (<*>) (print 1) (id <$ print 2)
    2
    1

    >>> ZipList [4, 5, 6] <**> ZipList [(+1), (*2), (/3)]
    ZipList {getZipList = [5.0,10.0,2.0]}

liftA :: Applicative f => (a -> b) -> f a -> f b Source #

Lift a function to actions. Equivalent to Functor's `fmap` but implemented using only `Applicative`'s methods: ``liftA` f a = `pure` f `<*>` a`

As such this function may be used to implement a `Functor` instance from an `Applicative` one.

#### Examples

Expand

Using the Applicative instance for Lists:

    >>> liftA (+1) [1, 2]
    [2,3]

Or the Applicative instance for `Maybe`

    >>> liftA (+1) (Just 3)
    Just 4

liftA3 :: Applicative f => (a -> b -> c -> d) -> f a -> f b -> f c -> f d Source #

Lift a ternary function to actions.

optional :: Alternative f => f a -> f (Maybe a) Source #

One or none.

It is useful for modelling any computation that is allowed to fail.

#### Examples

Expand

Using the `Alternative` instance of Control.Monad.Except, the following functions:

    >>> import Control.Monad.Except

    >>> canFail = throwError "it failed" :: Except String Int
    >>> final = return 42                :: Except String Int

Can be combined by allowing the first function to fail:

    >>> runExcept $ canFail *> final
    Left "it failed"

    >>> runExcept $ optional canFail *> final
    Right 42

(<&&>) :: Applicative a => a Bool -> a Bool -> a Bool infixr 3 Source #

`&&` lifted to an Applicative.

Since: 0.12.8

(<||>) :: Applicative a => a Bool -> a Bool -> a Bool infixr 2 Source #

`||` lifted to an Applicative.

Since: 0.12.8

## Monad

void :: Functor f => f a -> f () Source #

``void` value` discards or ignores the result of evaluation, such as the return value of an `IO` action.

#### Examples

Expand

Replace the contents of a ``Maybe` `Int`` with unit:

    >>> void Nothing
    Nothing

    >>> void (Just 3)
    Just ()

Replace the contents of an ``Either` `Int` `Int`` with unit, resulting in an ``Either` `Int` `()``:

    >>> void (Left 8675309)
    Left 8675309

    >>> void (Right 8675309)
    Right ()

Replace every element of a list with unit:

    >>> void [1,2,3]
    [(),(),()]

Replace the second element of a pair with unit:

    >>> void (1,2)
    (1,())

Discard the result of an `IO` action:

    >>> mapM print [1,2]
    1
    2
    [(),()]

    >>> void $ mapM print [1,2]
    1
    2

guard :: Alternative f => Bool -> f () Source #

Conditional failure of `Alternative` computations. Defined by

    guard True  = pure ()
    guard False = empty

#### Examples

Expand

Common uses of `guard` include conditionally signalling an error in an error monad and conditionally rejecting the current choice in an `Alternative`-based parser.

As an example of signalling an error in the error monad `Maybe`, consider a safe division function `safeDiv x y` that returns `Nothing` when the denominator `y` is zero and ``Just` (x `div` y)` otherwise. For example:

    >>> safeDiv 4 0
    Nothing

    >>> safeDiv 4 2
    Just 2

A definition of `safeDiv` using guards, but not `guard`:

    safeDiv :: Int -> Int -> Maybe Int
    safeDiv x y | y /= 0    = Just (x `div` y)
                | otherwise = Nothing

A definition of `safeDiv` using `guard` and `Monad` `do`-notation:

    safeDiv :: Int -> Int -> Maybe Int
    safeDiv x y = do
      guard (y /= 0)
      return (x `div` y)

join :: Monad m => m (m a) -> m a Source #

The `join` function is the conventional monad join operator. It is used to remove one level of monadic structure, projecting its bound argument into the outer level.

'``join` bss`' can be understood as the `do` expression

    do bs <- bss
       bs

#### Examples

Expand

    >>> join [[1, 2, 3], [4, 5, 6], [7, 8, 9]]
    [1,2,3,4,5,6,7,8,9]

    >>> join (Just (Just 3))
    Just 3

A common use of `join` is to run an `IO` computation returned from an `STM` transaction, since `STM` transactions can't perform `IO` directly. Recall that

    atomically :: STM a -> IO a

is used to run `STM` transactions atomically. So, by specializing the types of `atomically` and `join` to

    atomically :: STM (IO b) -> IO (IO b)
    join       :: IO (IO b)  -> IO b

we can compose them as

    join . atomically :: STM (IO b) -> IO b

to run an `STM` transaction and the `IO` action it returns.

class (Alternative m, Monad m) => MonadPlus (m :: Type -> Type) where Source #

Monads that also support choice and failure.

Minimal complete definition

Nothing

Methods

mzero :: m a Source #

The identity of `mplus`. It should also satisfy the equations

    mzero >>= f  =  mzero
    v >> mzero   =  mzero

The default definition is

    mzero = empty

mplus :: m a -> m a -> m a Source #

An associative operation. The default definition is

    mplus = (<|>)

#### Instances

Instances details

MonadPlus Seq |
Instance details Defined in Data.Sequence.Internal Methods mzero :: Seq a Source # mplus :: Seq a -> Seq a -> Seq a Source #
MonadPlus DList |
Instance details Defined in Data.DList.Internal Methods mzero :: DList a Source # mplus :: DList a -> DList a -> DList a Source #
MonadPlus STM | Takes the first non-`retry`ing `STM` action. Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods mzero :: STM a Source # mplus :: STM a -> STM a -> STM a Source #
MonadPlus P | Since: base-2.1
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods mzero :: P a Source # mplus :: P a -> P a -> P a Source #
MonadPlus ReadP | Since: base-2.1
Instance details Defined in GHC.Internal.Text.ParserCombinators.ReadP Methods mzero :: ReadP a Source # mplus :: ReadP a -> ReadP a -> ReadP a Source #
MonadPlus IO | Takes the first non-throwing `IO` action's result. `mzero` throws an exception. Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Base Methods mzero :: IO a Source # mplus :: IO a -> IO a -> IO a Source #
MonadPlus Array |
Instance details Defined in Data.Primitive.Array Methods mzero :: Array a Source # mplus :: Array a -> Array a -> Array a Source #
MonadPlus SmallArray |
Instance details Defined in Data.Primitive.SmallArray Methods mzero :: SmallArray a Source # mplus :: SmallArray a -> SmallArray a -> SmallArray a Source #
MonadPlus Vector |
Instance details Defined in Data.Vector Methods mzero :: Vector a Source # mplus :: Vector a -> Vector a -> Vector a Source #
MonadPlus Vector |
Instance details Defined in Data.Vector.Strict Methods mzero :: Vector a Source # mplus :: Vector a -> Vector a -> Vector a Source #
MonadPlus Maybe | Picks the leftmost `Just` value, or, alternatively, `Nothing`. Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mzero :: Maybe a Source # mplus :: Maybe a -> Maybe a -> Maybe a Source #
MonadPlus [] | Combines lists by concatenation, starting from the empty list. Since: base-2.1
Instance details Defined in GHC.Internal.Base Methods mzero :: [a] Source # mplus :: [a] -> [a] -> [a] Source #
MonadPlus v => MonadPlus (Free v) |
Instance details Defined in Control.Monad.Free Methods mzero :: Free v a Source # mplus :: Free v a -> Free v a -> Free v a Source #
(ArrowApply a, ArrowPlus a) => MonadPlus (ArrowMonad a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods mzero :: ArrowMonad a a0 Source # mplus :: ArrowMonad a a0 -> ArrowMonad a a0 -> ArrowMonad a a0 Source #
MonadPlus (U1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods mzero :: U1 a Source # mplus :: U1 a -> U1 a -> U1 a Source #
Monad m => MonadPlus (MaybeT m) |
Instance details Defined in Control.Monad.Trans.Maybe Methods mzero :: MaybeT m a Source # mplus :: MaybeT m a -> MaybeT m a -> MaybeT m a Source #
MonadPlus (bi a) => MonadPlus (Biap bi a) |
Instance details Defined in Data.Bifunctor.Biap Methods mzero :: Biap bi a a0 Source # mplus :: Biap bi a a0 -> Biap bi a a0 -> Biap bi a a0 Source #
(Functor f, MonadPlus m) => MonadPlus (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods mzero :: FreeT f m a Source # mplus :: FreeT f m a -> FreeT f m a -> FreeT f m a Source #
MonadPlus m => MonadPlus (Kleisli m a) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Control.Arrow Methods mzero :: Kleisli m a a0 Source # mplus :: Kleisli m a a0 -> Kleisli m a a0 -> Kleisli m a a0 Source #
MonadPlus f => MonadPlus (Rec1 f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods mzero :: Rec1 f a Source # mplus :: Rec1 f a -> Rec1 f a -> Rec1 f a Source #
(Monoid w, Functor m, MonadPlus m) => MonadPlus (AccumT w m) |
Instance details Defined in Control.Monad.Trans.Accum Methods mzero :: AccumT w m a Source # mplus :: AccumT w m a -> AccumT w m a -> AccumT w m a Source #
(Monad m, Monoid e) => MonadPlus (ExceptT e m) |
Instance details Defined in Control.Monad.Trans.Except Methods mzero :: ExceptT e m a Source # mplus :: ExceptT e m a -> ExceptT e m a -> ExceptT e m a Source #
MonadPlus m => MonadPlus (IdentityT m) |
Instance details Defined in Control.Monad.Trans.Identity Methods mzero :: IdentityT m a Source # mplus :: IdentityT m a -> IdentityT m a -> IdentityT m a Source #
MonadPlus m => MonadPlus (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods mzero :: ReaderT r m a Source # mplus :: ReaderT r m a -> ReaderT r m a -> ReaderT r m a Source #
MonadPlus m => MonadPlus (SelectT r m) |
Instance details Defined in Control.Monad.Trans.Select Methods mzero :: SelectT r m a Source # mplus :: SelectT r m a -> SelectT r m a -> SelectT r m a Source #
MonadPlus m => MonadPlus (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Lazy Methods mzero :: StateT s m a Source # mplus :: StateT s m a -> StateT s m a -> StateT s m a Source #
MonadPlus m => MonadPlus (StateT s m) |
Instance details Defined in Control.Monad.Trans.State.Strict Methods mzero :: StateT s m a Source # mplus :: StateT s m a -> StateT s m a -> StateT s m a Source #
(Functor m, MonadPlus m) => MonadPlus (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.CPS Methods mzero :: WriterT w m a Source # mplus :: WriterT w m a -> WriterT w m a -> WriterT w m a Source #
(Monoid w, MonadPlus m) => MonadPlus (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods mzero :: WriterT w m a Source # mplus :: WriterT w m a -> WriterT w m a -> WriterT w m a Source #
(Monoid w, MonadPlus m) => MonadPlus (WriterT w m) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods mzero :: WriterT w m a Source # mplus :: WriterT w m a -> WriterT w m a -> WriterT w m a Source #
MonadPlus m => MonadPlus (Reverse m) | Derived instance.
Instance details Defined in Data.Functor.Reverse Methods mzero :: Reverse m a Source # mplus :: Reverse m a -> Reverse m a -> Reverse m a Source #
(MonadPlus f, MonadPlus g) => MonadPlus (Product f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Product Methods mzero :: Product f g a Source # mplus :: Product f g a -> Product f g a -> Product f g a Source #
(MonadPlus f, MonadPlus g) => MonadPlus (f :*: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods mzero :: (f :*: g) a Source # mplus :: (f :*: g) a -> (f :*: g) a -> (f :*: g) a Source #
MonadPlus f => MonadPlus (M1 i c f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods mzero :: M1 i c f a Source # mplus :: M1 i c f a -> M1 i c f a -> M1 i c f a Source #
(Functor m, MonadPlus m) => MonadPlus (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.CPS Methods mzero :: RWST r w s m a Source # mplus :: RWST r w s m a -> RWST r w s m a -> RWST r w s m a Source #
(Monoid w, MonadPlus m) => MonadPlus (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Lazy Methods mzero :: RWST r w s m a Source # mplus :: RWST r w s m a -> RWST r w s m a -> RWST r w s m a Source #
(Monoid w, MonadPlus m) => MonadPlus (RWST r w s m) |
Instance details Defined in Control.Monad.Trans.RWS.Strict Methods mzero :: RWST r w s m a Source # mplus :: RWST r w s m a -> RWST r w s m a -> RWST r w s m a Source #

(=<<) :: Monad m => (a -> m b) -> m a -> m b infixr 1 Source #

Same as `>>=`, but with the arguments interchanged.

    as >>= f == f =<< as

when :: Applicative f => Bool -> f () -> f () Source #

Conditional execution of `Applicative` expressions. For example,

#### Examples

Expand

    when debug (putStrLn "Debugging")

will output the string `Debugging` if the Boolean value `debug` is `True`, and otherwise do nothing.

    >>> putStr "pi:" >> when False (print 3.14159)
    pi:

liftM :: Monad m => (a1 -> r) -> m a1 -> m r Source #

Promote a function to a monad. This is equivalent to `fmap` but specialised to Monads.

liftM2 :: Monad m => (a1 -> a2 -> r) -> m a1 -> m a2 -> m r Source #

Promote a function to a monad, scanning the monadic arguments from left to right.

#### Examples

Expand

    >>> liftM2 (+) [0,1] [0,2]
    [0,2,1,3]

    >>> liftM2 (+) (Just 1) Nothing
    Nothing

    >>> liftM2 (+) (+ 3) (* 2) 5
    18

liftM3 :: Monad m => (a1 -> a2 -> a3 -> r) -> m a1 -> m a2 -> m a3 -> m r Source #

Promote a function to a monad, scanning the monadic arguments from left to right (cf. `liftM2`).

liftM4 :: Monad m => (a1 -> a2 -> a3 -> a4 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m r Source #

Promote a function to a monad, scanning the monadic arguments from left to right (cf. `liftM2`).

liftM5 :: Monad m => (a1 -> a2 -> a3 -> a4 -> a5 -> r) -> m a1 -> m a2 -> m a3 -> m a4 -> m a5 -> m r Source #

Promote a function to a monad, scanning the monadic arguments from left to right (cf. `liftM2`).

ap :: Monad m => m (a -> b) -> m a -> m b Source #

In many situations, the `liftM` operations can be replaced by uses of `ap`, which promotes function application.

    return f `ap` x1 `ap` ... `ap` xn

is equivalent to

    liftM<n> f x1 x2 ... xn

#### Examples

Expand

    >>> pure (\x y z -> x + y * z) `ap` Just 1 `ap` Just 5 `ap` Just 10
    Just 51

(>=>) :: Monad m => (a -> m b) -> (b -> m c) -> a -> m c infixr 1 Source #

Left-to-right composition of `Kleisli` arrows.

'`(bs `>=>` cs) a`' can be understood as the `do` expression

    do b <- bs a
       cs b

or in terms of ``(>>=)`` as

    bs a >>= cs

(<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c infixr 1 Source #

Right-to-left composition of Kleisli arrows. `(`>=>`)`, with the arguments flipped.

Note how this operator resembles function composition `(`.`)`:

    (.)   ::            (b ->   c) -> (a ->   b) -> a ->   c
    (<=<) :: Monad m => (b -> m c) -> (a -> m b) -> a -> m c

forever :: Applicative f => f a -> f b Source #

Repeat an action indefinitely.

#### Examples

Expand

A common use of `forever` is to process input from network sockets, `Handle`s, and channels (e.g. `MVar` and `Chan`).

For example, here is how we might implement an echo server, using `forever` both to listen for client connections on a network socket and to echo client input on client connection handles:

    echoServer :: Socket -> IO ()
    echoServer socket = forever $ do
      client <- accept socket
      forkFinally (echo client) (\_ -> hClose client)
      where
        echo :: Handle -> IO ()
        echo client = forever $
          hGetLine client >>= hPutStrLn client

Note that "forever" isn't necessarily non-terminating. If the action is in a ``MonadPlus`` and short-circuits after some number of iterations. then ``forever`` actually returns `mzero`, effectively short-circuiting its caller.

replicateM_ :: Applicative m => Int -> m a -> m () Source #

Like `replicateM`, but discards the result.

#### Examples

Expand

    >>> replicateM_ 3 (putStr "a")
    aaa

unless :: Applicative f => Bool -> f () -> f () Source #

The reverse of `when`.

#### Examples

Expand

    >>> do x <- getLine
           unless (x == "hi") (putStrLn "hi!")
    comingupwithexamplesisdifficult
    hi!

    >>> unless (pi > exp 1) Nothing
    Just ()

whenM :: Monad m => m Bool -> m () -> m () Source #

Only perform the action if the predicate returns `True`.

Since 0.9.2

unlessM :: Monad m => m Bool -> m () -> m () Source #

Only perform the action if the predicate returns `False`.

Since 0.9.2

## UnliftIO reexports

module UnliftIO

## Mutable references

orElseSTM :: STM a -> STM a -> STM a Source #

Synonym for `orElse`.

module Data.Mutable

## STM Channels

module Control.Concurrent.STM.TBChan

module Control.Concurrent.STM.TBMChan

module Control.Concurrent.STM.TBMQueue

module Control.Concurrent.STM.TMChan

module Control.Concurrent.STM.TMQueue

## Primitive (exported since 0.9.4)

primToPrim :: (PrimBase m1, PrimMonad m2, PrimState m1 ~ PrimState m2) => m1 a -> m2 a Source #

Convert a `PrimBase` to another monad with the same state token.

primToIO :: (PrimBase m, PrimState m ~ RealWorld) => m a -> IO a Source #

Convert a `PrimBase` with a `RealWorld` state token to `IO`

primToST :: PrimBase m => m a -> ST (PrimState m) a Source #

Convert a `PrimBase` to `ST`

module Data.Primitive.MutVar

## Debugging

trace :: String -> a -> a Source #

Warning: Leaving traces in the code

We define our own `trace` (and also its variants) which provides a warning when used. So that tracing is available during development, but the compiler reminds you to not leave them in the code for production.

traceShow :: Show a => a -> b -> b Source #

Warning: Leaving traces in the code

traceId :: String -> String Source #

Warning: Leaving traces in the code

Since 0.5.9

traceM :: Monad m => String -> m () Source #

Warning: Leaving traces in the code

Since 0.5.9

traceShowId :: Show a => a -> a Source #

Warning: Leaving traces in the code

Since 0.5.9

traceShowM :: (Show a, Monad m) => a -> m () Source #

Warning: Leaving traces in the code

Since 0.5.9

## Time (since 0.6.1)

formatTime :: FormatTime t => TimeLocale -> String -> t -> String Source #

Substitute various time-related information for each %-code in the string, as per `formatCharacter`.

The general form is `%<modifier><width><alternate><specifier>`, where `<modifier>`, `<width>`, and `<alternate>` are optional.

## `<modifier>`

glibc-style modifiers can be used before the specifier (here marked as `z`):

`%-z`
  no padding
`%_z`
  pad with spaces
`%0z`
  pad with zeros
`%^z`
  convert to upper case
`%#z`
  convert to lower case (consistently, unlike glibc)

## `<width>`

Width digits can also be used after any modifiers and before the specifier (here marked as `z`), for example:

`%4z`
  pad to 4 characters (with default padding character)
`%_12z`
  pad with spaces to 12 characters

## `<alternate>`

An optional `E` character indicates an alternate formatting. Currently this only affects `%Z` and `%z`.

`%Ez`
  alternate formatting

## `<specifier>`

For all types (note these three are done by `formatTime`, not by `formatCharacter`):

`%%`
  `%`
`%t`
  tab
`%n`
  newline

### `TimeZone`

For `TimeZone` (and `ZonedTime` and `UTCTime`):

`%z`
  timezone offset in the format `±HHMM`
`%Ez`
  timezone offset in the format `±HH:MM`
`%Z`
  timezone name (or else offset in the format `±HHMM`)
`%EZ`
  timezone name (or else offset in the format `±HH:MM`)

### `LocalTime`

For `LocalTime` (and `ZonedTime` and `UTCTime` and `UniversalTime`):

`%c`
  as `dateTimeFmt` `locale` (e.g. `%a %b %e %H:%M:%S %Z %Y`)

### `TimeOfDay`

For `TimeOfDay` (and `LocalTime` and `ZonedTime` and `UTCTime` and `UniversalTime`):

`%R`
  same as `%H:%M`
`%T`
  same as `%H:%M:%S`
`%X`
  as `timeFmt` `locale` (e.g. `%H:%M:%S`)
`%r`
  as `time12Fmt` `locale` (e.g. `%I:%M:%S %p`)
`%P`
  day-half of day from (`amPm` `locale`), converted to lowercase, `am`, `pm`
`%p`
  day-half of day from (`amPm` `locale`), `AM`, `PM`
`%H`
  hour of day (24-hour), 0-padded to two chars, `00` - `23`
`%k`
  hour of day (24-hour), space-padded to two chars, `0` - `23`
`%I`
  hour of day-half (12-hour), 0-padded to two chars, `01` - `12`
`%l`
  hour of day-half (12-hour), space-padded to two chars, `1` - `12`
`%M`
  minute of hour, 0-padded to two chars, `00` - `59`
`%S`
  second of minute (without decimal part), 0-padded to two chars, `00` - `60`
`%q`
  picosecond of second, 0-padded to twelve chars, `000000000000` - `999999999999`.
`%Q`
  decimal point and fraction of second, up to 12 second decimals, without trailing zeros. For a whole number of seconds, `%Q` omits the decimal point unless padding is specified.

### `UTCTime` and `ZonedTime`

For `UTCTime` and `ZonedTime`:

`%s`
  number of whole seconds since the Unix epoch. For times before the Unix epoch, this is a negative number. Note that in `%s.%q` and `%s%Q` the decimals are positive, not negative. For example, 0.9 seconds before the Unix epoch is formatted as `-1.1` with `%s%Q`.

### `DayOfWeek`

For `DayOfWeek` (and `Day` and `LocalTime` and `ZonedTime` and `UTCTime` and `UniversalTime`):

`%u`
  day of week number for Week Date format, `1` (= Monday) - `7` (= Sunday)
`%w`
  day of week number, `0` (= Sunday) - `6` (= Saturday)
`%a`
  day of week, short form (`snd` from `wDays` `locale`), `Sun` - `Sat`
`%A`
  day of week, long form (`fst` from `wDays` `locale`), `Sunday` - `Saturday`

### `Month`

For `Month` (and `Day` and `LocalTime` and `ZonedTime` and `UTCTime` and `UniversalTime`):

`%Y`
  year, no padding. Note `%0Y` and `%_Y` pad to four chars
`%y`
  year of century, 0-padded to two chars, `00` - `99`
`%C`
  century, no padding. Note `%0C` and `%_C` pad to two chars
`%B`
  month name, long form (`fst` from `months` `locale`), `January` - `December`
`%b`, `%h`
  month name, short form (`snd` from `months` `locale`), `Jan` - `Dec`
`%m`
  month of year, 0-padded to two chars, `01` - `12`

### `Day`

For `Day` (and `LocalTime` and `ZonedTime` and `UTCTime` and `UniversalTime`):

`%D`
  same as `%m/%d/%y`
`%F`
  same as `%Y-%m-%d`
`%x`
  as `dateFmt` `locale` (e.g. `%m/%d/%y`)
`%d`
  day of month, 0-padded to two chars, `01` - `31`
`%e`
  day of month, space-padded to two chars, `1` - `31`
`%j`
  day of year, 0-padded to three chars, `001` - `366`
`%f`
  century for Week Date format, no padding. Note `%0f` and `%_f` pad to two chars
`%V`
  week of year for Week Date format, 0-padded to two chars, `01` - `53`
`%U`
  week of year where weeks start on Sunday (as `sundayStartWeek`), 0-padded to two chars, `00` - `53`
`%W`
  week of year where weeks start on Monday (as `mondayStartWeek`), 0-padded to two chars, `00` - `53`

## Duration types

The specifiers for `DiffTime`, `NominalDiffTime`, `CalendarDiffDays`, and `CalendarDiffTime` are semantically separate from the other types. Specifiers on negative time differences will generally be negative (think `rem` rather than `mod`).

### `NominalDiffTime` and `DiffTime`

Note that a "minute" of `DiffTime` is simply 60 SI seconds, rather than a minute of civil time. Use `NominalDiffTime` to work with civil time, ignoring any leap seconds.

For `NominalDiffTime` and `DiffTime`:

`%w`
  total whole weeks
`%d`
  total whole days
`%D`
  whole days of week
`%h`
  total whole hours
`%H`
  whole hours of day
`%m`
  total whole minutes
`%M`
  whole minutes of hour
`%s`
  total whole seconds
`%Es`
  total seconds, with decimal point and up to <width> (default 12) decimal places, without trailing zeros. For a whole number of seconds, `%Es` omits the decimal point unless padding is specified.
`%0Es`
  total seconds, with decimal point and <width> (default 12) decimal places.
`%S`
  whole seconds of minute
`%ES`
  seconds of minute, with decimal point and up to <width> (default 12) decimal places, without trailing zeros. For a whole number of seconds, `%ES` omits the decimal point unless padding is specified.
`%0ES`
  seconds of minute as two digits, with decimal point and <width> (default 12) decimal places.

### `CalendarDiffDays`

For `CalendarDiffDays` (and `CalendarDiffTime`):

`%y`
  total years
`%b`
  total months
`%B`
  months of year
`%w`
  total weeks, not including months
`%d`
  total days, not including months
`%D`
  days of week

### `CalendarDiffTime`

For `CalendarDiffTime`:

`%h`
  total hours, not including months
`%H`
  hours of day
`%m`
  total minutes, not including months
`%M`
  minutes of hour
`%s`
  total whole seconds, not including months
`%Es`
  total seconds, not including months, with decimal point and up to <width> (default 12) decimal places, without trailing zeros. For a whole number of seconds, `%Es` omits the decimal point unless padding is specified.
`%0Es`
  total seconds, not including months, with decimal point and <width> (default 12) decimal places.
`%S`
  whole seconds of minute
`%ES`
  seconds of minute, with decimal point and up to <width> (default 12) decimal places, without trailing zeros. For a whole number of seconds, `%ES` omits the decimal point unless padding is specified.
`%0ES`
  seconds of minute as two digits, with decimal point and <width> (default 12) decimal places.

fromGregorian :: Year -> MonthOfYear -> DayOfMonth -> Day Source #

Convert from proleptic Gregorian calendar. Invalid values will be clipped to the correct range, month first, then day.

newtype Day Source #

The Modified Julian Day is a standard count of days, with zero being the day 1858-11-17.

Constructors

ModifiedJulianDay |

Fields

- toModifiedJulianDay :: Integer

#### Instances

Instances details

NFData Day |
Instance details Defined in Data.Time.Calendar.Days Methods rnf :: Day -> () Source #
Data Day |

Instance details

Defined in Data.Time.Calendar.Days

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> Day -> c Day Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c Day Source #

toConstr :: Day -> Constr Source #

dataTypeOf :: Day -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c Day) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c Day) Source #

gmapT :: (forall b. Data b => b -> b) -> Day -> Day Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> Day -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> Day -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> Day -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> Day -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> Day -> m Day Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> Day -> m Day Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> Day -> m Day Source #

Enum Day |
Instance details Defined in Data.Time.Calendar.Days Methods succ :: Day -> Day Source # pred :: Day -> Day Source # toEnum :: Int -> Day Source # fromEnum :: Day -> Int Source # enumFrom :: Day -> [Day] Source # enumFromThen :: Day -> Day -> [Day] Source # enumFromTo :: Day -> Day -> [Day] Source # enumFromThenTo :: Day -> Day -> Day -> [Day] Source #
Ix Day |
Instance details Defined in Data.Time.Calendar.Days Methods range :: (Day, Day) -> [Day] Source # index :: (Day, Day) -> Day -> Int Source # unsafeIndex :: (Day, Day) -> Day -> Int Source # inRange :: (Day, Day) -> Day -> Bool Source # rangeSize :: (Day, Day) -> Int Source # unsafeRangeSize :: (Day, Day) -> Int Source #
Read Day |
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS Day Source # readList :: ReadS [Day] Source # readPrec :: ReadPrec Day Source # readListPrec :: ReadPrec [Day] Source #
Show Day |
Instance details Defined in Data.Time.Calendar.Gregorian Methods showsPrec :: Int -> Day -> ShowS Source # show :: Day -> String Source # showList :: [Day] -> ShowS Source #
Eq Day |
Instance details Defined in Data.Time.Calendar.Days Methods (==) :: Day -> Day -> Bool Source # (/=) :: Day -> Day -> Bool Source #
Ord Day |
Instance details Defined in Data.Time.Calendar.Days Methods compare :: Day -> Day -> Ordering Source # (<) :: Day -> Day -> Bool Source # (<=) :: Day -> Day -> Bool Source # (>) :: Day -> Day -> Bool Source # (>=) :: Day -> Day -> Bool Source # max :: Day -> Day -> Day Source # min :: Day -> Day -> Day Source #
DayPeriod Day |
Instance details Defined in Data.Time.Calendar.Days Methods periodFirstDay :: Day -> Day Source # periodLastDay :: Day -> Day Source # dayPeriod :: Day -> Day Source #
FormatTime Day |
Instance details Defined in Data.Time.Format.Format.Instances Methods formatCharacter :: Bool -> Char -> Maybe (FormatOptions -> Day -> String) Source #
ISO8601 Day | `yyyy-mm-dd` (ISO 8601:2004(E) sec. 4.1.2.2 extended format)
Instance details Defined in Data.Time.Format.ISO8601 Methods iso8601Format :: Format Day Source #
ParseTime Day |
Instance details Defined in Data.Time.Format.Parse.Instances Methods substituteTimeSpecifier :: Proxy Day -> TimeLocale -> Char -> Maybe String Source # parseTimeSpecifier :: Proxy Day -> TimeLocale -> Maybe ParseNumericPadding -> Char -> ReadP String Source # buildTime :: TimeLocale -> [(Char, String)] -> Maybe Day Source #

toGregorian :: Day -> (Year, MonthOfYear, DayOfMonth) Source #

Convert to proleptic Gregorian calendar.

data UTCTime Source #

This is the simplest representation of UTC. It consists of the day number, and a time offset from midnight. Note that if a day has a leap second added to it, it will have 86401 seconds.

Constructors

UTCTime |

Fields

- utctDay :: Day

  the day

- utctDayTime :: DiffTime

  the time from midnight, 0 <= t < 86401s (because of leap-seconds)

#### Instances

Instances details

NFData UTCTime |
Instance details Defined in Data.Time.Clock.Internal.UTCTime Methods rnf :: UTCTime -> () Source #
Data UTCTime |

Instance details

Defined in Data.Time.Clock.Internal.UTCTime

Methods

gfoldl :: (forall d b. Data d => c (d -> b) -> d -> c b) -> (forall g. g -> c g) -> UTCTime -> c UTCTime Source #

gunfold :: (forall b r. Data b => c (b -> r) -> c r) -> (forall r. r -> c r) -> Constr -> c UTCTime Source #

toConstr :: UTCTime -> Constr Source #

dataTypeOf :: UTCTime -> DataType Source #

dataCast1 :: Typeable t => (forall d. Data d => c (t d)) -> Maybe (c UTCTime) Source #

dataCast2 :: Typeable t => (forall d e. (Data d, Data e) => c (t d e)) -> Maybe (c UTCTime) Source #

gmapT :: (forall b. Data b => b -> b) -> UTCTime -> UTCTime Source #

gmapQl :: (r -> r' -> r) -> r -> (forall d. Data d => d -> r') -> UTCTime -> r Source #

gmapQr :: forall r r'. (r' -> r -> r) -> r -> (forall d. Data d => d -> r') -> UTCTime -> r Source #

gmapQ :: (forall d. Data d => d -> u) -> UTCTime -> [u] Source #

gmapQi :: Int -> (forall d. Data d => d -> u) -> UTCTime -> u Source #

gmapM :: Monad m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime Source #

gmapMp :: MonadPlus m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime Source #

gmapMo :: MonadPlus m => (forall d. Data d => d -> m d) -> UTCTime -> m UTCTime Source #

Read UTCTime |
Instance details Defined in Data.Time.Format.Parse Methods readsPrec :: Int -> ReadS UTCTime Source # readList :: ReadS [UTCTime] Source # readPrec :: ReadPrec UTCTime Source # readListPrec :: ReadPrec [UTCTime] Source #
Show UTCTime |
Instance details Defined in Data.Time.LocalTime.Internal.ZonedTime Methods showsPrec :: Int -> UTCTime -> ShowS Source # show :: UTCTime -> String Source # showList :: [UTCTime] -> ShowS Source #
Eq UTCTime |
Instance details Defined in Data.Time.Clock.Internal.UTCTime Methods (==) :: UTCTime -> UTCTime -> Bool Source # (/=) :: UTCTime -> UTCTime -> Bool Source #
Ord UTCTime |
Instance details Defined in Data.Time.Clock.Internal.UTCTime Methods compare :: UTCTime -> UTCTime -> Ordering Source # (<) :: UTCTime -> UTCTime -> Bool Source # (<=) :: UTCTime -> UTCTime -> Bool Source # (>) :: UTCTime -> UTCTime -> Bool Source # (>=) :: UTCTime -> UTCTime -> Bool Source # max :: UTCTime -> UTCTime -> UTCTime Source # min :: UTCTime -> UTCTime -> UTCTime Source #
FormatTime UTCTime |
Instance details Defined in Data.Time.Format.Format.Instances Methods formatCharacter :: Bool -> Char -> Maybe (FormatOptions -> UTCTime -> String) Source #
ISO8601 UTCTime | `yyyy-mm-ddThh:mm:ss[.sss]Z` (ISO 8601:2004(E) sec. 4.3.2 extended format)
Instance details Defined in Data.Time.Format.ISO8601 Methods iso8601Format :: Format UTCTime Source #
ParseTime UTCTime |
Instance details Defined in Data.Time.Format.Parse.Instances Methods substituteTimeSpecifier :: Proxy UTCTime -> TimeLocale -> Char -> Maybe String Source # parseTimeSpecifier :: Proxy UTCTime -> TimeLocale -> Maybe ParseNumericPadding -> Char -> ReadP String Source # buildTime :: TimeLocale -> [(Char, String)] -> Maybe UTCTime Source #

getCurrentTime :: IO UTCTime Source #

Get the current `UTCTime` from the system clock.

defaultTimeLocale :: TimeLocale Source #

Locale representing American usage.

`knownTimeZones` contains only the ten time-zones mentioned in RFC 822 sec. 5: "UT", "GMT", "EST", "EDT", "CST", "CDT", "MST", "MDT", "PST", "PDT". Note that the parsing functions will regardless parse "UTC", single-letter military time-zones, and +HHMM format.

parseTimeM Source #

Arguments

:: (MonadFail m, ParseTime t) |
=> Bool | Accept leading and trailing whitespace?
-> TimeLocale | Time locale.
-> String | Format string.
-> String | Input string.
-> m t | Return the time value, or fail if the input could not be parsed using the given format.

Parses a time value given a format string. Missing information will be derived from 1970-01-01 00:00 UTC (which was a Thursday). Supports the same %-codes as `formatTime`, including `%-`, `%_` and `%0` modifiers, however padding widths are not supported. Case is not significant in the input string. Some variations in the input are accepted:

`%z` `%Ez`
  accepts any of `±HHMM` or `±HH:MM`.
`%Z` `%EZ`
  accepts any string of letters, or any of the formats accepted by `%z`.
`%0Y`
  accepts exactly four digits.
`%0G`
  accepts exactly four digits.
`%0C`
  accepts exactly two digits.
`%0f`
  accepts exactly two digits.

For example, to parse a date in YYYY-MM-DD format, while allowing the month and date to have optional leading zeros (notice the `-` modifier used for `%m` and `%d`):

    Prelude Data.Time> parseTimeM True defaultTimeLocale "%Y-%-m-%-d" "2010-3-04" :: Maybe Day
    Just 2010-03-04

parseTime Source #

Arguments

:: ParseTime t |
=> TimeLocale | Time locale.
-> String | Format string.
-> String | Input string.
-> Maybe t | The time value, or `Nothing` if the input could not be parsed using the given format.

## Generics (since 0.8.1)

class Generic a Source #

Representable types of kind `*`. This class is derivable in GHC with the `DeriveGeneric` flag on.

A `Generic` instance must satisfy the following laws:

    from . to ≡ id
    to . from ≡ id

Minimal complete definition

from, to

#### Instances

Instances details

Generic ShortByteString |

Instance details

Defined in Data.ByteString.Short.Internal

Associated Types

type Rep ShortByteString |
Instance details Defined in Data.ByteString.Short.Internal type Rep ShortByteString = D1 ('MetaData "ShortByteString" "Data.ByteString.Short.Internal" "bytestring-0.12.2.0-inplace" 'True) (C1 ('MetaCons "ShortByteString" 'PrefixI 'True) (S1 ('MetaSel ('Just "unShortByteString") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ByteArray)))

Methods

from :: ShortByteString -> Rep ShortByteString x Source #

to :: Rep ShortByteString x -> ShortByteString Source #

Generic Void |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep Void | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Generics type Rep Void = D1 ('MetaData "Void" "GHC.Internal.Base" "ghc-internal" 'False) (V1 :: Type -> Type)

Methods

from :: Void -> Rep Void x Source #

to :: Rep Void x -> Void Source #

Generic Version |

Instance details

Defined in GHC.Internal.Data.Version

Associated Types

type Rep Version | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Version

type Rep Version = D1 ('MetaData "Version" "GHC.Internal.Data.Version" "ghc-internal" 'False) (C1 ('MetaCons "Version" 'PrefixI 'True) (S1 ('MetaSel ('Just "versionBranch") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Int]) :*: S1 ('MetaSel ('Just "versionTags") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [String])))

Methods

from :: Version -> Rep Version x Source #

to :: Rep Version x -> Version Source #

Generic Fingerprint |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep Fingerprint | Since: base-4.15.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep Fingerprint = D1 ('MetaData "Fingerprint" "GHC.Internal.Fingerprint.Type" "ghc-internal" 'False) (C1 ('MetaCons "Fingerprint" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 Word64) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 Word64)))

Methods

from :: Fingerprint -> Rep Fingerprint x Source #

to :: Rep Fingerprint x -> Fingerprint Source #

Generic Associativity |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep Associativity | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics type Rep Associativity = D1 ('MetaData "Associativity" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "LeftAssociative" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "RightAssociative" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NotAssociative" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: Associativity -> Rep Associativity x Source #

to :: Rep Associativity x -> Associativity Source #

Generic DecidedStrictness |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep DecidedStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep DecidedStrictness = D1 ('MetaData "DecidedStrictness" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "DecidedLazy" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "DecidedStrict" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DecidedUnpack" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: DecidedStrictness -> Rep DecidedStrictness x Source #

to :: Rep DecidedStrictness x -> DecidedStrictness Source #

Generic Fixity |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep Fixity | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep Fixity = D1 ('MetaData "Fixity" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "Prefix" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Infix" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Associativity) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

Methods

from :: Fixity -> Rep Fixity x Source #

to :: Rep Fixity x -> Fixity Source #

Generic SourceStrictness |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep SourceStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep SourceStrictness = D1 ('MetaData "SourceStrictness" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "NoSourceStrictness" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SourceLazy" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SourceStrict" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: SourceStrictness -> Rep SourceStrictness x Source #

to :: Rep SourceStrictness x -> SourceStrictness Source #

Generic SourceUnpackedness |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep SourceUnpackedness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep SourceUnpackedness = D1 ('MetaData "SourceUnpackedness" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "NoSourceUnpackedness" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "SourceNoUnpack" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SourceUnpack" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: SourceUnpackedness -> Rep SourceUnpackedness x Source #

to :: Rep SourceUnpackedness x -> SourceUnpackedness Source #

Generic ExitCode |

Instance details

Defined in GHC.Internal.IO.Exception

Associated Types

type Rep ExitCode |
Instance details Defined in GHC.Internal.IO.Exception type Rep ExitCode = D1 ('MetaData "ExitCode" "GHC.Internal.IO.Exception" "ghc-internal" 'False) (C1 ('MetaCons "ExitSuccess" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ExitFailure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))

Methods

from :: ExitCode -> Rep ExitCode x Source #

to :: Rep ExitCode x -> ExitCode Source #

Generic SrcLoc |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep SrcLoc | Since: base-4.15.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep SrcLoc = D1 ('MetaData "SrcLoc" "GHC.Internal.Stack.Types" "ghc-internal" 'False) (C1 ('MetaCons "SrcLoc" 'PrefixI 'True) ((S1 ('MetaSel ('Just "srcLocPackage") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Char]) :*: (S1 ('MetaSel ('Just "srcLocModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Char]) :*: S1 ('MetaSel ('Just "srcLocFile") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Char]))) :*: ((S1 ('MetaSel ('Just "srcLocStartLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Just "srcLocStartCol") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)) :*: (S1 ('MetaSel ('Just "srcLocEndLine") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int) :*: S1 ('MetaSel ('Just "srcLocEndCol") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Int)))))

Methods

from :: SrcLoc -> Rep SrcLoc x Source #

to :: Rep SrcLoc x -> SrcLoc Source #

Generic GCDetails |

Instance details

Defined in GHC.Internal.Stats

Associated Types

type Rep GCDetails | Since: base-4.15.0.0

Instance details

Defined in GHC.Internal.Stats

type Rep GCDetails = D1 ('MetaData "GCDetails" "GHC.Internal.Stats" "ghc-internal" 'False) (C1 ('MetaCons "GCDetails" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "gcdetails_gen") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "gcdetails_threads") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32)) :*: (S1 ('MetaSel ('Just "gcdetails_allocated_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_live_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "gcdetails_large_objects_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_compact_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "gcdetails_slop_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_mem_in_use_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))) :*: (((S1 ('MetaSel ('Just "gcdetails_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_par_max_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "gcdetails_par_balanced_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "gcdetails_block_fragmentation_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "gcdetails_sync_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "gcdetails_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)) :*: (S1 ('MetaSel ('Just "gcdetails_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: (S1 ('MetaSel ('Just "gcdetails_nonmoving_gc_sync_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "gcdetails_nonmoving_gc_sync_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)))))))

Methods

from :: GCDetails -> Rep GCDetails x Source #

to :: Rep GCDetails x -> GCDetails Source #

Generic RTSStats |

Instance details

Defined in GHC.Internal.Stats

Associated Types

type Rep RTSStats | Since: base-4.15.0.0

Instance details

Defined in GHC.Internal.Stats

type Rep RTSStats = D1 ('MetaData "RTSStats" "GHC.Internal.Stats" "ghc-internal" 'False) (C1 ('MetaCons "RTSStats" 'PrefixI 'True) ((((S1 ('MetaSel ('Just "gcs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: (S1 ('MetaSel ('Just "major_gcs") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word32) :*: S1 ('MetaSel ('Just "allocated_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "max_live_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "max_large_objects_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "max_compact_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "max_slop_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)))) :*: ((S1 ('MetaSel ('Just "max_mem_in_use_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: (S1 ('MetaSel ('Just "cumulative_live_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64))) :*: ((S1 ('MetaSel ('Just "par_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "cumulative_par_max_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64)) :*: (S1 ('MetaSel ('Just "cumulative_par_balanced_copied_bytes") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Word64) :*: S1 ('MetaSel ('Just "init_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime))))) :*: (((S1 ('MetaSel ('Just "init_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: (S1 ('MetaSel ('Just "mutator_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "mutator_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime))) :*: ((S1 ('MetaSel ('Just "gc_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "gc_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)) :*: (S1 ('MetaSel ('Just "cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)))) :*: ((S1 ('MetaSel ('Just "nonmoving_gc_sync_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: (S1 ('MetaSel ('Just "nonmoving_gc_sync_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "nonmoving_gc_sync_max_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime))) :*: ((S1 ('MetaSel ('Just "nonmoving_gc_cpu_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "nonmoving_gc_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime)) :*: (S1 ('MetaSel ('Just "nonmoving_gc_max_elapsed_ns") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 RtsTime) :*: S1 ('MetaSel ('Just "gc") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 GCDetails)))))))

Methods

from :: RTSStats -> Rep RTSStats x Source #

to :: Rep RTSStats x -> RTSStats Source #

Generic GeneralCategory |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep GeneralCategory | Since: base-4.15.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep GeneralCategory = D1 ('MetaData "GeneralCategory" "GHC.Internal.Unicode" "ghc-internal" 'False) ((((C1 ('MetaCons "UppercaseLetter" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "LowercaseLetter" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "TitlecaseLetter" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "ModifierLetter" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OtherLetter" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "NonSpacingMark" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "SpacingCombiningMark" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "EnclosingMark" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DecimalNumber" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "LetterNumber" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OtherNumber" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "ConnectorPunctuation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "DashPunctuation" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "OpenPunctuation" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "ClosePunctuation" 'PrefixI 'False) (U1 :: Type -> Type))))) :+: (((C1 ('MetaCons "InitialQuote" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "FinalQuote" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OtherPunctuation" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "MathSymbol" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "CurrencySymbol" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ModifierSymbol" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "OtherSymbol" 'PrefixI 'False) (U1 :: Type -> Type)))) :+: (((C1 ('MetaCons "Space" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "LineSeparator" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "ParagraphSeparator" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Control" 'PrefixI 'False) (U1 :: Type -> Type))) :+: ((C1 ('MetaCons "Format" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Surrogate" 'PrefixI 'False) (U1 :: Type -> Type)) :+: (C1 ('MetaCons "PrivateUse" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "NotAssigned" 'PrefixI 'False) (U1 :: Type -> Type))))))

Methods

from :: GeneralCategory -> Rep GeneralCategory x Source #

to :: Rep GeneralCategory x -> GeneralCategory Source #

Generic Ordering |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep Ordering | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep Ordering = D1 ('MetaData "Ordering" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "LT" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "EQ" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "GT" 'PrefixI 'False) (U1 :: Type -> Type)))

Methods

from :: Ordering -> Rep Ordering x Source #

to :: Rep Ordering x -> Ordering Source #

Generic ConcException |

Instance details

Defined in UnliftIO.Internals.Async

Associated Types

type Rep ConcException |
Instance details Defined in UnliftIO.Internals.Async type Rep ConcException = D1 ('MetaData "ConcException" "UnliftIO.Internals.Async" "unliftio-0.2.25.1-IysTP3jVmOGD5aDAyf3Nqh" 'False) (C1 ('MetaCons "EmptyWithNoAlternative" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: ConcException -> Rep ConcException x Source #

to :: Rep ConcException x -> ConcException Source #

Generic () |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep () | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep () = D1 ('MetaData "Unit" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "()" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: () -> Rep () x Source #

to :: Rep () x -> () Source #

Generic Bool |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep Bool | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep Bool = D1 ('MetaData "Bool" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "False" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "True" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: Bool -> Rep Bool x Source #

to :: Rep Bool x -> Bool Source #

Generic (Complex a) |

Instance details

Defined in Data.Complex

Associated Types

type Rep (Complex a) | Since: base-4.9.0.0
Instance details Defined in Data.Complex type Rep (Complex a) = D1 ('MetaData "Complex" "Data.Complex" "base" 'False) (C1 ('MetaCons ":+" ('InfixI 'NotAssociative 6) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 a)))

Methods

from :: Complex a -> Rep (Complex a) x Source #

to :: Rep (Complex a) x -> Complex a Source #

Generic (First a) |

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (First a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep (First a) = D1 ('MetaData "First" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "First" 'PrefixI 'True) (S1 ('MetaSel ('Just "getFirst") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: First a -> Rep (First a) x Source #

to :: Rep (First a) x -> First a Source #

Generic (Last a) |

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep (Last a) = D1 ('MetaData "Last" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "Last" 'PrefixI 'True) (S1 ('MetaSel ('Just "getLast") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Last a -> Rep (Last a) x Source #

to :: Rep (Last a) x -> Last a Source #

Generic (Max a) |

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep (Max a) = D1 ('MetaData "Max" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "Max" 'PrefixI 'True) (S1 ('MetaSel ('Just "getMax") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Max a -> Rep (Max a) x Source #

to :: Rep (Max a) x -> Max a Source #

Generic (Min a) |

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep (Min a) = D1 ('MetaData "Min" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "Min" 'PrefixI 'True) (S1 ('MetaSel ('Just "getMin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Min a -> Rep (Min a) x Source #

to :: Rep (Min a) x -> Min a Source #

Generic (WrappedMonoid m) |

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep (WrappedMonoid m) = D1 ('MetaData "WrappedMonoid" "Data.Semigroup" "base" 'True) (C1 ('MetaCons "WrapMonoid" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapMonoid") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m)))

Methods

from :: WrappedMonoid m -> Rep (WrappedMonoid m) x Source #

to :: Rep (WrappedMonoid m) x -> WrappedMonoid m Source #

Generic (SCC vertex) |

Instance details

Defined in Data.Graph

Associated Types

type Rep (SCC vertex) | Since: containers-0.5.9

Instance details

Defined in Data.Graph

type Rep (SCC vertex) = D1 ('MetaData "SCC" "Data.Graph" "containers-0.7-inplace" 'False) (C1 ('MetaCons "AcyclicSCC" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 vertex)) :+: C1 ('MetaCons "NECyclicSCC" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 (NonEmpty vertex))))

Methods

from :: SCC vertex -> Rep (SCC vertex) x Source #

to :: Rep (SCC vertex) x -> SCC vertex Source #

Generic (Digit a) |

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Digit a) | Since: containers-0.6.1

Instance details

Defined in Data.Sequence.Internal

type Rep (Digit a) = D1 ('MetaData "Digit" "Data.Sequence.Internal" "containers-0.7-inplace" 'False) ((C1 ('MetaCons "One" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Two" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))) :+: (C1 ('MetaCons "Three" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))) :+: C1 ('MetaCons "Four" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))))

Methods

from :: Digit a -> Rep (Digit a) x Source #

to :: Rep (Digit a) x -> Digit a Source #

Generic (Elem a) |

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Elem a) | Since: containers-0.6.1
Instance details Defined in Data.Sequence.Internal type Rep (Elem a) = D1 ('MetaData "Elem" "Data.Sequence.Internal" "containers-0.7-inplace" 'True) (C1 ('MetaCons "Elem" 'PrefixI 'True) (S1 ('MetaSel ('Just "getElem") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Elem a -> Rep (Elem a) x Source #

to :: Rep (Elem a) x -> Elem a Source #

Generic (FingerTree a) |

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (FingerTree a) | Since: containers-0.6.1

Instance details

Defined in Data.Sequence.Internal

type Rep (FingerTree a) = D1 ('MetaData "FingerTree" "Data.Sequence.Internal" "containers-0.7-inplace" 'False) (C1 ('MetaCons "EmptyT" 'PrefixI 'False) (U1 :: Type -> Type) :+: (C1 ('MetaCons "Single" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Deep" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Digit a))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (FingerTree (Node a))) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'SourceStrict 'DecidedStrict) (Rec0 (Digit a))))))

Methods

from :: FingerTree a -> Rep (FingerTree a) x Source #

to :: Rep (FingerTree a) x -> FingerTree a Source #

Generic (Node a) |

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (Node a) | Since: containers-0.6.1

Instance details

Defined in Data.Sequence.Internal

type Rep (Node a) = D1 ('MetaData "Node" "Data.Sequence.Internal" "containers-0.7-inplace" 'False) (C1 ('MetaCons "Node2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 Int) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))) :+: C1 ('MetaCons "Node3" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'SourceUnpack 'SourceStrict 'DecidedUnpack) (Rec0 Int) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a))))

Methods

from :: Node a -> Rep (Node a) x Source #

to :: Rep (Node a) x -> Node a Source #

Generic (ViewL a) |

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (ViewL a) | Since: containers-0.5.8

Instance details

Defined in Data.Sequence.Internal

type Rep (ViewL a) = D1 ('MetaData "ViewL" "Data.Sequence.Internal" "containers-0.7-inplace" 'False) (C1 ('MetaCons "EmptyL" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons ":<" ('InfixI 'RightAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq a))))

Methods

from :: ViewL a -> Rep (ViewL a) x Source #

to :: Rep (ViewL a) x -> ViewL a Source #

Generic (ViewR a) |

Instance details

Defined in Data.Sequence.Internal

Associated Types

type Rep (ViewR a) | Since: containers-0.5.8

Instance details

Defined in Data.Sequence.Internal

type Rep (ViewR a) = D1 ('MetaData "ViewR" "Data.Sequence.Internal" "containers-0.7-inplace" 'False) (C1 ('MetaCons "EmptyR" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons ":>" ('InfixI 'LeftAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq a)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: ViewR a -> Rep (ViewR a) x Source #

to :: Rep (ViewR a) x -> ViewR a Source #

Generic (Tree a) |

Instance details

Defined in Data.Tree

Associated Types

type Rep (Tree a) | Since: containers-0.5.8
Instance details Defined in Data.Tree type Rep (Tree a) = D1 ('MetaData "Tree" "Data.Tree" "containers-0.7-inplace" 'False) (C1 ('MetaCons "Node" 'PrefixI 'True) (S1 ('MetaSel ('Just "rootLabel") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Just "subForest") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [Tree a])))

Methods

from :: Tree a -> Rep (Tree a) x Source #

to :: Rep (Tree a) x -> Tree a Source #

Generic (NonEmpty a) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (NonEmpty a) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (NonEmpty a) = D1 ('MetaData "NonEmpty" "GHC.Internal.Base" "ghc-internal" 'False) (C1 ('MetaCons ":|" ('InfixI 'RightAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [a])))

Methods

from :: NonEmpty a -> Rep (NonEmpty a) x Source #

to :: Rep (NonEmpty a) x -> NonEmpty a Source #

Generic (Identity a) |

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Associated Types

type Rep (Identity a) | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity type Rep (Identity a) = D1 ('MetaData "Identity" "GHC.Internal.Data.Functor.Identity" "ghc-internal" 'True) (C1 ('MetaCons "Identity" 'PrefixI 'True) (S1 ('MetaSel ('Just "runIdentity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Identity a -> Rep (Identity a) x Source #

to :: Rep (Identity a) x -> Identity a Source #

Generic (Down a) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Down a) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Down a) = D1 ('MetaData "Down" "GHC.Internal.Data.Ord" "ghc-internal" 'True) (C1 ('MetaCons "Down" 'PrefixI 'True) (S1 ('MetaSel ('Just "getDown") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Down a -> Rep (Down a) x Source #

to :: Rep (Down a) x -> Down a Source #

Generic (Par1 p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Par1 p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Par1 p) = D1 ('MetaData "Par1" "GHC.Internal.Generics" "ghc-internal" 'True) (C1 ('MetaCons "Par1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unPar1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 p)))

Methods

from :: Par1 p -> Rep (Par1 p) x Source #

to :: Rep (Par1 p) x -> Par1 p Source #

Generic (Maybe a) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Maybe a) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Maybe a) = D1 ('MetaData "Maybe" "GHC.Internal.Maybe" "ghc-internal" 'False) (C1 ('MetaCons "Nothing" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons "Just" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Maybe a -> Rep (Maybe a) x Source #

to :: Rep (Maybe a) x -> Maybe a Source #

Generic (Solo a) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Solo a) | Since: base-4.15
Instance details Defined in GHC.Internal.Generics type Rep (Solo a) = D1 ('MetaData "Solo" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "MkSolo" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Solo a -> Rep (Solo a) x Source #

to :: Rep (Solo a) x -> Solo a Source #

Generic [a] |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep [a] | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep [a] = D1 ('MetaData "List" "GHC.Types" "ghc-prim" 'False) (C1 ('MetaCons "[]" 'PrefixI 'False) (U1 :: Type -> Type) :+: C1 ('MetaCons ":" ('InfixI 'RightAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [a])))

Methods

from :: [a] -> Rep [a] x Source #

to :: Rep [a] x -> [a] Source #

Generic (WrappedMonad m a) |

Instance details

Defined in Control.Applicative

Associated Types

type Rep (WrappedMonad m a) | Since: base-4.7.0.0
Instance details Defined in Control.Applicative type Rep (WrappedMonad m a) = D1 ('MetaData "WrappedMonad" "Control.Applicative" "base" 'True) (C1 ('MetaCons "WrapMonad" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapMonad") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m a))))

Methods

from :: WrappedMonad m a -> Rep (WrappedMonad m a) x Source #

to :: Rep (WrappedMonad m a) x -> WrappedMonad m a Source #

Generic (Arg a b) |

Instance details

Defined in Data.Semigroup

Associated Types

type Rep (Arg a b) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup type Rep (Arg a b) = D1 ('MetaData "Arg" "Data.Semigroup" "base" 'False) (C1 ('MetaCons "Arg" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)))

Methods

from :: Arg a b -> Rep (Arg a b) x Source #

to :: Rep (Arg a b) x -> Arg a b Source #

Generic (Cofree f a) |

Instance details

Defined in Control.Comonad.Cofree

Associated Types

type Rep (Cofree f a) |

Instance details

Defined in Control.Comonad.Cofree

type Rep (Cofree f a) = D1 ('MetaData "Cofree" "Control.Comonad.Cofree" "free-5.2-BHdQZ57GKqJG8sSoZ4qt27" 'False) (C1 ('MetaCons ":<" ('InfixI 'RightAssociative 5) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (Cofree f a)))))

Methods

from :: Cofree f a -> Rep (Cofree f a) x Source #

to :: Rep (Cofree f a) x -> Cofree f a Source #

Generic (Free f a) |

Instance details

Defined in Control.Monad.Free

Associated Types

type Rep (Free f a) |

Instance details

Defined in Control.Monad.Free

type Rep (Free f a) = D1 ('MetaData "Free" "Control.Monad.Free" "free-5.2-BHdQZ57GKqJG8sSoZ4qt27" 'False) (C1 ('MetaCons "Pure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Free" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (Free f a)))))

Methods

from :: Free f a -> Rep (Free f a) x Source #

to :: Rep (Free f a) x -> Free f a Source #

Generic (Either a b) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Either a b) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (Either a b) = D1 ('MetaData "Either" "GHC.Internal.Data.Either" "ghc-internal" 'False) (C1 ('MetaCons "Left" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Right" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)))

Methods

from :: Either a b -> Rep (Either a b) x Source #

to :: Rep (Either a b) x -> Either a b Source #

Generic (Proxy t) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Proxy t) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Proxy t) = D1 ('MetaData "Proxy" "GHC.Internal.Data.Proxy" "ghc-internal" 'False) (C1 ('MetaCons "Proxy" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: Proxy t -> Rep (Proxy t) x Source #

to :: Rep (Proxy t) x -> Proxy t Source #

Generic (U1 p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (U1 p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics type Rep (U1 p) = D1 ('MetaData "U1" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "U1" 'PrefixI 'False) (U1 :: Type -> Type))

Methods

from :: U1 p -> Rep (U1 p) x Source #

to :: Rep (U1 p) x -> U1 p Source #

Generic (V1 p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (V1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (V1 p) = D1 ('MetaData "V1" "GHC.Internal.Generics" "ghc-internal" 'False) (V1 :: Type -> Type)

Methods

from :: V1 p -> Rep (V1 p) x Source #

to :: Rep (V1 p) x -> V1 p Source #

Generic (Lift f a) |

Instance details

Defined in Control.Applicative.Lift

Associated Types

type Rep (Lift f a) |

Instance details

Defined in Control.Applicative.Lift

type Rep (Lift f a) = D1 ('MetaData "Lift" "Control.Applicative.Lift" "transformers-0.6.1.1-inplace" 'False) (C1 ('MetaCons "Pure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Other" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Lift f a -> Rep (Lift f a) x Source #

to :: Rep (Lift f a) x -> Lift f a Source #

Generic (MaybeT m a) |

Instance details

Defined in Control.Monad.Trans.Maybe

Associated Types

type Rep (MaybeT m a) |
Instance details Defined in Control.Monad.Trans.Maybe type Rep (MaybeT m a) = D1 ('MetaData "MaybeT" "Control.Monad.Trans.Maybe" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "MaybeT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runMaybeT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (Maybe a)))))

Methods

from :: MaybeT m a -> Rep (MaybeT m a) x Source #

to :: Rep (MaybeT m a) x -> MaybeT m a Source #

Generic (a, b) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b) | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics type Rep (a, b) = D1 ('MetaData "Tuple2" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,)" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)))

Methods

from :: (a, b) -> Rep (a, b) x Source #

to :: Rep (a, b) x -> (a, b) Source #

Generic (WrappedArrow a b c) |

Instance details

Defined in Control.Applicative

Associated Types

type Rep (WrappedArrow a b c) | Since: base-4.7.0.0
Instance details Defined in Control.Applicative type Rep (WrappedArrow a b c) = D1 ('MetaData "WrappedArrow" "Control.Applicative" "base" 'True) (C1 ('MetaCons "WrapArrow" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapArrow") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (a b c))))

Methods

from :: WrappedArrow a b c -> Rep (WrappedArrow a b c) x Source #

to :: Rep (WrappedArrow a b c) x -> WrappedArrow a b c Source #

Generic (Biap bi a b) |

Instance details

Defined in Data.Bifunctor.Biap

Associated Types

type Rep (Biap bi a b) |
Instance details Defined in Data.Bifunctor.Biap type Rep (Biap bi a b) = D1 ('MetaData "Biap" "Data.Bifunctor.Biap" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "Biap" 'PrefixI 'True) (S1 ('MetaSel ('Just "getBiap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (bi a b))))

Methods

from :: Biap bi a b -> Rep (Biap bi a b) x Source #

to :: Rep (Biap bi a b) x -> Biap bi a b Source #

Generic (Fix p a) |

Instance details

Defined in Data.Bifunctor.Fix

Associated Types

type Rep (Fix p a) |
Instance details Defined in Data.Bifunctor.Fix type Rep (Fix p a) = D1 ('MetaData "Fix" "Data.Bifunctor.Fix" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "In" 'PrefixI 'True) (S1 ('MetaSel ('Just "out") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p (Fix p a) a))))

Methods

from :: Fix p a -> Rep (Fix p a) x Source #

to :: Rep (Fix p a) x -> Fix p a Source #

Generic (Join p a) |

Instance details

Defined in Data.Bifunctor.Join

Associated Types

type Rep (Join p a) |
Instance details Defined in Data.Bifunctor.Join type Rep (Join p a) = D1 ('MetaData "Join" "Data.Bifunctor.Join" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "Join" 'PrefixI 'True) (S1 ('MetaSel ('Just "runJoin") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a a))))

Methods

from :: Join p a -> Rep (Join p a) x Source #

to :: Rep (Join p a) x -> Join p a Source #

Generic (FreeF f a b) |

Instance details

Defined in Control.Monad.Trans.Free

Associated Types

type Rep (FreeF f a b) |

Instance details

Defined in Control.Monad.Trans.Free

type Rep (FreeF f a b) = D1 ('MetaData "FreeF" "Control.Monad.Trans.Free" "free-5.2-BHdQZ57GKqJG8sSoZ4qt27" 'False) (C1 ('MetaCons "Pure" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)) :+: C1 ('MetaCons "Free" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f b))))

Methods

from :: FreeF f a b -> Rep (FreeF f a b) x Source #

to :: Rep (FreeF f a b) x -> FreeF f a b Source #

Generic (Kleisli m a b) |

Instance details

Defined in GHC.Internal.Control.Arrow

Associated Types

type Rep (Kleisli m a b) | Since: base-4.14.0.0
Instance details Defined in GHC.Internal.Control.Arrow type Rep (Kleisli m a b) = D1 ('MetaData "Kleisli" "GHC.Internal.Control.Arrow" "ghc-internal" 'True) (C1 ('MetaCons "Kleisli" 'PrefixI 'True) (S1 ('MetaSel ('Just "runKleisli") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (a -> m b))))

Methods

from :: Kleisli m a b -> Rep (Kleisli m a b) x Source #

to :: Rep (Kleisli m a b) x -> Kleisli m a b Source #

Generic (Rec1 f p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (Rec1 f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics type Rep (Rec1 f p) = D1 ('MetaData "Rec1" "GHC.Internal.Generics" "ghc-internal" 'True) (C1 ('MetaCons "Rec1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unRec1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f p))))

Methods

from :: Rec1 f p -> Rep (Rec1 f p) x Source #

to :: Rep (Rec1 f p) x -> Rec1 f p Source #

Generic (URec (Ptr ()) p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec (Ptr ()) p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec (Ptr ()) p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UAddr" 'PrefixI 'True) (S1 ('MetaSel ('Just "uAddr#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UAddr :: Type -> Type)))

Methods

from :: URec (Ptr ()) p -> Rep (URec (Ptr ()) p) x Source #

to :: Rep (URec (Ptr ()) p) x -> URec (Ptr ()) p Source #

Generic (URec Char p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Char p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Char p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UChar" 'PrefixI 'True) (S1 ('MetaSel ('Just "uChar#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UChar :: Type -> Type)))

Methods

from :: URec Char p -> Rep (URec Char p) x Source #

to :: Rep (URec Char p) x -> URec Char p Source #

Generic (URec Double p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Double p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Double p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UDouble" 'PrefixI 'True) (S1 ('MetaSel ('Just "uDouble#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UDouble :: Type -> Type)))

Methods

from :: URec Double p -> Rep (URec Double p) x Source #

to :: Rep (URec Double p) x -> URec Double p Source #

Generic (URec Float p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Float p) |
Instance details Defined in GHC.Internal.Generics type Rep (URec Float p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UFloat" 'PrefixI 'True) (S1 ('MetaSel ('Just "uFloat#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UFloat :: Type -> Type)))

Methods

from :: URec Float p -> Rep (URec Float p) x Source #

to :: Rep (URec Float p) x -> URec Float p Source #

Generic (URec Int p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Int p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Int p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UInt" 'PrefixI 'True) (S1 ('MetaSel ('Just "uInt#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UInt :: Type -> Type)))

Methods

from :: URec Int p -> Rep (URec Int p) x Source #

to :: Rep (URec Int p) x -> URec Int p Source #

Generic (URec Word p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (URec Word p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics type Rep (URec Word p) = D1 ('MetaData "URec" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "UWord" 'PrefixI 'True) (S1 ('MetaSel ('Just "uWord#") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (UWord :: Type -> Type)))

Methods

from :: URec Word p -> Rep (URec Word p) x Source #

to :: Rep (URec Word p) x -> URec Word p Source #

Generic (Tagged s b) |

Instance details

Defined in Data.Tagged

Associated Types

type Rep (Tagged s b) |
Instance details Defined in Data.Tagged type Rep (Tagged s b) = D1 ('MetaData "Tagged" "Data.Tagged" "tagged-0.8.9-EraSdp0lx7uJnqESyrqLTP" 'True) (C1 ('MetaCons "Tagged" 'PrefixI 'True) (S1 ('MetaSel ('Just "unTagged") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)))

Methods

from :: Tagged s b -> Rep (Tagged s b) x Source #

to :: Rep (Tagged s b) x -> Tagged s b Source #

Generic (Backwards f a) |

Instance details

Defined in Control.Applicative.Backwards

Associated Types

type Rep (Backwards f a) |
Instance details Defined in Control.Applicative.Backwards type Rep (Backwards f a) = D1 ('MetaData "Backwards" "Control.Applicative.Backwards" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "Backwards" 'PrefixI 'True) (S1 ('MetaSel ('Just "forwards") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Backwards f a -> Rep (Backwards f a) x Source #

to :: Rep (Backwards f a) x -> Backwards f a Source #

Generic (AccumT w m a) |

Instance details

Defined in Control.Monad.Trans.Accum

Associated Types

type Rep (AccumT w m a) |
Instance details Defined in Control.Monad.Trans.Accum type Rep (AccumT w m a) = D1 ('MetaData "AccumT" "Control.Monad.Trans.Accum" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "AccumT" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (w -> m (a, w)))))

Methods

from :: AccumT w m a -> Rep (AccumT w m a) x Source #

to :: Rep (AccumT w m a) x -> AccumT w m a Source #

Generic (ExceptT e m a) |

Instance details

Defined in Control.Monad.Trans.Except

Associated Types

type Rep (ExceptT e m a) |
Instance details Defined in Control.Monad.Trans.Except type Rep (ExceptT e m a) = D1 ('MetaData "ExceptT" "Control.Monad.Trans.Except" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "ExceptT" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (Either e a)))))

Methods

from :: ExceptT e m a -> Rep (ExceptT e m a) x Source #

to :: Rep (ExceptT e m a) x -> ExceptT e m a Source #

Generic (IdentityT f a) |

Instance details

Defined in Control.Monad.Trans.Identity

Associated Types

type Rep (IdentityT f a) |
Instance details Defined in Control.Monad.Trans.Identity type Rep (IdentityT f a) = D1 ('MetaData "IdentityT" "Control.Monad.Trans.Identity" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "IdentityT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runIdentityT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: IdentityT f a -> Rep (IdentityT f a) x Source #

to :: Rep (IdentityT f a) x -> IdentityT f a Source #

Generic (ReaderT r m a) |

Instance details

Defined in Control.Monad.Trans.Reader

Associated Types

type Rep (ReaderT r m a) |
Instance details Defined in Control.Monad.Trans.Reader type Rep (ReaderT r m a) = D1 ('MetaData "ReaderT" "Control.Monad.Trans.Reader" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "ReaderT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runReaderT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> m a))))

Methods

from :: ReaderT r m a -> Rep (ReaderT r m a) x Source #

to :: Rep (ReaderT r m a) x -> ReaderT r m a Source #

Generic (SelectT r m a) |

Instance details

Defined in Control.Monad.Trans.Select

Associated Types

type Rep (SelectT r m a) |
Instance details Defined in Control.Monad.Trans.Select type Rep (SelectT r m a) = D1 ('MetaData "SelectT" "Control.Monad.Trans.Select" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "SelectT" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ((a -> m r) -> m a))))

Methods

from :: SelectT r m a -> Rep (SelectT r m a) x Source #

to :: Rep (SelectT r m a) x -> SelectT r m a Source #

Generic (StateT s m a) |

Instance details

Defined in Control.Monad.Trans.State.Lazy

Associated Types

type Rep (StateT s m a) |
Instance details Defined in Control.Monad.Trans.State.Lazy type Rep (StateT s m a) = D1 ('MetaData "StateT" "Control.Monad.Trans.State.Lazy" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "StateT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runStateT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (s -> m (a, s)))))

Methods

from :: StateT s m a -> Rep (StateT s m a) x Source #

to :: Rep (StateT s m a) x -> StateT s m a Source #

Generic (StateT s m a) |

Instance details

Defined in Control.Monad.Trans.State.Strict

Associated Types

type Rep (StateT s m a) |
Instance details Defined in Control.Monad.Trans.State.Strict type Rep (StateT s m a) = D1 ('MetaData "StateT" "Control.Monad.Trans.State.Strict" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "StateT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runStateT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (s -> m (a, s)))))

Methods

from :: StateT s m a -> Rep (StateT s m a) x Source #

to :: Rep (StateT s m a) x -> StateT s m a Source #

Generic (WriterT w m a) |

Instance details

Defined in Control.Monad.Trans.Writer.CPS

Associated Types

type Rep (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.CPS type Rep (WriterT w m a) = D1 ('MetaData "WriterT" "Control.Monad.Trans.Writer.CPS" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "WriterT" 'PrefixI 'True) (S1 ('MetaSel ('Just "unWriterT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (w -> m (a, w)))))

Methods

from :: WriterT w m a -> Rep (WriterT w m a) x Source #

to :: Rep (WriterT w m a) x -> WriterT w m a Source #

Generic (WriterT w m a) |

Instance details

Defined in Control.Monad.Trans.Writer.Lazy

Associated Types

type Rep (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy type Rep (WriterT w m a) = D1 ('MetaData "WriterT" "Control.Monad.Trans.Writer.Lazy" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "WriterT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runWriterT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (a, w)))))

Methods

from :: WriterT w m a -> Rep (WriterT w m a) x Source #

to :: Rep (WriterT w m a) x -> WriterT w m a Source #

Generic (WriterT w m a) |

Instance details

Defined in Control.Monad.Trans.Writer.Strict

Associated Types

type Rep (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Strict type Rep (WriterT w m a) = D1 ('MetaData "WriterT" "Control.Monad.Trans.Writer.Strict" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "WriterT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runWriterT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (m (a, w)))))

Methods

from :: WriterT w m a -> Rep (WriterT w m a) x Source #

to :: Rep (WriterT w m a) x -> WriterT w m a Source #

Generic (Constant a b) |

Instance details

Defined in Data.Functor.Constant

Associated Types

type Rep (Constant a b) |
Instance details Defined in Data.Functor.Constant type Rep (Constant a b) = D1 ('MetaData "Constant" "Data.Functor.Constant" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "Constant" 'PrefixI 'True) (S1 ('MetaSel ('Just "getConstant") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Constant a b -> Rep (Constant a b) x Source #

to :: Rep (Constant a b) x -> Constant a b Source #

Generic (Reverse f a) |

Instance details

Defined in Data.Functor.Reverse

Associated Types

type Rep (Reverse f a) |
Instance details Defined in Data.Functor.Reverse type Rep (Reverse f a) = D1 ('MetaData "Reverse" "Data.Functor.Reverse" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "Reverse" 'PrefixI 'True) (S1 ('MetaSel ('Just "getReverse") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Reverse f a -> Rep (Reverse f a) x Source #

to :: Rep (Reverse f a) x -> Reverse f a Source #

Generic (a, b, c) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c) = D1 ('MetaData "Tuple3" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,)" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))))

Methods

from :: (a, b, c) -> Rep (a, b, c) x Source #

to :: Rep (a, b, c) x -> (a, b, c) Source #

Generic (Product f g a) |

Instance details

Defined in Data.Functor.Product

Associated Types

type Rep (Product f g a) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Product

type Rep (Product f g a) = D1 ('MetaData "Product" "Data.Functor.Product" "base" 'False) (C1 ('MetaCons "Pair" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g a))))

Methods

from :: Product f g a -> Rep (Product f g a) x Source #

to :: Rep (Product f g a) x -> Product f g a Source #

Generic (Sum f g a) |

Instance details

Defined in Data.Functor.Sum

Associated Types

type Rep (Sum f g a) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Sum

type Rep (Sum f g a) = D1 ('MetaData "Sum" "Data.Functor.Sum" "base" 'False) (C1 ('MetaCons "InL" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))) :+: C1 ('MetaCons "InR" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g a))))

Methods

from :: Sum f g a -> Rep (Sum f g a) x Source #

to :: Rep (Sum f g a) x -> Sum f g a Source #

Generic ((f :*: g) p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep ((f :*: g) p) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep ((f :*: g) p) = D1 ('MetaData ":*:" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons ":*:" ('InfixI 'RightAssociative 6) 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f p)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g p))))

Methods

from :: (f :*: g) p -> Rep ((f :*: g) p) x Source #

to :: Rep ((f :*: g) p) x -> (f :*: g) p Source #

Generic ((f :+: g) p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep ((f :+: g) p) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep ((f :+: g) p) = D1 ('MetaData ":+:" "GHC.Internal.Generics" "ghc-internal" 'False) (C1 ('MetaCons "L1" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f p))) :+: C1 ('MetaCons "R1" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g p))))

Methods

from :: (f :+: g) p -> Rep ((f :+: g) p) x Source #

to :: Rep ((f :+: g) p) x -> (f :+: g) p Source #

Generic (K1 i c p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (K1 i c p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics type Rep (K1 i c p) = D1 ('MetaData "K1" "GHC.Internal.Generics" "ghc-internal" 'True) (C1 ('MetaCons "K1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unK1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c)))

Methods

from :: K1 i c p -> Rep (K1 i c p) x Source #

to :: Rep (K1 i c p) x -> K1 i c p Source #

Generic (ContT r m a) |

Instance details

Defined in Control.Monad.Trans.Cont

Associated Types

type Rep (ContT r m a) |
Instance details Defined in Control.Monad.Trans.Cont type Rep (ContT r m a) = D1 ('MetaData "ContT" "Control.Monad.Trans.Cont" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "ContT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runContT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ((a -> m r) -> m r))))

Methods

from :: ContT r m a -> Rep (ContT r m a) x Source #

to :: Rep (ContT r m a) x -> ContT r m a Source #

Generic (a, b, c, d) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d) = D1 ('MetaData "Tuple4" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,)" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d))))

Methods

from :: (a, b, c, d) -> Rep (a, b, c, d) x Source #

to :: Rep (a, b, c, d) x -> (a, b, c, d) Source #

Generic (Compose f g a) |

Instance details

Defined in Data.Functor.Compose

Associated Types

type Rep (Compose f g a) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Compose type Rep (Compose f g a) = D1 ('MetaData "Compose" "Data.Functor.Compose" "base" 'True) (C1 ('MetaCons "Compose" 'PrefixI 'True) (S1 ('MetaSel ('Just "getCompose") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (g a)))))

Methods

from :: Compose f g a -> Rep (Compose f g a) x Source #

to :: Rep (Compose f g a) x -> Compose f g a Source #

Generic (Clown f a b) |

Instance details

Defined in Data.Bifunctor.Clown

Associated Types

type Rep (Clown f a b) |
Instance details Defined in Data.Bifunctor.Clown type Rep (Clown f a b) = D1 ('MetaData "Clown" "Data.Bifunctor.Clown" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "Clown" 'PrefixI 'True) (S1 ('MetaSel ('Just "runClown") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a))))

Methods

from :: Clown f a b -> Rep (Clown f a b) x Source #

to :: Rep (Clown f a b) x -> Clown f a b Source #

Generic (Flip p a b) |

Instance details

Defined in Data.Bifunctor.Flip

Associated Types

type Rep (Flip p a b) |
Instance details Defined in Data.Bifunctor.Flip type Rep (Flip p a b) = D1 ('MetaData "Flip" "Data.Bifunctor.Flip" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "Flip" 'PrefixI 'True) (S1 ('MetaSel ('Just "runFlip") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p b a))))

Methods

from :: Flip p a b -> Rep (Flip p a b) x Source #

to :: Rep (Flip p a b) x -> Flip p a b Source #

Generic (Joker g a b) |

Instance details

Defined in Data.Bifunctor.Joker

Associated Types

type Rep (Joker g a b) |
Instance details Defined in Data.Bifunctor.Joker type Rep (Joker g a b) = D1 ('MetaData "Joker" "Data.Bifunctor.Joker" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "Joker" 'PrefixI 'True) (S1 ('MetaSel ('Just "runJoker") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g b))))

Methods

from :: Joker g a b -> Rep (Joker g a b) x Source #

to :: Rep (Joker g a b) x -> Joker g a b Source #

Generic (WrappedBifunctor p a b) |

Instance details

Defined in Data.Bifunctor.Wrapped

Associated Types

type Rep (WrappedBifunctor p a b) |
Instance details Defined in Data.Bifunctor.Wrapped type Rep (WrappedBifunctor p a b) = D1 ('MetaData "WrappedBifunctor" "Data.Bifunctor.Wrapped" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "WrapBifunctor" 'PrefixI 'True) (S1 ('MetaSel ('Just "unwrapBifunctor") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a b))))

Methods

from :: WrappedBifunctor p a b -> Rep (WrappedBifunctor p a b) x Source #

to :: Rep (WrappedBifunctor p a b) x -> WrappedBifunctor p a b Source #

Generic ((f :.: g) p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep ((f :.: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics type Rep ((f :.: g) p) = D1 ('MetaData ":.:" "GHC.Internal.Generics" "ghc-internal" 'True) (C1 ('MetaCons "Comp1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unComp1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (g p)))))

Methods

from :: (f :.: g) p -> Rep ((f :.: g) p) x Source #

to :: Rep ((f :.: g) p) x -> (f :.: g) p Source #

Generic (M1 i c f p) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (M1 i c f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics type Rep (M1 i c f p) = D1 ('MetaData "M1" "GHC.Internal.Generics" "ghc-internal" 'True) (C1 ('MetaCons "M1" 'PrefixI 'True) (S1 ('MetaSel ('Just "unM1") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f p))))

Methods

from :: M1 i c f p -> Rep (M1 i c f p) x Source #

to :: Rep (M1 i c f p) x -> M1 i c f p Source #

Generic (RWST r w s m a) |

Instance details

Defined in Control.Monad.Trans.RWS.CPS

Associated Types

type Rep (RWST r w s m a) |
Instance details Defined in Control.Monad.Trans.RWS.CPS type Rep (RWST r w s m a) = D1 ('MetaData "RWST" "Control.Monad.Trans.RWS.CPS" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "RWST" 'PrefixI 'True) (S1 ('MetaSel ('Just "unRWST") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> s -> w -> m (a, s, w)))))

Methods

from :: RWST r w s m a -> Rep (RWST r w s m a) x Source #

to :: Rep (RWST r w s m a) x -> RWST r w s m a Source #

Generic (RWST r w s m a) |

Instance details

Defined in Control.Monad.Trans.RWS.Lazy

Associated Types

type Rep (RWST r w s m a) |
Instance details Defined in Control.Monad.Trans.RWS.Lazy type Rep (RWST r w s m a) = D1 ('MetaData "RWST" "Control.Monad.Trans.RWS.Lazy" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "RWST" 'PrefixI 'True) (S1 ('MetaSel ('Just "runRWST") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> s -> m (a, s, w)))))

Methods

from :: RWST r w s m a -> Rep (RWST r w s m a) x Source #

to :: Rep (RWST r w s m a) x -> RWST r w s m a Source #

Generic (RWST r w s m a) |

Instance details

Defined in Control.Monad.Trans.RWS.Strict

Associated Types

type Rep (RWST r w s m a) |
Instance details Defined in Control.Monad.Trans.RWS.Strict type Rep (RWST r w s m a) = D1 ('MetaData "RWST" "Control.Monad.Trans.RWS.Strict" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "RWST" 'PrefixI 'True) (S1 ('MetaSel ('Just "runRWST") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> s -> m (a, s, w)))))

Methods

from :: RWST r w s m a -> Rep (RWST r w s m a) x Source #

to :: Rep (RWST r w s m a) x -> RWST r w s m a Source #

Generic (a, b, c, d, e) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e) = D1 ('MetaData "Tuple5" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,)" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e)))))

Methods

from :: (a, b, c, d, e) -> Rep (a, b, c, d, e) x Source #

to :: Rep (a, b, c, d, e) x -> (a, b, c, d, e) Source #

Generic (Product f g a b) |

Instance details

Defined in Data.Bifunctor.Product

Associated Types

type Rep (Product f g a b) |

Instance details

Defined in Data.Bifunctor.Product

type Rep (Product f g a b) = D1 ('MetaData "Product" "Data.Bifunctor.Product" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'False) (C1 ('MetaCons "Pair" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f a b)) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (g a b))))

Methods

from :: Product f g a b -> Rep (Product f g a b) x Source #

to :: Rep (Product f g a b) x -> Product f g a b Source #

Generic (Sum p q a b) |

Instance details

Defined in Data.Bifunctor.Sum

Associated Types

type Rep (Sum p q a b) |

Instance details

Defined in Data.Bifunctor.Sum

type Rep (Sum p q a b) = D1 ('MetaData "Sum" "Data.Bifunctor.Sum" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'False) (C1 ('MetaCons "L2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p a b))) :+: C1 ('MetaCons "R2" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (q a b))))

Methods

from :: Sum p q a b -> Rep (Sum p q a b) x Source #

to :: Rep (Sum p q a b) x -> Sum p q a b Source #

Generic (a, b, c, d, e, f) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f) = D1 ('MetaData "Tuple6" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,)" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f)))))

Methods

from :: (a, b, c, d, e, f) -> Rep (a, b, c, d, e, f) x Source #

to :: Rep (a, b, c, d, e, f) x -> (a, b, c, d, e, f) Source #

Generic (Tannen f p a b) |

Instance details

Defined in Data.Bifunctor.Tannen

Associated Types

type Rep (Tannen f p a b) |
Instance details Defined in Data.Bifunctor.Tannen type Rep (Tannen f p a b) = D1 ('MetaData "Tannen" "Data.Bifunctor.Tannen" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "Tannen" 'PrefixI 'True) (S1 ('MetaSel ('Just "runTannen") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (f (p a b)))))

Methods

from :: Tannen f p a b -> Rep (Tannen f p a b) x Source #

to :: Rep (Tannen f p a b) x -> Tannen f p a b Source #

Generic (a, b, c, d, e, f, g) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g) | Since: base-4.6.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g) = D1 ('MetaData "Tuple7" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,)" 'PrefixI 'False) ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g)))))

Methods

from :: (a, b, c, d, e, f, g) -> Rep (a, b, c, d, e, f, g) x Source #

to :: Rep (a, b, c, d, e, f, g) x -> (a, b, c, d, e, f, g) Source #

Generic (a, b, c, d, e, f, g, h) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h) | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g, h) = D1 ('MetaData "Tuple8" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h)))))

Methods

from :: (a, b, c, d, e, f, g, h) -> Rep (a, b, c, d, e, f, g, h) x Source #

to :: Rep (a, b, c, d, e, f, g, h) x -> (a, b, c, d, e, f, g, h) Source #

Generic (Biff p f g a b) |

Instance details

Defined in Data.Bifunctor.Biff

Associated Types

type Rep (Biff p f g a b) |
Instance details Defined in Data.Bifunctor.Biff type Rep (Biff p f g a b) = D1 ('MetaData "Biff" "Data.Bifunctor.Biff" "bifunctors-5.6.2-4kXyA9Yl2Ys9aGae1sUdxu" 'True) (C1 ('MetaCons "Biff" 'PrefixI 'True) (S1 ('MetaSel ('Just "runBiff") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (p (f a) (g b)))))

Methods

from :: Biff p f g a b -> Rep (Biff p f g a b) x Source #

to :: Rep (Biff p f g a b) x -> Biff p f g a b Source #

Generic (a, b, c, d, e, f, g, h, i) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i) | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g, h, i) = D1 ('MetaData "Tuple9" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i))))))

Methods

from :: (a, b, c, d, e, f, g, h, i) -> Rep (a, b, c, d, e, f, g, h, i) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i) x -> (a, b, c, d, e, f, g, h, i) Source #

Generic (a, b, c, d, e, f, g, h, i, j) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j) | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g, h, i, j) = D1 ('MetaData "Tuple10" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e)))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j) -> Rep (a, b, c, d, e, f, g, h, i, j) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j) x -> (a, b, c, d, e, f, g, h, i, j) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k) | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g, h, i, j, k) = D1 ('MetaData "Tuple11" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e)))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 k))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k) -> Rep (a, b, c, d, e, f, g, h, i, j, k) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k) x -> (a, b, c, d, e, f, g, h, i, j, k) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k, l) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l) | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g, h, i, j, k, l) = D1 ('MetaData "Tuple12" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f)))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 k) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 l))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l) x -> (a, b, c, d, e, f, g, h, i, j, k, l) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) = D1 ('MetaData "Tuple13" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f)))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 k)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 l) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m, n) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) = D1 ('MetaData "Tuple14" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g)))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 k) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 l)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 n))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) Source #

Generic (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) |

Instance details

Defined in GHC.Internal.Generics

Associated Types

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) | Since: base-4.16.0.0

Instance details

Defined in GHC.Internal.Generics

type Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) = D1 ('MetaData "Tuple15" "GHC.Tuple" "ghc-prim" 'False) (C1 ('MetaCons "(,,,,,,,,,,,,,,)" 'PrefixI 'False) (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 b) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 c))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 d) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 e)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 f) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 g)))) :*: (((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 h) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 i)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 j) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 k))) :*: ((S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 l) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 m)) :*: (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 n) :*: S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 o))))))

Methods

from :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) x Source #

to :: Rep (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) x -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) Source #

## Transformers (since 0.9.4)

newtype Identity a Source #

Identity functor and monad. (a non-strict monad)

#### Examples

Expand

    >>> fmap (+1) (Identity 0)
    Identity 1

    >>> Identity [1, 2, 3] <> Identity [4, 5, 6]
    Identity [1,2,3,4,5,6]

    >>> do
          x <- Identity 10
          y <- Identity (x + 5)
          pure (x + y)
    Identity 25

Since: base-4.8.0.0

Constructors

Identity |

Fields

- runIdentity :: a

#### Instances

Instances details

Representable Identity |

Instance details

Defined in Data.Functor.Rep

Associated Types

type Rep Identity |
Instance details Defined in Data.Functor.Rep type Rep Identity = ()

Methods

tabulate :: (Rep Identity -> a) -> Identity a

index :: Identity a -> Rep Identity -> a

MonadZip Identity | Since: base-4.8.0.0
Instance details Defined in Control.Monad.Zip Methods mzip :: Identity a -> Identity b -> Identity (a, b) Source # mzipWith :: (a -> b -> c) -> Identity a -> Identity b -> Identity c Source # munzip :: Identity (a, b) -> (Identity a, Identity b) Source #
Foldable1 Identity | Since: base-4.18.0.0

Instance details

Defined in Data.Foldable1

Methods

fold1 :: Semigroup m => Identity m -> m Source #

foldMap1 :: Semigroup m => (a -> m) -> Identity a -> m Source #

foldMap1' :: Semigroup m => (a -> m) -> Identity a -> m Source #

toNonEmpty :: Identity a -> NonEmpty a Source #

maximum :: Ord a => Identity a -> a Source #

minimum :: Ord a => Identity a -> a Source #

head :: Identity a -> a Source #

last :: Identity a -> a Source #

foldrMap1 :: (a -> b) -> (a -> b -> b) -> Identity a -> b Source #

foldlMap1' :: (a -> b) -> (b -> a -> b) -> Identity a -> b Source #

foldlMap1 :: (a -> b) -> (b -> a -> b) -> Identity a -> b Source #

foldrMap1' :: (a -> b) -> (a -> b -> b) -> Identity a -> b Source #

Eq1 Identity | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftEq :: (a -> b -> Bool) -> Identity a -> Identity b -> Bool Source #
Ord1 Identity | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftCompare :: (a -> b -> Ordering) -> Identity a -> Identity b -> Ordering Source #
Read1 Identity | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftReadsPrec :: (Int -> ReadS a) -> ReadS [a] -> Int -> ReadS (Identity a) Source # liftReadList :: (Int -> ReadS a) -> ReadS [a] -> ReadS [Identity a] Source # liftReadPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec (Identity a) Source # liftReadListPrec :: ReadPrec a -> ReadPrec [a] -> ReadPrec [Identity a] Source #
Show1 Identity | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Classes Methods liftShowsPrec :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> Int -> Identity a -> ShowS Source # liftShowList :: (Int -> a -> ShowS) -> ([a] -> ShowS) -> [Identity a] -> ShowS Source #
NFData1 Identity | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods liftRnf :: (a -> ()) -> Identity a -> () Source #
Applicative Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods pure :: a -> Identity a Source # (<*>) :: Identity (a -> b) -> Identity a -> Identity b Source # liftA2 :: (a -> b -> c) -> Identity a -> Identity b -> Identity c Source # (*>) :: Identity a -> Identity b -> Identity b Source # (<*) :: Identity a -> Identity b -> Identity a Source #
Functor Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods fmap :: (a -> b) -> Identity a -> Identity b Source # (<$) :: a -> Identity b -> Identity a Source #
Monad Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods (>>=) :: Identity a -> (a -> Identity b) -> Identity b Source # (>>) :: Identity a -> Identity b -> Identity b Source # return :: a -> Identity a Source #
MonadFix Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods mfix :: (a -> Identity a) -> Identity a Source #
Foldable Identity | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

fold :: Monoid m => Identity m -> m Source #

foldMap :: Monoid m => (a -> m) -> Identity a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Identity a -> m Source #

foldr :: (a -> b -> b) -> b -> Identity a -> b Source #

foldr' :: (a -> b -> b) -> b -> Identity a -> b Source #

foldl :: (b -> a -> b) -> b -> Identity a -> b Source #

foldl' :: (b -> a -> b) -> b -> Identity a -> b Source #

foldr1 :: (a -> a -> a) -> Identity a -> a Source #

foldl1 :: (a -> a -> a) -> Identity a -> a Source #

toList :: Identity a -> [a] Source #

null :: Identity a -> Bool Source #

length :: Identity a -> Int Source #

elem :: Eq a => a -> Identity a -> Bool Source #

maximum :: Ord a => Identity a -> a Source #

minimum :: Ord a => Identity a -> a Source #

sum :: Num a => Identity a -> a Source #

product :: Num a => Identity a -> a Source #

Traversable Identity | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Identity a -> f (Identity b) Source # sequenceA :: Applicative f => Identity (f a) -> f (Identity a) Source # mapM :: Monad m => (a -> m b) -> Identity a -> m (Identity b) Source # sequence :: Monad m => Identity (m a) -> m (Identity a) Source #
Hashable1 Identity |
Instance details Defined in Data.Hashable.Class Methods liftHashWithSalt :: (Int -> a -> Int) -> Int -> Identity a -> Int Source #
Adjustable Identity |
Instance details Defined in Data.Key Methods adjust :: (a -> a) -> Key Identity -> Identity a -> Identity a replace :: Key Identity -> a -> Identity a -> Identity a
FoldableWithKey Identity |
Instance details Defined in Data.Key Methods toKeyedList :: Identity a -> [(Key Identity, a)] foldMapWithKey :: Monoid m => (Key Identity -> a -> m) -> Identity a -> m foldrWithKey :: (Key Identity -> a -> b -> b) -> b -> Identity a -> b foldlWithKey :: (b -> Key Identity -> a -> b) -> b -> Identity a -> b
FoldableWithKey1 Identity |
Instance details Defined in Data.Key Methods foldMapWithKey1 :: Semigroup m => (Key Identity -> a -> m) -> Identity a -> m
Indexable Identity |
Instance details Defined in Data.Key Methods index :: Identity a -> Key Identity -> a
Keyed Identity |
Instance details Defined in Data.Key Methods mapWithKey :: (Key Identity -> a -> b) -> Identity a -> Identity b
Lookup Identity |
Instance details Defined in Data.Key Methods lookup :: Key Identity -> Identity a -> Maybe a
TraversableWithKey Identity |
Instance details Defined in Data.Key Methods traverseWithKey :: Applicative f => (Key Identity -> a -> f b) -> Identity a -> f (Identity b) mapWithKeyM :: Monad m => (Key Identity -> a -> m b) -> Identity a -> m (Identity b)
TraversableWithKey1 Identity |
Instance details Defined in Data.Key Methods traverseWithKey1 :: Apply f => (Key Identity -> a -> f b) -> Identity a -> f (Identity b)
Zip Identity |
Instance details Defined in Data.Key Methods zipWith :: (a -> b -> c) -> Identity a -> Identity b -> Identity c zip :: Identity a -> Identity b -> Identity (a, b) zap :: Identity (a -> b) -> Identity a -> Identity b
ZipWithKey Identity |
Instance details Defined in Data.Key Methods zipWithKey :: (Key Identity -> a -> b -> c) -> Identity a -> Identity b -> Identity c zapWithKey :: Identity (Key Identity -> a -> b) -> Identity a -> Identity b
Generic1 Identity |

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Associated Types

type Rep1 Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity type Rep1 Identity = D1 ('MetaData "Identity" "GHC.Internal.Data.Functor.Identity" "ghc-internal" 'True) (C1 ('MetaCons "Identity" 'PrefixI 'True) (S1 ('MetaSel ('Just "runIdentity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))

Methods

from1 :: Identity a -> Rep1 Identity a Source #

to1 :: Rep1 Identity a -> Identity a Source #

Unbox a => Vector Vector (Identity a) |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicUnsafeFreeze :: Mutable Vector s (Identity a) -> ST s (Vector (Identity a))

basicUnsafeThaw :: Vector (Identity a) -> ST s (Mutable Vector s (Identity a))

basicLength :: Vector (Identity a) -> Int

basicUnsafeSlice :: Int -> Int -> Vector (Identity a) -> Vector (Identity a)

basicUnsafeIndexM :: Vector (Identity a) -> Int -> Box (Identity a)

basicUnsafeCopy :: Mutable Vector s (Identity a) -> Vector (Identity a) -> ST s ()

elemseq :: Vector (Identity a) -> Identity a -> b -> b

Unbox a => MVector MVector (Identity a) |

Instance details

Defined in Data.Vector.Unboxed.Base

Methods

basicLength :: MVector s (Identity a) -> Int

basicUnsafeSlice :: Int -> Int -> MVector s (Identity a) -> MVector s (Identity a)

basicOverlaps :: MVector s (Identity a) -> MVector s (Identity a) -> Bool

basicUnsafeNew :: Int -> ST s (MVector s (Identity a))

basicInitialize :: MVector s (Identity a) -> ST s ()

basicUnsafeReplicate :: Int -> Identity a -> ST s (MVector s (Identity a))

basicUnsafeRead :: MVector s (Identity a) -> Int -> ST s (Identity a)

basicUnsafeWrite :: MVector s (Identity a) -> Int -> Identity a -> ST s ()

basicClear :: MVector s (Identity a) -> ST s ()

basicSet :: MVector s (Identity a) -> Identity a -> ST s ()

basicUnsafeCopy :: MVector s (Identity a) -> MVector s (Identity a) -> ST s ()

basicUnsafeMove :: MVector s (Identity a) -> MVector s (Identity a) -> ST s ()

basicUnsafeGrow :: MVector s (Identity a) -> Int -> ST s (MVector s (Identity a))

Monoid w => MonadAccum w (AccumT w Identity) | Since: mtl-2.3
Instance details Defined in Control.Monad.Accum Methods look :: AccumT w Identity w Source # add :: w -> AccumT w Identity () Source # accum :: (w -> (a, w)) -> AccumT w Identity a Source #
MonadSelect r (SelectT r Identity) | Since: mtl-2.3
Instance details Defined in Control.Monad.Select Methods select :: ((a -> r) -> a) -> SelectT r Identity a Source #
NFData a => NFData (Identity a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Identity a -> () Source #
Monoid a => Monoid (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods mempty :: Identity a Source # mappend :: Identity a -> Identity a -> Identity a Source # mconcat :: [Identity a] -> Identity a Source #
Semigroup a => Semigroup (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods (<>) :: Identity a -> Identity a -> Identity a Source # sconcat :: NonEmpty (Identity a) -> Identity a Source # stimes :: Integral b => b -> Identity a -> Identity a Source #
Bits a => Bits (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

(.&.) :: Identity a -> Identity a -> Identity a Source #

(.|.) :: Identity a -> Identity a -> Identity a Source #

xor :: Identity a -> Identity a -> Identity a Source #

complement :: Identity a -> Identity a Source #

shift :: Identity a -> Int -> Identity a Source #

rotate :: Identity a -> Int -> Identity a Source #

zeroBits :: Identity a Source #

bit :: Int -> Identity a Source #

setBit :: Identity a -> Int -> Identity a Source #

clearBit :: Identity a -> Int -> Identity a Source #

complementBit :: Identity a -> Int -> Identity a Source #

testBit :: Identity a -> Int -> Bool Source #

bitSizeMaybe :: Identity a -> Maybe Int Source #

bitSize :: Identity a -> Int Source #

isSigned :: Identity a -> Bool Source #

shiftL :: Identity a -> Int -> Identity a Source #

unsafeShiftL :: Identity a -> Int -> Identity a Source #

shiftR :: Identity a -> Int -> Identity a Source #

unsafeShiftR :: Identity a -> Int -> Identity a Source #

rotateL :: Identity a -> Int -> Identity a Source #

rotateR :: Identity a -> Int -> Identity a Source #

popCount :: Identity a -> Int Source #

FiniteBits a => FiniteBits (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods finiteBitSize :: Identity a -> Int Source # countLeadingZeros :: Identity a -> Int Source # countTrailingZeros :: Identity a -> Int Source #
IsString a => IsString (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.String Methods fromString :: String -> Identity a Source #
Bounded a => Bounded (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods minBound :: Identity a Source # maxBound :: Identity a Source #
Enum a => Enum (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

succ :: Identity a -> Identity a Source #

pred :: Identity a -> Identity a Source #

toEnum :: Int -> Identity a Source #

fromEnum :: Identity a -> Int Source #

enumFrom :: Identity a -> [Identity a] Source #

enumFromThen :: Identity a -> Identity a -> [Identity a] Source #

enumFromTo :: Identity a -> Identity a -> [Identity a] Source #

enumFromThenTo :: Identity a -> Identity a -> Identity a -> [Identity a] Source #

Floating a => Floating (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

pi :: Identity a Source #

exp :: Identity a -> Identity a Source #

log :: Identity a -> Identity a Source #

sqrt :: Identity a -> Identity a Source #

(**) :: Identity a -> Identity a -> Identity a Source #

logBase :: Identity a -> Identity a -> Identity a Source #

sin :: Identity a -> Identity a Source #

cos :: Identity a -> Identity a Source #

tan :: Identity a -> Identity a Source #

asin :: Identity a -> Identity a Source #

acos :: Identity a -> Identity a Source #

atan :: Identity a -> Identity a Source #

sinh :: Identity a -> Identity a Source #

cosh :: Identity a -> Identity a Source #

tanh :: Identity a -> Identity a Source #

asinh :: Identity a -> Identity a Source #

acosh :: Identity a -> Identity a Source #

atanh :: Identity a -> Identity a Source #

log1p :: Identity a -> Identity a Source #

expm1 :: Identity a -> Identity a Source #

log1pexp :: Identity a -> Identity a Source #

log1mexp :: Identity a -> Identity a Source #

RealFloat a => RealFloat (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

floatRadix :: Identity a -> Integer Source #

floatDigits :: Identity a -> Int Source #

floatRange :: Identity a -> (Int, Int) Source #

decodeFloat :: Identity a -> (Integer, Int) Source #

encodeFloat :: Integer -> Int -> Identity a Source #

exponent :: Identity a -> Int Source #

significand :: Identity a -> Identity a Source #

scaleFloat :: Int -> Identity a -> Identity a Source #

isNaN :: Identity a -> Bool Source #

isInfinite :: Identity a -> Bool Source #

isDenormalized :: Identity a -> Bool Source #

isNegativeZero :: Identity a -> Bool Source #

isIEEE :: Identity a -> Bool Source #

atan2 :: Identity a -> Identity a -> Identity a Source #

Storable a => Storable (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

sizeOf :: Identity a -> Int Source #

alignment :: Identity a -> Int Source #

peekElemOff :: Ptr (Identity a) -> Int -> IO (Identity a) Source #

pokeElemOff :: Ptr (Identity a) -> Int -> Identity a -> IO () Source #

peekByteOff :: Ptr b -> Int -> IO (Identity a) Source #

pokeByteOff :: Ptr b -> Int -> Identity a -> IO () Source #

peek :: Ptr (Identity a) -> IO (Identity a) Source #

poke :: Ptr (Identity a) -> Identity a -> IO () Source #

Generic (Identity a) |

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Associated Types

type Rep (Identity a) | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity type Rep (Identity a) = D1 ('MetaData "Identity" "GHC.Internal.Data.Functor.Identity" "ghc-internal" 'True) (C1 ('MetaCons "Identity" 'PrefixI 'True) (S1 ('MetaSel ('Just "runIdentity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))

Methods

from :: Identity a -> Rep (Identity a) x Source #

to :: Rep (Identity a) x -> Identity a Source #

Ix a => Ix (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

range :: (Identity a, Identity a) -> [Identity a] Source #

index :: (Identity a, Identity a) -> Identity a -> Int Source #

unsafeIndex :: (Identity a, Identity a) -> Identity a -> Int Source #

inRange :: (Identity a, Identity a) -> Identity a -> Bool Source #

rangeSize :: (Identity a, Identity a) -> Int Source #

unsafeRangeSize :: (Identity a, Identity a) -> Int Source #

Num a => Num (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

(+) :: Identity a -> Identity a -> Identity a Source #

(-) :: Identity a -> Identity a -> Identity a Source #

(*) :: Identity a -> Identity a -> Identity a Source #

negate :: Identity a -> Identity a Source #

abs :: Identity a -> Identity a Source #

signum :: Identity a -> Identity a Source #

fromInteger :: Integer -> Identity a Source #

Read a => Read (Identity a) | This instance would be equivalent to the derived instances of the `Identity` newtype if the `runIdentity` field were removed Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods readsPrec :: Int -> ReadS (Identity a) Source # readList :: ReadS [Identity a] Source # readPrec :: ReadPrec (Identity a) Source # readListPrec :: ReadPrec [Identity a] Source #
Fractional a => Fractional (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods (/) :: Identity a -> Identity a -> Identity a Source # recip :: Identity a -> Identity a Source # fromRational :: Rational -> Identity a Source #
Integral a => Integral (Identity a) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

quot :: Identity a -> Identity a -> Identity a Source #

rem :: Identity a -> Identity a -> Identity a Source #

div :: Identity a -> Identity a -> Identity a Source #

mod :: Identity a -> Identity a -> Identity a Source #

quotRem :: Identity a -> Identity a -> (Identity a, Identity a) Source #

divMod :: Identity a -> Identity a -> (Identity a, Identity a) Source #

toInteger :: Identity a -> Integer Source #

Real a => Real (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods toRational :: Identity a -> Rational Source #
RealFrac a => RealFrac (Identity a) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods properFraction :: Integral b => Identity a -> (b, Identity a) Source # truncate :: Integral b => Identity a -> b Source # round :: Integral b => Identity a -> b Source # ceiling :: Integral b => Identity a -> b Source # floor :: Integral b => Identity a -> b Source #
Show a => Show (Identity a) | This instance would be equivalent to the derived instances of the `Identity` newtype if the `runIdentity` field were removed Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods showsPrec :: Int -> Identity a -> ShowS Source # show :: Identity a -> String Source # showList :: [Identity a] -> ShowS Source #
Eq a => Eq (Identity a) | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods (==) :: Identity a -> Identity a -> Bool Source # (/=) :: Identity a -> Identity a -> Bool Source #
Ord a => Ord (Identity a) | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

compare :: Identity a -> Identity a -> Ordering Source #

(<) :: Identity a -> Identity a -> Bool Source #

(<=) :: Identity a -> Identity a -> Bool Source #

(>) :: Identity a -> Identity a -> Bool Source #

(>=) :: Identity a -> Identity a -> Bool Source #

max :: Identity a -> Identity a -> Identity a Source #

min :: Identity a -> Identity a -> Identity a Source #

Hashable a => Hashable (Identity a) |
Instance details Defined in Data.Hashable.Class Methods hashWithSalt :: Int -> Identity a -> Int Source # hash :: Identity a -> Int Source #
MonoComonad (Identity a) |
Instance details Defined in Data.MonoTraversable.Instances Methods oextract :: Identity a -> Element (Identity a) Source # oextend :: (Identity a -> Element (Identity a)) -> Identity a -> Identity a Source #
MonoFoldable (Identity a) |

Instance details

Defined in Data.MonoTraversable

Methods

ofoldMap :: Monoid m => (Element (Identity a) -> m) -> Identity a -> m Source #

ofoldr :: (Element (Identity a) -> b -> b) -> b -> Identity a -> b Source #

ofoldl' :: (a0 -> Element (Identity a) -> a0) -> a0 -> Identity a -> a0 Source #

otoList :: Identity a -> [Element (Identity a)] Source #

oall :: (Element (Identity a) -> Bool) -> Identity a -> Bool Source #

oany :: (Element (Identity a) -> Bool) -> Identity a -> Bool Source #

onull :: Identity a -> Bool Source #

olength :: Identity a -> Int Source #

olength64 :: Identity a -> Int64 Source #

ocompareLength :: Integral i => Identity a -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (Identity a) -> f b) -> Identity a -> f () Source #

ofor_ :: Applicative f => Identity a -> (Element (Identity a) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (Identity a) -> m ()) -> Identity a -> m () Source #

oforM_ :: Applicative m => Identity a -> (Element (Identity a) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a0 -> Element (Identity a) -> m a0) -> a0 -> Identity a -> m a0 Source #

ofoldMap1Ex :: Semigroup m => (Element (Identity a) -> m) -> Identity a -> m Source #

ofoldr1Ex :: (Element (Identity a) -> Element (Identity a) -> Element (Identity a)) -> Identity a -> Element (Identity a) Source #

ofoldl1Ex' :: (Element (Identity a) -> Element (Identity a) -> Element (Identity a)) -> Identity a -> Element (Identity a) Source #

headEx :: Identity a -> Element (Identity a) Source #

lastEx :: Identity a -> Element (Identity a) Source #

unsafeHead :: Identity a -> Element (Identity a) Source #

unsafeLast :: Identity a -> Element (Identity a) Source #

maximumByEx :: (Element (Identity a) -> Element (Identity a) -> Ordering) -> Identity a -> Element (Identity a) Source #

minimumByEx :: (Element (Identity a) -> Element (Identity a) -> Ordering) -> Identity a -> Element (Identity a) Source #

oelem :: Element (Identity a) -> Identity a -> Bool Source #

onotElem :: Element (Identity a) -> Identity a -> Bool Source #

MonoFunctor (Identity a) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (Identity a) -> Element (Identity a)) -> Identity a -> Identity a Source #
MonoPointed (Identity a) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (Identity a) -> Identity a Source #
MonoTraversable (Identity a) |
Instance details Defined in Data.MonoTraversable Methods otraverse :: Applicative f => (Element (Identity a) -> f (Element (Identity a))) -> Identity a -> f (Identity a) Source # omapM :: Applicative m => (Element (Identity a) -> m (Element (Identity a))) -> Identity a -> m (Identity a) Source #
Prim a => Prim (Identity a) | Since: primitive-0.6.5.0

Instance details

Defined in Data.Primitive.Types

Methods

sizeOfType# :: Proxy (Identity a) -> Int# Source #

sizeOf# :: Identity a -> Int# Source #

alignmentOfType# :: Proxy (Identity a) -> Int# Source #

alignment# :: Identity a -> Int# Source #

indexByteArray# :: ByteArray# -> Int# -> Identity a Source #

readByteArray# :: MutableByteArray# s -> Int# -> State# s -> (# State# s, Identity a #) Source #

writeByteArray# :: MutableByteArray# s -> Int# -> Identity a -> State# s -> State# s Source #

setByteArray# :: MutableByteArray# s -> Int# -> Int# -> Identity a -> State# s -> State# s Source #

indexOffAddr# :: Addr# -> Int# -> Identity a Source #

readOffAddr# :: Addr# -> Int# -> State# s -> (# State# s, Identity a #) Source #

writeOffAddr# :: Addr# -> Int# -> Identity a -> State# s -> State# s Source #

setOffAddr# :: Addr# -> Int# -> Int# -> Identity a -> State# s -> State# s Source #

Unbox a => Unbox (Identity a) |
Instance details Defined in Data.Vector.Unboxed.Base
type Rep Identity |
Instance details Defined in Data.Functor.Rep type Rep Identity = ()
type Key Identity |
Instance details Defined in Data.Key type Key Identity = ()
type Rep1 Identity | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity type Rep1 Identity = D1 ('MetaData "Identity" "GHC.Internal.Data.Functor.Identity" "ghc-internal" 'True) (C1 ('MetaCons "Identity" 'PrefixI 'True) (S1 ('MetaSel ('Just "runIdentity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) Par1))
newtype MVector s (Identity a) |
Instance details Defined in Data.Vector.Unboxed.Base newtype MVector s (Identity a) = MV_Identity (MVector s a)
type Rep (Identity a) | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity type Rep (Identity a) = D1 ('MetaData "Identity" "GHC.Internal.Data.Functor.Identity" "ghc-internal" 'True) (C1 ('MetaCons "Identity" 'PrefixI 'True) (S1 ('MetaSel ('Just "runIdentity") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 a)))
type Element (Identity a) |
Instance details Defined in Data.MonoTraversable type Element (Identity a) = a
newtype Vector (Identity a) |
Instance details Defined in Data.Vector.Unboxed.Base newtype Vector (Identity a) = V_Identity (Vector a)

class Monad m => MonadReader r (m :: Type -> Type) | m -> r Source #

See examples in Control.Monad.Reader. Note, the partially applied function type `(->) r` is a simple reader monad. See the `instance` declaration below.

Minimal complete definition

(ask | reader), local

#### Instances

Instances details

(Representable f, Rep f ~ a) => MonadReader a (Co f) |
Instance details Defined in Data.Functor.Rep Methods ask :: Co f a Source # local :: (a -> a) -> Co f a0 -> Co f a0 Source # reader :: (a -> a0) -> Co f a0 Source #
MonadReader e m => MonadReader e (Free m) |
Instance details Defined in Control.Monad.Free Methods ask :: Free m e Source # local :: (e -> e) -> Free m a -> Free m a Source # reader :: (e -> a) -> Free m a Source #
MonadReader r m => MonadReader r (MaybeT m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: MaybeT m r Source # local :: (r -> r) -> MaybeT m a -> MaybeT m a Source # reader :: (r -> a) -> MaybeT m a Source #
(Functor f, MonadReader r m) => MonadReader r (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods ask :: FreeT f m r Source # local :: (r -> r) -> FreeT f m a -> FreeT f m a Source # reader :: (r -> a) -> FreeT f m a Source #
(Monoid w, MonadReader r m) => MonadReader r (AccumT w m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Reader.Class Methods ask :: AccumT w m r Source # local :: (r -> r) -> AccumT w m a -> AccumT w m a Source # reader :: (r -> a) -> AccumT w m a Source #
MonadReader r m => MonadReader r (ExceptT e m) | Since: mtl-2.2
Instance details Defined in Control.Monad.Reader.Class Methods ask :: ExceptT e m r Source # local :: (r -> r) -> ExceptT e m a -> ExceptT e m a Source # reader :: (r -> a) -> ExceptT e m a Source #
MonadReader r m => MonadReader r (IdentityT m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: IdentityT m r Source # local :: (r -> r) -> IdentityT m a -> IdentityT m a Source # reader :: (r -> a) -> IdentityT m a Source #
Monad m => MonadReader r (ReaderT r m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: ReaderT r m r Source # local :: (r -> r) -> ReaderT r m a -> ReaderT r m a Source # reader :: (r -> a) -> ReaderT r m a Source #
MonadReader r m => MonadReader r (StateT s m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: StateT s m r Source # local :: (r -> r) -> StateT s m a -> StateT s m a Source # reader :: (r -> a) -> StateT s m a Source #
MonadReader r m => MonadReader r (StateT s m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: StateT s m r Source # local :: (r -> r) -> StateT s m a -> StateT s m a Source # reader :: (r -> a) -> StateT s m a Source #
(Monoid w, MonadReader r m) => MonadReader r (WriterT w m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Reader.Class Methods ask :: WriterT w m r Source # local :: (r -> r) -> WriterT w m a -> WriterT w m a Source # reader :: (r -> a) -> WriterT w m a Source #
(Monoid w, MonadReader r m) => MonadReader r (WriterT w m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: WriterT w m r Source # local :: (r -> r) -> WriterT w m a -> WriterT w m a Source # reader :: (r -> a) -> WriterT w m a Source #
(Monoid w, MonadReader r m) => MonadReader r (WriterT w m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: WriterT w m r Source # local :: (r -> r) -> WriterT w m a -> WriterT w m a Source # reader :: (r -> a) -> WriterT w m a Source #
MonadReader r' m => MonadReader r' (SelectT r m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Reader.Class Methods ask :: SelectT r m r' Source # local :: (r' -> r') -> SelectT r m a -> SelectT r m a Source # reader :: (r' -> a) -> SelectT r m a Source #
MonadReader r ((->) r) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: r -> r Source # local :: (r -> r) -> (r -> a) -> r -> a Source # reader :: (r -> a) -> r -> a Source #
MonadReader r' m => MonadReader r' (ContT r m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: ContT r m r' Source # local :: (r' -> r') -> ContT r m a -> ContT r m a Source # reader :: (r' -> a) -> ContT r m a Source #
(Monad m, Monoid w) => MonadReader r (RWST r w s m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Reader.Class Methods ask :: RWST r w s m r Source # local :: (r -> r) -> RWST r w s m a -> RWST r w s m a Source # reader :: (r -> a) -> RWST r w s m a Source #
(Monad m, Monoid w) => MonadReader r (RWST r w s m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: RWST r w s m r Source # local :: (r -> r) -> RWST r w s m a -> RWST r w s m a Source # reader :: (r -> a) -> RWST r w s m a Source #
(Monad m, Monoid w) => MonadReader r (RWST r w s m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: RWST r w s m r Source # local :: (r -> r) -> RWST r w s m a -> RWST r w s m a Source # reader :: (r -> a) -> RWST r w s m a Source #

ask :: MonadReader r m => m r Source #

Retrieves the monad environment.

asks Source #

Arguments

:: MonadReader r m |
=> (r -> a) | The selector function to apply to the environment.
-> m a |

Retrieves a function of the current environment.

newtype ReaderT r (m :: Type -> Type) a Source #

The reader monad transformer, which adds a read-only environment to the given monad.

The `return` function ignores the environment, while `m `>>=` k` passes the inherited environment to both subcomputations:

Constructors

ReaderT |

Fields

- runReaderT :: r -> m a

#### Instances

Instances details

Generic1 (ReaderT r m :: Type -> Type) |

Instance details

Defined in Control.Monad.Trans.Reader

Associated Types

type Rep1 (ReaderT r m :: Type -> Type) |
Instance details Defined in Control.Monad.Trans.Reader type Rep1 (ReaderT r m :: Type -> Type) = D1 ('MetaData "ReaderT" "Control.Monad.Trans.Reader" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "ReaderT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runReaderT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ((FUN 'Many r :: Type -> Type) :.: Rec1 m)))

Methods

from1 :: ReaderT r m a -> Rep1 (ReaderT r m) a Source #

to1 :: Rep1 (ReaderT r m) a -> ReaderT r m a Source #

MonadAccum w m => MonadAccum w (ReaderT r m) | Since: mtl-2.3
Instance details Defined in Control.Monad.Accum Methods look :: ReaderT r m w Source # add :: w -> ReaderT r m () Source # accum :: (w -> (a, w)) -> ReaderT r m a Source #
MonadError e m => MonadError e (ReaderT r m) |
Instance details Defined in Control.Monad.Error.Class Methods throwError :: e -> ReaderT r m a Source # catchError :: ReaderT r m a -> (e -> ReaderT r m a) -> ReaderT r m a Source #
Monad m => MonadReader r (ReaderT r m) |
Instance details Defined in Control.Monad.Reader.Class Methods ask :: ReaderT r m r Source # local :: (r -> r) -> ReaderT r m a -> ReaderT r m a Source # reader :: (r -> a) -> ReaderT r m a Source #
MonadSelect r' m => MonadSelect r' (ReaderT r m) | Provides a read-only environment of type `r` to the 'strategy' function. However, the 'ranking' function (or more accurately, representation) has no access to `r`. Put another way, you can influence what values get chosen by changing `r`, but not how solutions are ranked. Since: mtl-2.3
Instance details Defined in Control.Monad.Select Methods select :: ((a -> r') -> a) -> ReaderT r m a Source #
MonadState s m => MonadState s (ReaderT r m) |
Instance details Defined in Control.Monad.State.Class Methods get :: ReaderT r m s Source # put :: s -> ReaderT r m () Source # state :: (s -> (a, s)) -> ReaderT r m a Source #
MonadWriter w m => MonadWriter w (ReaderT r m) |
Instance details Defined in Control.Monad.Writer.Class Methods writer :: (a, w) -> ReaderT r m a Source # tell :: w -> ReaderT r m () Source # listen :: ReaderT r m a -> ReaderT r m (a, w) Source # pass :: ReaderT r m (a, w -> w) -> ReaderT r m a Source #
MonadTrans (ReaderT r) |
Instance details Defined in Control.Monad.Trans.Reader Methods lift :: Monad m => m a -> ReaderT r m a Source #
Representable m => Representable (ReaderT e m) |

Instance details

Defined in Data.Functor.Rep

Associated Types

type Rep (ReaderT e m) |
Instance details Defined in Data.Functor.Rep type Rep (ReaderT e m) = (e, Rep m)

Methods

tabulate :: (Rep (ReaderT e m) -> a) -> ReaderT e m a

index :: ReaderT e m a -> Rep (ReaderT e m) -> a

MonadIO m => MonadIO (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods liftIO :: IO a -> ReaderT r m a Source #
MonadZip m => MonadZip (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods mzip :: ReaderT r m a -> ReaderT r m b -> ReaderT r m (a, b) Source # mzipWith :: (a -> b -> c) -> ReaderT r m a -> ReaderT r m b -> ReaderT r m c Source # munzip :: ReaderT r m (a, b) -> (ReaderT r m a, ReaderT r m b) Source #
Contravariant m => Contravariant (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods contramap :: (a' -> a) -> ReaderT r m a -> ReaderT r m a' Source # (>$) :: b -> ReaderT r m b -> ReaderT r m a Source #
Zip m => Zip (ReaderT e m) |
Instance details Defined in Data.ChunkedZip Methods zipWith :: (a -> b -> c) -> ReaderT e m a -> ReaderT e m b -> ReaderT e m c Source # zip :: ReaderT e m a -> ReaderT e m b -> ReaderT e m (a, b) Source # zap :: ReaderT e m (a -> b) -> ReaderT e m a -> ReaderT e m b Source # unzip :: ReaderT e m (a, b) -> (ReaderT e m a, ReaderT e m b) Source #
MonadCatch m => MonadCatch (ReaderT r m) |
Instance details Defined in Control.Monad.Catch Methods catch :: (HasCallStack, Exception e) => ReaderT r m a -> (e -> ReaderT r m a) -> ReaderT r m a Source #
MonadMask m => MonadMask (ReaderT r m) |

Instance details

Defined in Control.Monad.Catch

Methods

mask :: HasCallStack => ((forall a. ReaderT r m a -> ReaderT r m a) -> ReaderT r m b) -> ReaderT r m b Source #

uninterruptibleMask :: HasCallStack => ((forall a. ReaderT r m a -> ReaderT r m a) -> ReaderT r m b) -> ReaderT r m b Source #

generalBracket :: HasCallStack => ReaderT r m a -> (a -> ExitCase b -> ReaderT r m c) -> (a -> ReaderT r m b) -> ReaderT r m (b, c) Source #

MonadThrow m => MonadThrow (ReaderT r m) |
Instance details Defined in Control.Monad.Catch Methods throwM :: (HasCallStack, Exception e) => e -> ReaderT r m a Source #
Alternative m => Alternative (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods empty :: ReaderT r m a Source # (<|>) :: ReaderT r m a -> ReaderT r m a -> ReaderT r m a Source # some :: ReaderT r m a -> ReaderT r m [a] Source # many :: ReaderT r m a -> ReaderT r m [a] Source #
Applicative m => Applicative (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods pure :: a -> ReaderT r m a Source # (<*>) :: ReaderT r m (a -> b) -> ReaderT r m a -> ReaderT r m b Source # liftA2 :: (a -> b -> c) -> ReaderT r m a -> ReaderT r m b -> ReaderT r m c Source # (*>) :: ReaderT r m a -> ReaderT r m b -> ReaderT r m b Source # (<*) :: ReaderT r m a -> ReaderT r m b -> ReaderT r m a Source #
Functor m => Functor (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods fmap :: (a -> b) -> ReaderT r m a -> ReaderT r m b Source # (<$) :: a -> ReaderT r m b -> ReaderT r m a Source #
Monad m => Monad (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods (>>=) :: ReaderT r m a -> (a -> ReaderT r m b) -> ReaderT r m b Source # (>>) :: ReaderT r m a -> ReaderT r m b -> ReaderT r m b Source # return :: a -> ReaderT r m a Source #
MonadPlus m => MonadPlus (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods mzero :: ReaderT r m a Source # mplus :: ReaderT r m a -> ReaderT r m a -> ReaderT r m a Source #
MonadFail m => MonadFail (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods fail :: String -> ReaderT r m a Source #
MonadFix m => MonadFix (ReaderT r m) |
Instance details Defined in Control.Monad.Trans.Reader Methods mfix :: (a -> ReaderT r m a) -> ReaderT r m a Source #
Indexable m => Indexable (ReaderT e m) |
Instance details Defined in Data.Key Methods index :: ReaderT e m a -> Key (ReaderT e m) -> a
Keyed m => Keyed (ReaderT e m) |
Instance details Defined in Data.Key Methods mapWithKey :: (Key (ReaderT e m) -> a -> b) -> ReaderT e m a -> ReaderT e m b
Lookup m => Lookup (ReaderT e m) |
Instance details Defined in Data.Key Methods lookup :: Key (ReaderT e m) -> ReaderT e m a -> Maybe a
Zip m => Zip (ReaderT e m) |
Instance details Defined in Data.Key Methods zipWith :: (a -> b -> c) -> ReaderT e m a -> ReaderT e m b -> ReaderT e m c zip :: ReaderT e m a -> ReaderT e m b -> ReaderT e m (a, b) zap :: ReaderT e m (a -> b) -> ReaderT e m a -> ReaderT e m b
ZipWithKey m => ZipWithKey (ReaderT e m) |
Instance details Defined in Data.Key Methods zipWithKey :: (Key (ReaderT e m) -> a -> b -> c) -> ReaderT e m a -> ReaderT e m b -> ReaderT e m c zapWithKey :: ReaderT e m (Key (ReaderT e m) -> a -> b) -> ReaderT e m a -> ReaderT e m b
MonadCont m => MonadCont (ReaderT r m) |
Instance details Defined in Control.Monad.Cont.Class Methods callCC :: ((a -> ReaderT r m b) -> ReaderT r m a) -> ReaderT r m a Source #
PrimMonad m => PrimMonad (ReaderT r m) |

Instance details

Defined in Control.Monad.Primitive

Associated Types

type PrimState (ReaderT r m) |
Instance details Defined in Control.Monad.Primitive type PrimState (ReaderT r m) = PrimState m

Methods

primitive :: (State# (PrimState (ReaderT r m)) -> (# State# (PrimState (ReaderT r m)), a #)) -> ReaderT r m a Source #

MonadUnliftIO m => MonadUnliftIO (ReaderT r m) |
Instance details Defined in Control.Monad.IO.Unlift Methods withRunInIO :: ((forall a. ReaderT r m a -> IO a) -> IO b) -> ReaderT r m b
Generic (ReaderT r m a) |

Instance details

Defined in Control.Monad.Trans.Reader

Associated Types

type Rep (ReaderT r m a) |
Instance details Defined in Control.Monad.Trans.Reader type Rep (ReaderT r m a) = D1 ('MetaData "ReaderT" "Control.Monad.Trans.Reader" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "ReaderT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runReaderT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> m a))))

Methods

from :: ReaderT r m a -> Rep (ReaderT r m a) x Source #

to :: Rep (ReaderT r m a) x -> ReaderT r m a Source #

Functor m => MonoFunctor (ReaderT r m a) |
Instance details Defined in Data.MonoTraversable Methods omap :: (Element (ReaderT r m a) -> Element (ReaderT r m a)) -> ReaderT r m a -> ReaderT r m a Source #
Applicative m => MonoPointed (ReaderT r m a) |
Instance details Defined in Data.MonoTraversable Methods opoint :: Element (ReaderT r m a) -> ReaderT r m a Source #
type Rep1 (ReaderT r m :: Type -> Type) |
Instance details Defined in Control.Monad.Trans.Reader type Rep1 (ReaderT r m :: Type -> Type) = D1 ('MetaData "ReaderT" "Control.Monad.Trans.Reader" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "ReaderT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runReaderT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) ((FUN 'Many r :: Type -> Type) :.: Rec1 m)))
type Rep (ReaderT e m) |
Instance details Defined in Data.Functor.Rep type Rep (ReaderT e m) = (e, Rep m)
type Key (ReaderT e m) |
Instance details Defined in Data.Key type Key (ReaderT e m) = (e, Key m)
type PrimState (ReaderT r m) |
Instance details Defined in Control.Monad.Primitive type PrimState (ReaderT r m) = PrimState m
type Rep (ReaderT r m a) |
Instance details Defined in Control.Monad.Trans.Reader type Rep (ReaderT r m a) = D1 ('MetaData "ReaderT" "Control.Monad.Trans.Reader" "transformers-0.6.1.1-inplace" 'True) (C1 ('MetaCons "ReaderT" 'PrefixI 'True) (S1 ('MetaSel ('Just "runReaderT") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (r -> m a))))
type Element (ReaderT r m a) |
Instance details Defined in Data.MonoTraversable type Element (ReaderT r m a) = a

type Reader r = ReaderT r Identity Source #

The parameterizable reader monad.

Computations are functions of a shared environment.

The `return` function ignores the environment, while `m `>>=` k` passes the inherited environment to both subcomputations:

# Poly hierarchy

class Foldable (t :: Type -> Type) Source #

The Foldable class represents data structures that can be reduced to a summary value one element at a time. Strict left-associative folds are a good fit for space-efficient reduction, while lazy right-associative folds are a good fit for corecursive iteration, or for folds that short-circuit after processing an initial subsequence of the structure's elements.

Instances can be derived automatically by enabling the `DeriveFoldable` extension. For example, a derived instance for a binary tree might be:

    {-# LANGUAGE DeriveFoldable #-}
    data Tree a = Empty
                | Leaf a
                | Node (Tree a) a (Tree a)
        deriving Foldable

A more detailed description can be found in the Overview section of Data.Foldable.

For the class laws see the Laws section of Data.Foldable.

Minimal complete definition

foldMap | foldr

#### Instances

Instances details

Foldable Complex | Since: base-4.9.0.0

Instance details

Defined in Data.Complex

Methods

fold :: Monoid m => Complex m -> m Source #

foldMap :: Monoid m => (a -> m) -> Complex a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Complex a -> m Source #

foldr :: (a -> b -> b) -> b -> Complex a -> b Source #

foldr' :: (a -> b -> b) -> b -> Complex a -> b Source #

foldl :: (b -> a -> b) -> b -> Complex a -> b Source #

foldl' :: (b -> a -> b) -> b -> Complex a -> b Source #

foldr1 :: (a -> a -> a) -> Complex a -> a Source #

foldl1 :: (a -> a -> a) -> Complex a -> a Source #

toList :: Complex a -> [a] Source #

null :: Complex a -> Bool Source #

length :: Complex a -> Int Source #

elem :: Eq a => a -> Complex a -> Bool Source #

maximum :: Ord a => Complex a -> a Source #

minimum :: Ord a => Complex a -> a Source #

sum :: Num a => Complex a -> a Source #

product :: Num a => Complex a -> a Source #

Foldable First | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => First m -> m Source #

foldMap :: Monoid m => (a -> m) -> First a -> m Source #

foldMap' :: Monoid m => (a -> m) -> First a -> m Source #

foldr :: (a -> b -> b) -> b -> First a -> b Source #

foldr' :: (a -> b -> b) -> b -> First a -> b Source #

foldl :: (b -> a -> b) -> b -> First a -> b Source #

foldl' :: (b -> a -> b) -> b -> First a -> b Source #

foldr1 :: (a -> a -> a) -> First a -> a Source #

foldl1 :: (a -> a -> a) -> First a -> a Source #

toList :: First a -> [a] Source #

null :: First a -> Bool Source #

length :: First a -> Int Source #

elem :: Eq a => a -> First a -> Bool Source #

maximum :: Ord a => First a -> a Source #

minimum :: Ord a => First a -> a Source #

sum :: Num a => First a -> a Source #

product :: Num a => First a -> a Source #

Foldable Last | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => Last m -> m Source #

foldMap :: Monoid m => (a -> m) -> Last a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Last a -> m Source #

foldr :: (a -> b -> b) -> b -> Last a -> b Source #

foldr' :: (a -> b -> b) -> b -> Last a -> b Source #

foldl :: (b -> a -> b) -> b -> Last a -> b Source #

foldl' :: (b -> a -> b) -> b -> Last a -> b Source #

foldr1 :: (a -> a -> a) -> Last a -> a Source #

foldl1 :: (a -> a -> a) -> Last a -> a Source #

toList :: Last a -> [a] Source #

null :: Last a -> Bool Source #

length :: Last a -> Int Source #

elem :: Eq a => a -> Last a -> Bool Source #

maximum :: Ord a => Last a -> a Source #

minimum :: Ord a => Last a -> a Source #

sum :: Num a => Last a -> a Source #

product :: Num a => Last a -> a Source #

Foldable Max | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => Max m -> m Source #

foldMap :: Monoid m => (a -> m) -> Max a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Max a -> m Source #

foldr :: (a -> b -> b) -> b -> Max a -> b Source #

foldr' :: (a -> b -> b) -> b -> Max a -> b Source #

foldl :: (b -> a -> b) -> b -> Max a -> b Source #

foldl' :: (b -> a -> b) -> b -> Max a -> b Source #

foldr1 :: (a -> a -> a) -> Max a -> a Source #

foldl1 :: (a -> a -> a) -> Max a -> a Source #

toList :: Max a -> [a] Source #

null :: Max a -> Bool Source #

length :: Max a -> Int Source #

elem :: Eq a => a -> Max a -> Bool Source #

maximum :: Ord a => Max a -> a Source #

minimum :: Ord a => Max a -> a Source #

sum :: Num a => Max a -> a Source #

product :: Num a => Max a -> a Source #

Foldable Min | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => Min m -> m Source #

foldMap :: Monoid m => (a -> m) -> Min a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Min a -> m Source #

foldr :: (a -> b -> b) -> b -> Min a -> b Source #

foldr' :: (a -> b -> b) -> b -> Min a -> b Source #

foldl :: (b -> a -> b) -> b -> Min a -> b Source #

foldl' :: (b -> a -> b) -> b -> Min a -> b Source #

foldr1 :: (a -> a -> a) -> Min a -> a Source #

foldl1 :: (a -> a -> a) -> Min a -> a Source #

toList :: Min a -> [a] Source #

null :: Min a -> Bool Source #

length :: Min a -> Int Source #

elem :: Eq a => a -> Min a -> Bool Source #

maximum :: Ord a => Min a -> a Source #

minimum :: Ord a => Min a -> a Source #

sum :: Num a => Min a -> a Source #

product :: Num a => Min a -> a Source #

Foldable SCC | Since: containers-0.5.9

Instance details

Defined in Data.Graph

Methods

fold :: Monoid m => SCC m -> m Source #

foldMap :: Monoid m => (a -> m) -> SCC a -> m Source #

foldMap' :: Monoid m => (a -> m) -> SCC a -> m Source #

foldr :: (a -> b -> b) -> b -> SCC a -> b Source #

foldr' :: (a -> b -> b) -> b -> SCC a -> b Source #

foldl :: (b -> a -> b) -> b -> SCC a -> b Source #

foldl' :: (b -> a -> b) -> b -> SCC a -> b Source #

foldr1 :: (a -> a -> a) -> SCC a -> a Source #

foldl1 :: (a -> a -> a) -> SCC a -> a Source #

toList :: SCC a -> [a] Source #

null :: SCC a -> Bool Source #

length :: SCC a -> Int Source #

elem :: Eq a => a -> SCC a -> Bool Source #

maximum :: Ord a => SCC a -> a Source #

minimum :: Ord a => SCC a -> a Source #

sum :: Num a => SCC a -> a Source #

product :: Num a => SCC a -> a Source #

Foldable IntMap | Folds in order of increasing key.

Instance details

Defined in Data.IntMap.Internal

Methods

fold :: Monoid m => IntMap m -> m Source #

foldMap :: Monoid m => (a -> m) -> IntMap a -> m Source #

foldMap' :: Monoid m => (a -> m) -> IntMap a -> m Source #

foldr :: (a -> b -> b) -> b -> IntMap a -> b Source #

foldr' :: (a -> b -> b) -> b -> IntMap a -> b Source #

foldl :: (b -> a -> b) -> b -> IntMap a -> b Source #

foldl' :: (b -> a -> b) -> b -> IntMap a -> b Source #

foldr1 :: (a -> a -> a) -> IntMap a -> a Source #

foldl1 :: (a -> a -> a) -> IntMap a -> a Source #

toList :: IntMap a -> [a] Source #

null :: IntMap a -> Bool Source #

length :: IntMap a -> Int Source #

elem :: Eq a => a -> IntMap a -> Bool Source #

maximum :: Ord a => IntMap a -> a Source #

minimum :: Ord a => IntMap a -> a Source #

sum :: Num a => IntMap a -> a Source #

product :: Num a => IntMap a -> a Source #

Foldable Digit |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Digit m -> m Source #

foldMap :: Monoid m => (a -> m) -> Digit a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Digit a -> m Source #

foldr :: (a -> b -> b) -> b -> Digit a -> b Source #

foldr' :: (a -> b -> b) -> b -> Digit a -> b Source #

foldl :: (b -> a -> b) -> b -> Digit a -> b Source #

foldl' :: (b -> a -> b) -> b -> Digit a -> b Source #

foldr1 :: (a -> a -> a) -> Digit a -> a Source #

foldl1 :: (a -> a -> a) -> Digit a -> a Source #

toList :: Digit a -> [a] Source #

null :: Digit a -> Bool Source #

length :: Digit a -> Int Source #

elem :: Eq a => a -> Digit a -> Bool Source #

maximum :: Ord a => Digit a -> a Source #

minimum :: Ord a => Digit a -> a Source #

sum :: Num a => Digit a -> a Source #

product :: Num a => Digit a -> a Source #

Foldable Elem |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Elem m -> m Source #

foldMap :: Monoid m => (a -> m) -> Elem a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Elem a -> m Source #

foldr :: (a -> b -> b) -> b -> Elem a -> b Source #

foldr' :: (a -> b -> b) -> b -> Elem a -> b Source #

foldl :: (b -> a -> b) -> b -> Elem a -> b Source #

foldl' :: (b -> a -> b) -> b -> Elem a -> b Source #

foldr1 :: (a -> a -> a) -> Elem a -> a Source #

foldl1 :: (a -> a -> a) -> Elem a -> a Source #

toList :: Elem a -> [a] Source #

null :: Elem a -> Bool Source #

length :: Elem a -> Int Source #

elem :: Eq a => a -> Elem a -> Bool Source #

maximum :: Ord a => Elem a -> a Source #

minimum :: Ord a => Elem a -> a Source #

sum :: Num a => Elem a -> a Source #

product :: Num a => Elem a -> a Source #

Foldable FingerTree |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => FingerTree m -> m Source #

foldMap :: Monoid m => (a -> m) -> FingerTree a -> m Source #

foldMap' :: Monoid m => (a -> m) -> FingerTree a -> m Source #

foldr :: (a -> b -> b) -> b -> FingerTree a -> b Source #

foldr' :: (a -> b -> b) -> b -> FingerTree a -> b Source #

foldl :: (b -> a -> b) -> b -> FingerTree a -> b Source #

foldl' :: (b -> a -> b) -> b -> FingerTree a -> b Source #

foldr1 :: (a -> a -> a) -> FingerTree a -> a Source #

foldl1 :: (a -> a -> a) -> FingerTree a -> a Source #

toList :: FingerTree a -> [a] Source #

null :: FingerTree a -> Bool Source #

length :: FingerTree a -> Int Source #

elem :: Eq a => a -> FingerTree a -> Bool Source #

maximum :: Ord a => FingerTree a -> a Source #

minimum :: Ord a => FingerTree a -> a Source #

sum :: Num a => FingerTree a -> a Source #

product :: Num a => FingerTree a -> a Source #

Foldable Node |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Node m -> m Source #

foldMap :: Monoid m => (a -> m) -> Node a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Node a -> m Source #

foldr :: (a -> b -> b) -> b -> Node a -> b Source #

foldr' :: (a -> b -> b) -> b -> Node a -> b Source #

foldl :: (b -> a -> b) -> b -> Node a -> b Source #

foldl' :: (b -> a -> b) -> b -> Node a -> b Source #

foldr1 :: (a -> a -> a) -> Node a -> a Source #

foldl1 :: (a -> a -> a) -> Node a -> a Source #

toList :: Node a -> [a] Source #

null :: Node a -> Bool Source #

length :: Node a -> Int Source #

elem :: Eq a => a -> Node a -> Bool Source #

maximum :: Ord a => Node a -> a Source #

minimum :: Ord a => Node a -> a Source #

sum :: Num a => Node a -> a Source #

product :: Num a => Node a -> a Source #

Foldable Seq |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => Seq m -> m Source #

foldMap :: Monoid m => (a -> m) -> Seq a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Seq a -> m Source #

foldr :: (a -> b -> b) -> b -> Seq a -> b Source #

foldr' :: (a -> b -> b) -> b -> Seq a -> b Source #

foldl :: (b -> a -> b) -> b -> Seq a -> b Source #

foldl' :: (b -> a -> b) -> b -> Seq a -> b Source #

foldr1 :: (a -> a -> a) -> Seq a -> a Source #

foldl1 :: (a -> a -> a) -> Seq a -> a Source #

toList :: Seq a -> [a] Source #

null :: Seq a -> Bool Source #

length :: Seq a -> Int Source #

elem :: Eq a => a -> Seq a -> Bool Source #

maximum :: Ord a => Seq a -> a Source #

minimum :: Ord a => Seq a -> a Source #

sum :: Num a => Seq a -> a Source #

product :: Num a => Seq a -> a Source #

Foldable ViewL |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => ViewL m -> m Source #

foldMap :: Monoid m => (a -> m) -> ViewL a -> m Source #

foldMap' :: Monoid m => (a -> m) -> ViewL a -> m Source #

foldr :: (a -> b -> b) -> b -> ViewL a -> b Source #

foldr' :: (a -> b -> b) -> b -> ViewL a -> b Source #

foldl :: (b -> a -> b) -> b -> ViewL a -> b Source #

foldl' :: (b -> a -> b) -> b -> ViewL a -> b Source #

foldr1 :: (a -> a -> a) -> ViewL a -> a Source #

foldl1 :: (a -> a -> a) -> ViewL a -> a Source #

toList :: ViewL a -> [a] Source #

null :: ViewL a -> Bool Source #

length :: ViewL a -> Int Source #

elem :: Eq a => a -> ViewL a -> Bool Source #

maximum :: Ord a => ViewL a -> a Source #

minimum :: Ord a => ViewL a -> a Source #

sum :: Num a => ViewL a -> a Source #

product :: Num a => ViewL a -> a Source #

Foldable ViewR |

Instance details

Defined in Data.Sequence.Internal

Methods

fold :: Monoid m => ViewR m -> m Source #

foldMap :: Monoid m => (a -> m) -> ViewR a -> m Source #

foldMap' :: Monoid m => (a -> m) -> ViewR a -> m Source #

foldr :: (a -> b -> b) -> b -> ViewR a -> b Source #

foldr' :: (a -> b -> b) -> b -> ViewR a -> b Source #

foldl :: (b -> a -> b) -> b -> ViewR a -> b Source #

foldl' :: (b -> a -> b) -> b -> ViewR a -> b Source #

foldr1 :: (a -> a -> a) -> ViewR a -> a Source #

foldl1 :: (a -> a -> a) -> ViewR a -> a Source #

toList :: ViewR a -> [a] Source #

null :: ViewR a -> Bool Source #

length :: ViewR a -> Int Source #

elem :: Eq a => a -> ViewR a -> Bool Source #

maximum :: Ord a => ViewR a -> a Source #

minimum :: Ord a => ViewR a -> a Source #

sum :: Num a => ViewR a -> a Source #

product :: Num a => ViewR a -> a Source #

Foldable Set | Folds in order of increasing key.

Instance details

Defined in Data.Set.Internal

Methods

fold :: Monoid m => Set m -> m Source #

foldMap :: Monoid m => (a -> m) -> Set a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Set a -> m Source #

foldr :: (a -> b -> b) -> b -> Set a -> b Source #

foldr' :: (a -> b -> b) -> b -> Set a -> b Source #

foldl :: (b -> a -> b) -> b -> Set a -> b Source #

foldl' :: (b -> a -> b) -> b -> Set a -> b Source #

foldr1 :: (a -> a -> a) -> Set a -> a Source #

foldl1 :: (a -> a -> a) -> Set a -> a Source #

toList :: Set a -> [a] Source #

null :: Set a -> Bool Source #

length :: Set a -> Int Source #

elem :: Eq a => a -> Set a -> Bool Source #

maximum :: Ord a => Set a -> a Source #

minimum :: Ord a => Set a -> a Source #

sum :: Num a => Set a -> a Source #

product :: Num a => Set a -> a Source #

Foldable Tree | Folds in preorder

Instance details

Defined in Data.Tree

Methods

fold :: Monoid m => Tree m -> m Source #

foldMap :: Monoid m => (a -> m) -> Tree a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Tree a -> m Source #

foldr :: (a -> b -> b) -> b -> Tree a -> b Source #

foldr' :: (a -> b -> b) -> b -> Tree a -> b Source #

foldl :: (b -> a -> b) -> b -> Tree a -> b Source #

foldl' :: (b -> a -> b) -> b -> Tree a -> b Source #

foldr1 :: (a -> a -> a) -> Tree a -> a Source #

foldl1 :: (a -> a -> a) -> Tree a -> a Source #

toList :: Tree a -> [a] Source #

null :: Tree a -> Bool Source #

length :: Tree a -> Int Source #

elem :: Eq a => a -> Tree a -> Bool Source #

maximum :: Ord a => Tree a -> a Source #

minimum :: Ord a => Tree a -> a Source #

sum :: Num a => Tree a -> a Source #

product :: Num a => Tree a -> a Source #

Foldable DList |

Instance details

Defined in Data.DList.Internal

Methods

fold :: Monoid m => DList m -> m Source #

foldMap :: Monoid m => (a -> m) -> DList a -> m Source #

foldMap' :: Monoid m => (a -> m) -> DList a -> m Source #

foldr :: (a -> b -> b) -> b -> DList a -> b Source #

foldr' :: (a -> b -> b) -> b -> DList a -> b Source #

foldl :: (b -> a -> b) -> b -> DList a -> b Source #

foldl' :: (b -> a -> b) -> b -> DList a -> b Source #

foldr1 :: (a -> a -> a) -> DList a -> a Source #

foldl1 :: (a -> a -> a) -> DList a -> a Source #

toList :: DList a -> [a] Source #

null :: DList a -> Bool Source #

length :: DList a -> Int Source #

elem :: Eq a => a -> DList a -> Bool Source #

maximum :: Ord a => DList a -> a Source #

minimum :: Ord a => DList a -> a Source #

sum :: Num a => DList a -> a Source #

product :: Num a => DList a -> a Source #

Foldable NonEmpty | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => NonEmpty m -> m Source #

foldMap :: Monoid m => (a -> m) -> NonEmpty a -> m Source #

foldMap' :: Monoid m => (a -> m) -> NonEmpty a -> m Source #

foldr :: (a -> b -> b) -> b -> NonEmpty a -> b Source #

foldr' :: (a -> b -> b) -> b -> NonEmpty a -> b Source #

foldl :: (b -> a -> b) -> b -> NonEmpty a -> b Source #

foldl' :: (b -> a -> b) -> b -> NonEmpty a -> b Source #

foldr1 :: (a -> a -> a) -> NonEmpty a -> a Source #

foldl1 :: (a -> a -> a) -> NonEmpty a -> a Source #

toList :: NonEmpty a -> [a] Source #

null :: NonEmpty a -> Bool Source #

length :: NonEmpty a -> Int Source #

elem :: Eq a => a -> NonEmpty a -> Bool Source #

maximum :: Ord a => NonEmpty a -> a Source #

minimum :: Ord a => NonEmpty a -> a Source #

sum :: Num a => NonEmpty a -> a Source #

product :: Num a => NonEmpty a -> a Source #

Foldable Identity | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Functor.Identity

Methods

fold :: Monoid m => Identity m -> m Source #

foldMap :: Monoid m => (a -> m) -> Identity a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Identity a -> m Source #

foldr :: (a -> b -> b) -> b -> Identity a -> b Source #

foldr' :: (a -> b -> b) -> b -> Identity a -> b Source #

foldl :: (b -> a -> b) -> b -> Identity a -> b Source #

foldl' :: (b -> a -> b) -> b -> Identity a -> b Source #

foldr1 :: (a -> a -> a) -> Identity a -> a Source #

foldl1 :: (a -> a -> a) -> Identity a -> a Source #

toList :: Identity a -> [a] Source #

null :: Identity a -> Bool Source #

length :: Identity a -> Int Source #

elem :: Eq a => a -> Identity a -> Bool Source #

maximum :: Ord a => Identity a -> a Source #

minimum :: Ord a => Identity a -> a Source #

sum :: Num a => Identity a -> a Source #

product :: Num a => Identity a -> a Source #

Foldable First | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => First m -> m Source #

foldMap :: Monoid m => (a -> m) -> First a -> m Source #

foldMap' :: Monoid m => (a -> m) -> First a -> m Source #

foldr :: (a -> b -> b) -> b -> First a -> b Source #

foldr' :: (a -> b -> b) -> b -> First a -> b Source #

foldl :: (b -> a -> b) -> b -> First a -> b Source #

foldl' :: (b -> a -> b) -> b -> First a -> b Source #

foldr1 :: (a -> a -> a) -> First a -> a Source #

foldl1 :: (a -> a -> a) -> First a -> a Source #

toList :: First a -> [a] Source #

null :: First a -> Bool Source #

length :: First a -> Int Source #

elem :: Eq a => a -> First a -> Bool Source #

maximum :: Ord a => First a -> a Source #

minimum :: Ord a => First a -> a Source #

sum :: Num a => First a -> a Source #

product :: Num a => First a -> a Source #

Foldable Last | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Last m -> m Source #

foldMap :: Monoid m => (a -> m) -> Last a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Last a -> m Source #

foldr :: (a -> b -> b) -> b -> Last a -> b Source #

foldr' :: (a -> b -> b) -> b -> Last a -> b Source #

foldl :: (b -> a -> b) -> b -> Last a -> b Source #

foldl' :: (b -> a -> b) -> b -> Last a -> b Source #

foldr1 :: (a -> a -> a) -> Last a -> a Source #

foldl1 :: (a -> a -> a) -> Last a -> a Source #

toList :: Last a -> [a] Source #

null :: Last a -> Bool Source #

length :: Last a -> Int Source #

elem :: Eq a => a -> Last a -> Bool Source #

maximum :: Ord a => Last a -> a Source #

minimum :: Ord a => Last a -> a Source #

sum :: Num a => Last a -> a Source #

product :: Num a => Last a -> a Source #

Foldable Down | Since: base-4.12.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Down m -> m Source #

foldMap :: Monoid m => (a -> m) -> Down a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Down a -> m Source #

foldr :: (a -> b -> b) -> b -> Down a -> b Source #

foldr' :: (a -> b -> b) -> b -> Down a -> b Source #

foldl :: (b -> a -> b) -> b -> Down a -> b Source #

foldl' :: (b -> a -> b) -> b -> Down a -> b Source #

foldr1 :: (a -> a -> a) -> Down a -> a Source #

foldl1 :: (a -> a -> a) -> Down a -> a Source #

toList :: Down a -> [a] Source #

null :: Down a -> Bool Source #

length :: Down a -> Int Source #

elem :: Eq a => a -> Down a -> Bool Source #

maximum :: Ord a => Down a -> a Source #

minimum :: Ord a => Down a -> a Source #

sum :: Num a => Down a -> a Source #

product :: Num a => Down a -> a Source #

Foldable Dual | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Dual m -> m Source #

foldMap :: Monoid m => (a -> m) -> Dual a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Dual a -> m Source #

foldr :: (a -> b -> b) -> b -> Dual a -> b Source #

foldr' :: (a -> b -> b) -> b -> Dual a -> b Source #

foldl :: (b -> a -> b) -> b -> Dual a -> b Source #

foldl' :: (b -> a -> b) -> b -> Dual a -> b Source #

foldr1 :: (a -> a -> a) -> Dual a -> a Source #

foldl1 :: (a -> a -> a) -> Dual a -> a Source #

toList :: Dual a -> [a] Source #

null :: Dual a -> Bool Source #

length :: Dual a -> Int Source #

elem :: Eq a => a -> Dual a -> Bool Source #

maximum :: Ord a => Dual a -> a Source #

minimum :: Ord a => Dual a -> a Source #

sum :: Num a => Dual a -> a Source #

product :: Num a => Dual a -> a Source #

Foldable Product | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Product m -> m Source #

foldMap :: Monoid m => (a -> m) -> Product a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Product a -> m Source #

foldr :: (a -> b -> b) -> b -> Product a -> b Source #

foldr' :: (a -> b -> b) -> b -> Product a -> b Source #

foldl :: (b -> a -> b) -> b -> Product a -> b Source #

foldl' :: (b -> a -> b) -> b -> Product a -> b Source #

foldr1 :: (a -> a -> a) -> Product a -> a Source #

foldl1 :: (a -> a -> a) -> Product a -> a Source #

toList :: Product a -> [a] Source #

null :: Product a -> Bool Source #

length :: Product a -> Int Source #

elem :: Eq a => a -> Product a -> Bool Source #

maximum :: Ord a => Product a -> a Source #

minimum :: Ord a => Product a -> a Source #

sum :: Num a => Product a -> a Source #

product :: Num a => Product a -> a Source #

Foldable Sum | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Sum m -> m Source #

foldMap :: Monoid m => (a -> m) -> Sum a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Sum a -> m Source #

foldr :: (a -> b -> b) -> b -> Sum a -> b Source #

foldr' :: (a -> b -> b) -> b -> Sum a -> b Source #

foldl :: (b -> a -> b) -> b -> Sum a -> b Source #

foldl' :: (b -> a -> b) -> b -> Sum a -> b Source #

foldr1 :: (a -> a -> a) -> Sum a -> a Source #

foldl1 :: (a -> a -> a) -> Sum a -> a Source #

toList :: Sum a -> [a] Source #

null :: Sum a -> Bool Source #

length :: Sum a -> Int Source #

elem :: Eq a => a -> Sum a -> Bool Source #

maximum :: Ord a => Sum a -> a Source #

minimum :: Ord a => Sum a -> a Source #

sum :: Num a => Sum a -> a Source #

product :: Num a => Sum a -> a Source #

Foldable Par1 | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Par1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> Par1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Par1 a -> m Source #

foldr :: (a -> b -> b) -> b -> Par1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> Par1 a -> b Source #

foldl :: (b -> a -> b) -> b -> Par1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> Par1 a -> b Source #

foldr1 :: (a -> a -> a) -> Par1 a -> a Source #

foldl1 :: (a -> a -> a) -> Par1 a -> a Source #

toList :: Par1 a -> [a] Source #

null :: Par1 a -> Bool Source #

length :: Par1 a -> Int Source #

elem :: Eq a => a -> Par1 a -> Bool Source #

maximum :: Ord a => Par1 a -> a Source #

minimum :: Ord a => Par1 a -> a Source #

sum :: Num a => Par1 a -> a Source #

product :: Num a => Par1 a -> a Source #

Foldable Hashed |

Instance details

Defined in Data.Hashable.Class

Methods

fold :: Monoid m => Hashed m -> m Source #

foldMap :: Monoid m => (a -> m) -> Hashed a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Hashed a -> m Source #

foldr :: (a -> b -> b) -> b -> Hashed a -> b Source #

foldr' :: (a -> b -> b) -> b -> Hashed a -> b Source #

foldl :: (b -> a -> b) -> b -> Hashed a -> b Source #

foldl' :: (b -> a -> b) -> b -> Hashed a -> b Source #

foldr1 :: (a -> a -> a) -> Hashed a -> a Source #

foldl1 :: (a -> a -> a) -> Hashed a -> a Source #

toList :: Hashed a -> [a] Source #

null :: Hashed a -> Bool Source #

length :: Hashed a -> Int Source #

elem :: Eq a => a -> Hashed a -> Bool Source #

maximum :: Ord a => Hashed a -> a Source #

minimum :: Ord a => Hashed a -> a Source #

sum :: Num a => Hashed a -> a Source #

product :: Num a => Hashed a -> a Source #

Foldable Array |

Instance details

Defined in Data.Primitive.Array

Methods

fold :: Monoid m => Array m -> m Source #

foldMap :: Monoid m => (a -> m) -> Array a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Array a -> m Source #

foldr :: (a -> b -> b) -> b -> Array a -> b Source #

foldr' :: (a -> b -> b) -> b -> Array a -> b Source #

foldl :: (b -> a -> b) -> b -> Array a -> b Source #

foldl' :: (b -> a -> b) -> b -> Array a -> b Source #

foldr1 :: (a -> a -> a) -> Array a -> a Source #

foldl1 :: (a -> a -> a) -> Array a -> a Source #

toList :: Array a -> [a] Source #

null :: Array a -> Bool Source #

length :: Array a -> Int Source #

elem :: Eq a => a -> Array a -> Bool Source #

maximum :: Ord a => Array a -> a Source #

minimum :: Ord a => Array a -> a Source #

sum :: Num a => Array a -> a Source #

product :: Num a => Array a -> a Source #

Foldable SmallArray |

Instance details

Defined in Data.Primitive.SmallArray

Methods

fold :: Monoid m => SmallArray m -> m Source #

foldMap :: Monoid m => (a -> m) -> SmallArray a -> m Source #

foldMap' :: Monoid m => (a -> m) -> SmallArray a -> m Source #

foldr :: (a -> b -> b) -> b -> SmallArray a -> b Source #

foldr' :: (a -> b -> b) -> b -> SmallArray a -> b Source #

foldl :: (b -> a -> b) -> b -> SmallArray a -> b Source #

foldl' :: (b -> a -> b) -> b -> SmallArray a -> b Source #

foldr1 :: (a -> a -> a) -> SmallArray a -> a Source #

foldl1 :: (a -> a -> a) -> SmallArray a -> a Source #

toList :: SmallArray a -> [a] Source #

null :: SmallArray a -> Bool Source #

length :: SmallArray a -> Int Source #

elem :: Eq a => a -> SmallArray a -> Bool Source #

maximum :: Ord a => SmallArray a -> a Source #

minimum :: Ord a => SmallArray a -> a Source #

sum :: Num a => SmallArray a -> a Source #

product :: Num a => SmallArray a -> a Source #

Foldable HashSet |

Instance details

Defined in Data.HashSet.Internal

Methods

fold :: Monoid m => HashSet m -> m Source #

foldMap :: Monoid m => (a -> m) -> HashSet a -> m Source #

foldMap' :: Monoid m => (a -> m) -> HashSet a -> m Source #

foldr :: (a -> b -> b) -> b -> HashSet a -> b Source #

foldr' :: (a -> b -> b) -> b -> HashSet a -> b Source #

foldl :: (b -> a -> b) -> b -> HashSet a -> b Source #

foldl' :: (b -> a -> b) -> b -> HashSet a -> b Source #

foldr1 :: (a -> a -> a) -> HashSet a -> a Source #

foldl1 :: (a -> a -> a) -> HashSet a -> a Source #

toList :: HashSet a -> [a] Source #

null :: HashSet a -> Bool Source #

length :: HashSet a -> Int Source #

elem :: Eq a => a -> HashSet a -> Bool Source #

maximum :: Ord a => HashSet a -> a Source #

minimum :: Ord a => HashSet a -> a Source #

sum :: Num a => HashSet a -> a Source #

product :: Num a => HashSet a -> a Source #

Foldable Vector |

Instance details

Defined in Data.Vector

Methods

fold :: Monoid m => Vector m -> m Source #

foldMap :: Monoid m => (a -> m) -> Vector a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Vector a -> m Source #

foldr :: (a -> b -> b) -> b -> Vector a -> b Source #

foldr' :: (a -> b -> b) -> b -> Vector a -> b Source #

foldl :: (b -> a -> b) -> b -> Vector a -> b Source #

foldl' :: (b -> a -> b) -> b -> Vector a -> b Source #

foldr1 :: (a -> a -> a) -> Vector a -> a Source #

foldl1 :: (a -> a -> a) -> Vector a -> a Source #

toList :: Vector a -> [a] Source #

null :: Vector a -> Bool Source #

length :: Vector a -> Int Source #

elem :: Eq a => a -> Vector a -> Bool Source #

maximum :: Ord a => Vector a -> a Source #

minimum :: Ord a => Vector a -> a Source #

sum :: Num a => Vector a -> a Source #

product :: Num a => Vector a -> a Source #

Foldable Vector |

Instance details

Defined in Data.Vector.Strict

Methods

fold :: Monoid m => Vector m -> m Source #

foldMap :: Monoid m => (a -> m) -> Vector a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Vector a -> m Source #

foldr :: (a -> b -> b) -> b -> Vector a -> b Source #

foldr' :: (a -> b -> b) -> b -> Vector a -> b Source #

foldl :: (b -> a -> b) -> b -> Vector a -> b Source #

foldl' :: (b -> a -> b) -> b -> Vector a -> b Source #

foldr1 :: (a -> a -> a) -> Vector a -> a Source #

foldl1 :: (a -> a -> a) -> Vector a -> a Source #

toList :: Vector a -> [a] Source #

null :: Vector a -> Bool Source #

length :: Vector a -> Int Source #

elem :: Eq a => a -> Vector a -> Bool Source #

maximum :: Ord a => Vector a -> a Source #

minimum :: Ord a => Vector a -> a Source #

sum :: Num a => Vector a -> a Source #

product :: Num a => Vector a -> a Source #

Foldable Maybe | Since: base-2.1

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Maybe m -> m Source #

foldMap :: Monoid m => (a -> m) -> Maybe a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Maybe a -> m Source #

foldr :: (a -> b -> b) -> b -> Maybe a -> b Source #

foldr' :: (a -> b -> b) -> b -> Maybe a -> b Source #

foldl :: (b -> a -> b) -> b -> Maybe a -> b Source #

foldl' :: (b -> a -> b) -> b -> Maybe a -> b Source #

foldr1 :: (a -> a -> a) -> Maybe a -> a Source #

foldl1 :: (a -> a -> a) -> Maybe a -> a Source #

toList :: Maybe a -> [a] Source #

null :: Maybe a -> Bool Source #

length :: Maybe a -> Int Source #

elem :: Eq a => a -> Maybe a -> Bool Source #

maximum :: Ord a => Maybe a -> a Source #

minimum :: Ord a => Maybe a -> a Source #

sum :: Num a => Maybe a -> a Source #

product :: Num a => Maybe a -> a Source #

Foldable Solo | Since: base-4.15

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Solo m -> m Source #

foldMap :: Monoid m => (a -> m) -> Solo a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Solo a -> m Source #

foldr :: (a -> b -> b) -> b -> Solo a -> b Source #

foldr' :: (a -> b -> b) -> b -> Solo a -> b Source #

foldl :: (b -> a -> b) -> b -> Solo a -> b Source #

foldl' :: (b -> a -> b) -> b -> Solo a -> b Source #

foldr1 :: (a -> a -> a) -> Solo a -> a Source #

foldl1 :: (a -> a -> a) -> Solo a -> a Source #

toList :: Solo a -> [a] Source #

null :: Solo a -> Bool Source #

length :: Solo a -> Int Source #

elem :: Eq a => a -> Solo a -> Bool Source #

maximum :: Ord a => Solo a -> a Source #

minimum :: Ord a => Solo a -> a Source #

sum :: Num a => Solo a -> a Source #

product :: Num a => Solo a -> a Source #

Foldable [] | Since: base-2.1

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => [m] -> m Source #

foldMap :: Monoid m => (a -> m) -> [a] -> m Source #

foldMap' :: Monoid m => (a -> m) -> [a] -> m Source #

foldr :: (a -> b -> b) -> b -> [a] -> b Source #

foldr' :: (a -> b -> b) -> b -> [a] -> b Source #

foldl :: (b -> a -> b) -> b -> [a] -> b Source #

foldl' :: (b -> a -> b) -> b -> [a] -> b Source #

foldr1 :: (a -> a -> a) -> [a] -> a Source #

foldl1 :: (a -> a -> a) -> [a] -> a Source #

toList :: [a] -> [a] Source #

null :: [a] -> Bool Source #

length :: [a] -> Int Source #

elem :: Eq a => a -> [a] -> Bool Source #

maximum :: Ord a => [a] -> a Source #

minimum :: Ord a => [a] -> a Source #

sum :: Num a => [a] -> a Source #

product :: Num a => [a] -> a Source #

Foldable (Arg a) | Since: base-4.9.0.0

Instance details

Defined in Data.Semigroup

Methods

fold :: Monoid m => Arg a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Arg a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Arg a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Arg a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Arg a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Arg a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Arg a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Arg a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Arg a a0 -> a0 Source #

toList :: Arg a a0 -> [a0] Source #

null :: Arg a a0 -> Bool Source #

length :: Arg a a0 -> Int Source #

elem :: Eq a0 => a0 -> Arg a a0 -> Bool Source #

maximum :: Ord a0 => Arg a a0 -> a0 Source #

minimum :: Ord a0 => Arg a a0 -> a0 Source #

sum :: Num a0 => Arg a a0 -> a0 Source #

product :: Num a0 => Arg a a0 -> a0 Source #

Foldable (Map k) | Folds in order of increasing key.

Instance details

Defined in Data.Map.Internal

Methods

fold :: Monoid m => Map k m -> m Source #

foldMap :: Monoid m => (a -> m) -> Map k a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Map k a -> m Source #

foldr :: (a -> b -> b) -> b -> Map k a -> b Source #

foldr' :: (a -> b -> b) -> b -> Map k a -> b Source #

foldl :: (b -> a -> b) -> b -> Map k a -> b Source #

foldl' :: (b -> a -> b) -> b -> Map k a -> b Source #

foldr1 :: (a -> a -> a) -> Map k a -> a Source #

foldl1 :: (a -> a -> a) -> Map k a -> a Source #

toList :: Map k a -> [a] Source #

null :: Map k a -> Bool Source #

length :: Map k a -> Int Source #

elem :: Eq a => a -> Map k a -> Bool Source #

maximum :: Ord a => Map k a -> a Source #

minimum :: Ord a => Map k a -> a Source #

sum :: Num a => Map k a -> a Source #

product :: Num a => Map k a -> a Source #

Foldable f => Foldable (Cofree f) |

Instance details

Defined in Control.Comonad.Cofree

Methods

fold :: Monoid m => Cofree f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Cofree f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Cofree f a -> m Source #

foldr :: (a -> b -> b) -> b -> Cofree f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Cofree f a -> b Source #

foldl :: (b -> a -> b) -> b -> Cofree f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Cofree f a -> b Source #

foldr1 :: (a -> a -> a) -> Cofree f a -> a Source #

foldl1 :: (a -> a -> a) -> Cofree f a -> a Source #

toList :: Cofree f a -> [a] Source #

null :: Cofree f a -> Bool Source #

length :: Cofree f a -> Int Source #

elem :: Eq a => a -> Cofree f a -> Bool Source #

maximum :: Ord a => Cofree f a -> a Source #

minimum :: Ord a => Cofree f a -> a Source #

sum :: Num a => Cofree f a -> a Source #

product :: Num a => Cofree f a -> a Source #

Foldable f => Foldable (Free f) |

Instance details

Defined in Control.Monad.Free

Methods

fold :: Monoid m => Free f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Free f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Free f a -> m Source #

foldr :: (a -> b -> b) -> b -> Free f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Free f a -> b Source #

foldl :: (b -> a -> b) -> b -> Free f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Free f a -> b Source #

foldr1 :: (a -> a -> a) -> Free f a -> a Source #

foldl1 :: (a -> a -> a) -> Free f a -> a Source #

toList :: Free f a -> [a] Source #

null :: Free f a -> Bool Source #

length :: Free f a -> Int Source #

elem :: Eq a => a -> Free f a -> Bool Source #

maximum :: Ord a => Free f a -> a Source #

minimum :: Ord a => Free f a -> a Source #

sum :: Num a => Free f a -> a Source #

product :: Num a => Free f a -> a Source #

Foldable (Array i) | Since: base-4.8.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Array i m -> m Source #

foldMap :: Monoid m => (a -> m) -> Array i a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Array i a -> m Source #

foldr :: (a -> b -> b) -> b -> Array i a -> b Source #

foldr' :: (a -> b -> b) -> b -> Array i a -> b Source #

foldl :: (b -> a -> b) -> b -> Array i a -> b Source #

foldl' :: (b -> a -> b) -> b -> Array i a -> b Source #

foldr1 :: (a -> a -> a) -> Array i a -> a Source #

foldl1 :: (a -> a -> a) -> Array i a -> a Source #

toList :: Array i a -> [a] Source #

null :: Array i a -> Bool Source #

length :: Array i a -> Int Source #

elem :: Eq a => a -> Array i a -> Bool Source #

maximum :: Ord a => Array i a -> a Source #

minimum :: Ord a => Array i a -> a Source #

sum :: Num a => Array i a -> a Source #

product :: Num a => Array i a -> a Source #

Foldable (Either a) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Either a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Either a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Either a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Either a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Either a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Either a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Either a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Either a a0 -> a0 Source #

toList :: Either a a0 -> [a0] Source #

null :: Either a a0 -> Bool Source #

length :: Either a a0 -> Int Source #

elem :: Eq a0 => a0 -> Either a a0 -> Bool Source #

maximum :: Ord a0 => Either a a0 -> a0 Source #

minimum :: Ord a0 => Either a a0 -> a0 Source #

sum :: Num a0 => Either a a0 -> a0 Source #

product :: Num a0 => Either a a0 -> a0 Source #

Foldable (Proxy :: Type -> Type) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Proxy m -> m Source #

foldMap :: Monoid m => (a -> m) -> Proxy a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Proxy a -> m Source #

foldr :: (a -> b -> b) -> b -> Proxy a -> b Source #

foldr' :: (a -> b -> b) -> b -> Proxy a -> b Source #

foldl :: (b -> a -> b) -> b -> Proxy a -> b Source #

foldl' :: (b -> a -> b) -> b -> Proxy a -> b Source #

foldr1 :: (a -> a -> a) -> Proxy a -> a Source #

foldl1 :: (a -> a -> a) -> Proxy a -> a Source #

toList :: Proxy a -> [a] Source #

null :: Proxy a -> Bool Source #

length :: Proxy a -> Int Source #

elem :: Eq a => a -> Proxy a -> Bool Source #

maximum :: Ord a => Proxy a -> a Source #

minimum :: Ord a => Proxy a -> a Source #

sum :: Num a => Proxy a -> a Source #

product :: Num a => Proxy a -> a Source #

Foldable (U1 :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => U1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> U1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> U1 a -> m Source #

foldr :: (a -> b -> b) -> b -> U1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> U1 a -> b Source #

foldl :: (b -> a -> b) -> b -> U1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> U1 a -> b Source #

foldr1 :: (a -> a -> a) -> U1 a -> a Source #

foldl1 :: (a -> a -> a) -> U1 a -> a Source #

toList :: U1 a -> [a] Source #

null :: U1 a -> Bool Source #

length :: U1 a -> Int Source #

elem :: Eq a => a -> U1 a -> Bool Source #

maximum :: Ord a => U1 a -> a Source #

minimum :: Ord a => U1 a -> a Source #

sum :: Num a => U1 a -> a Source #

product :: Num a => U1 a -> a Source #

Foldable (UAddr :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UAddr m -> m Source #

foldMap :: Monoid m => (a -> m) -> UAddr a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UAddr a -> m Source #

foldr :: (a -> b -> b) -> b -> UAddr a -> b Source #

foldr' :: (a -> b -> b) -> b -> UAddr a -> b Source #

foldl :: (b -> a -> b) -> b -> UAddr a -> b Source #

foldl' :: (b -> a -> b) -> b -> UAddr a -> b Source #

foldr1 :: (a -> a -> a) -> UAddr a -> a Source #

foldl1 :: (a -> a -> a) -> UAddr a -> a Source #

toList :: UAddr a -> [a] Source #

null :: UAddr a -> Bool Source #

length :: UAddr a -> Int Source #

elem :: Eq a => a -> UAddr a -> Bool Source #

maximum :: Ord a => UAddr a -> a Source #

minimum :: Ord a => UAddr a -> a Source #

sum :: Num a => UAddr a -> a Source #

product :: Num a => UAddr a -> a Source #

Foldable (UChar :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UChar m -> m Source #

foldMap :: Monoid m => (a -> m) -> UChar a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UChar a -> m Source #

foldr :: (a -> b -> b) -> b -> UChar a -> b Source #

foldr' :: (a -> b -> b) -> b -> UChar a -> b Source #

foldl :: (b -> a -> b) -> b -> UChar a -> b Source #

foldl' :: (b -> a -> b) -> b -> UChar a -> b Source #

foldr1 :: (a -> a -> a) -> UChar a -> a Source #

foldl1 :: (a -> a -> a) -> UChar a -> a Source #

toList :: UChar a -> [a] Source #

null :: UChar a -> Bool Source #

length :: UChar a -> Int Source #

elem :: Eq a => a -> UChar a -> Bool Source #

maximum :: Ord a => UChar a -> a Source #

minimum :: Ord a => UChar a -> a Source #

sum :: Num a => UChar a -> a Source #

product :: Num a => UChar a -> a Source #

Foldable (UDouble :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UDouble m -> m Source #

foldMap :: Monoid m => (a -> m) -> UDouble a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UDouble a -> m Source #

foldr :: (a -> b -> b) -> b -> UDouble a -> b Source #

foldr' :: (a -> b -> b) -> b -> UDouble a -> b Source #

foldl :: (b -> a -> b) -> b -> UDouble a -> b Source #

foldl' :: (b -> a -> b) -> b -> UDouble a -> b Source #

foldr1 :: (a -> a -> a) -> UDouble a -> a Source #

foldl1 :: (a -> a -> a) -> UDouble a -> a Source #

toList :: UDouble a -> [a] Source #

null :: UDouble a -> Bool Source #

length :: UDouble a -> Int Source #

elem :: Eq a => a -> UDouble a -> Bool Source #

maximum :: Ord a => UDouble a -> a Source #

minimum :: Ord a => UDouble a -> a Source #

sum :: Num a => UDouble a -> a Source #

product :: Num a => UDouble a -> a Source #

Foldable (UFloat :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UFloat m -> m Source #

foldMap :: Monoid m => (a -> m) -> UFloat a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UFloat a -> m Source #

foldr :: (a -> b -> b) -> b -> UFloat a -> b Source #

foldr' :: (a -> b -> b) -> b -> UFloat a -> b Source #

foldl :: (b -> a -> b) -> b -> UFloat a -> b Source #

foldl' :: (b -> a -> b) -> b -> UFloat a -> b Source #

foldr1 :: (a -> a -> a) -> UFloat a -> a Source #

foldl1 :: (a -> a -> a) -> UFloat a -> a Source #

toList :: UFloat a -> [a] Source #

null :: UFloat a -> Bool Source #

length :: UFloat a -> Int Source #

elem :: Eq a => a -> UFloat a -> Bool Source #

maximum :: Ord a => UFloat a -> a Source #

minimum :: Ord a => UFloat a -> a Source #

sum :: Num a => UFloat a -> a Source #

product :: Num a => UFloat a -> a Source #

Foldable (UInt :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UInt m -> m Source #

foldMap :: Monoid m => (a -> m) -> UInt a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UInt a -> m Source #

foldr :: (a -> b -> b) -> b -> UInt a -> b Source #

foldr' :: (a -> b -> b) -> b -> UInt a -> b Source #

foldl :: (b -> a -> b) -> b -> UInt a -> b Source #

foldl' :: (b -> a -> b) -> b -> UInt a -> b Source #

foldr1 :: (a -> a -> a) -> UInt a -> a Source #

foldl1 :: (a -> a -> a) -> UInt a -> a Source #

toList :: UInt a -> [a] Source #

null :: UInt a -> Bool Source #

length :: UInt a -> Int Source #

elem :: Eq a => a -> UInt a -> Bool Source #

maximum :: Ord a => UInt a -> a Source #

minimum :: Ord a => UInt a -> a Source #

sum :: Num a => UInt a -> a Source #

product :: Num a => UInt a -> a Source #

Foldable (UWord :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => UWord m -> m Source #

foldMap :: Monoid m => (a -> m) -> UWord a -> m Source #

foldMap' :: Monoid m => (a -> m) -> UWord a -> m Source #

foldr :: (a -> b -> b) -> b -> UWord a -> b Source #

foldr' :: (a -> b -> b) -> b -> UWord a -> b Source #

foldl :: (b -> a -> b) -> b -> UWord a -> b Source #

foldl' :: (b -> a -> b) -> b -> UWord a -> b Source #

foldr1 :: (a -> a -> a) -> UWord a -> a Source #

foldl1 :: (a -> a -> a) -> UWord a -> a Source #

toList :: UWord a -> [a] Source #

null :: UWord a -> Bool Source #

length :: UWord a -> Int Source #

elem :: Eq a => a -> UWord a -> Bool Source #

maximum :: Ord a => UWord a -> a Source #

minimum :: Ord a => UWord a -> a Source #

sum :: Num a => UWord a -> a Source #

product :: Num a => UWord a -> a Source #

Foldable (V1 :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => V1 m -> m Source #

foldMap :: Monoid m => (a -> m) -> V1 a -> m Source #

foldMap' :: Monoid m => (a -> m) -> V1 a -> m Source #

foldr :: (a -> b -> b) -> b -> V1 a -> b Source #

foldr' :: (a -> b -> b) -> b -> V1 a -> b Source #

foldl :: (b -> a -> b) -> b -> V1 a -> b Source #

foldl' :: (b -> a -> b) -> b -> V1 a -> b Source #

foldr1 :: (a -> a -> a) -> V1 a -> a Source #

foldl1 :: (a -> a -> a) -> V1 a -> a Source #

toList :: V1 a -> [a] Source #

null :: V1 a -> Bool Source #

length :: V1 a -> Int Source #

elem :: Eq a => a -> V1 a -> Bool Source #

maximum :: Ord a => V1 a -> a Source #

minimum :: Ord a => V1 a -> a Source #

sum :: Num a => V1 a -> a Source #

product :: Num a => V1 a -> a Source #

MonoFoldable mono => Foldable (WrappedMono mono) |

Instance details

Defined in Data.MonoTraversable

Methods

fold :: Monoid m => WrappedMono mono m -> m Source #

foldMap :: Monoid m => (a -> m) -> WrappedMono mono a -> m Source #

foldMap' :: Monoid m => (a -> m) -> WrappedMono mono a -> m Source #

foldr :: (a -> b -> b) -> b -> WrappedMono mono a -> b Source #

foldr' :: (a -> b -> b) -> b -> WrappedMono mono a -> b Source #

foldl :: (b -> a -> b) -> b -> WrappedMono mono a -> b Source #

foldl' :: (b -> a -> b) -> b -> WrappedMono mono a -> b Source #

foldr1 :: (a -> a -> a) -> WrappedMono mono a -> a Source #

foldl1 :: (a -> a -> a) -> WrappedMono mono a -> a Source #

toList :: WrappedMono mono a -> [a] Source #

null :: WrappedMono mono a -> Bool Source #

length :: WrappedMono mono a -> Int Source #

elem :: Eq a => a -> WrappedMono mono a -> Bool Source #

maximum :: Ord a => WrappedMono mono a -> a Source #

minimum :: Ord a => WrappedMono mono a -> a Source #

sum :: Num a => WrappedMono mono a -> a Source #

product :: Num a => WrappedMono mono a -> a Source #

Foldable f => Foldable (WrappedPoly f) |

Instance details

Defined in Data.MonoTraversable

Methods

fold :: Monoid m => WrappedPoly f m -> m Source #

foldMap :: Monoid m => (a -> m) -> WrappedPoly f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> WrappedPoly f a -> m Source #

foldr :: (a -> b -> b) -> b -> WrappedPoly f a -> b Source #

foldr' :: (a -> b -> b) -> b -> WrappedPoly f a -> b Source #

foldl :: (b -> a -> b) -> b -> WrappedPoly f a -> b Source #

foldl' :: (b -> a -> b) -> b -> WrappedPoly f a -> b Source #

foldr1 :: (a -> a -> a) -> WrappedPoly f a -> a Source #

foldl1 :: (a -> a -> a) -> WrappedPoly f a -> a Source #

toList :: WrappedPoly f a -> [a] Source #

null :: WrappedPoly f a -> Bool Source #

length :: WrappedPoly f a -> Int Source #

elem :: Eq a => a -> WrappedPoly f a -> Bool Source #

maximum :: Ord a => WrappedPoly f a -> a Source #

minimum :: Ord a => WrappedPoly f a -> a Source #

sum :: Num a => WrappedPoly f a -> a Source #

product :: Num a => WrappedPoly f a -> a Source #

Foldable f => Foldable (Lift f) |

Instance details

Defined in Control.Applicative.Lift

Methods

fold :: Monoid m => Lift f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Lift f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Lift f a -> m Source #

foldr :: (a -> b -> b) -> b -> Lift f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Lift f a -> b Source #

foldl :: (b -> a -> b) -> b -> Lift f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Lift f a -> b Source #

foldr1 :: (a -> a -> a) -> Lift f a -> a Source #

foldl1 :: (a -> a -> a) -> Lift f a -> a Source #

toList :: Lift f a -> [a] Source #

null :: Lift f a -> Bool Source #

length :: Lift f a -> Int Source #

elem :: Eq a => a -> Lift f a -> Bool Source #

maximum :: Ord a => Lift f a -> a Source #

minimum :: Ord a => Lift f a -> a Source #

sum :: Num a => Lift f a -> a Source #

product :: Num a => Lift f a -> a Source #

Foldable f => Foldable (MaybeT f) |

Instance details

Defined in Control.Monad.Trans.Maybe

Methods

fold :: Monoid m => MaybeT f m -> m Source #

foldMap :: Monoid m => (a -> m) -> MaybeT f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> MaybeT f a -> m Source #

foldr :: (a -> b -> b) -> b -> MaybeT f a -> b Source #

foldr' :: (a -> b -> b) -> b -> MaybeT f a -> b Source #

foldl :: (b -> a -> b) -> b -> MaybeT f a -> b Source #

foldl' :: (b -> a -> b) -> b -> MaybeT f a -> b Source #

foldr1 :: (a -> a -> a) -> MaybeT f a -> a Source #

foldl1 :: (a -> a -> a) -> MaybeT f a -> a Source #

toList :: MaybeT f a -> [a] Source #

null :: MaybeT f a -> Bool Source #

length :: MaybeT f a -> Int Source #

elem :: Eq a => a -> MaybeT f a -> Bool Source #

maximum :: Ord a => MaybeT f a -> a Source #

minimum :: Ord a => MaybeT f a -> a Source #

sum :: Num a => MaybeT f a -> a Source #

product :: Num a => MaybeT f a -> a Source #

Foldable (HashMap k) |

Instance details

Defined in Data.HashMap.Internal

Methods

fold :: Monoid m => HashMap k m -> m Source #

foldMap :: Monoid m => (a -> m) -> HashMap k a -> m Source #

foldMap' :: Monoid m => (a -> m) -> HashMap k a -> m Source #

foldr :: (a -> b -> b) -> b -> HashMap k a -> b Source #

foldr' :: (a -> b -> b) -> b -> HashMap k a -> b Source #

foldl :: (b -> a -> b) -> b -> HashMap k a -> b Source #

foldl' :: (b -> a -> b) -> b -> HashMap k a -> b Source #

foldr1 :: (a -> a -> a) -> HashMap k a -> a Source #

foldl1 :: (a -> a -> a) -> HashMap k a -> a Source #

toList :: HashMap k a -> [a] Source #

null :: HashMap k a -> Bool Source #

length :: HashMap k a -> Int Source #

elem :: Eq a => a -> HashMap k a -> Bool Source #

maximum :: Ord a => HashMap k a -> a Source #

minimum :: Ord a => HashMap k a -> a Source #

sum :: Num a => HashMap k a -> a Source #

product :: Num a => HashMap k a -> a Source #

Foldable ((,) a) | Since: base-4.7.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => (a, m) -> m Source #

foldMap :: Monoid m => (a0 -> m) -> (a, a0) -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> (a, a0) -> m Source #

foldr :: (a0 -> b -> b) -> b -> (a, a0) -> b Source #

foldr' :: (a0 -> b -> b) -> b -> (a, a0) -> b Source #

foldl :: (b -> a0 -> b) -> b -> (a, a0) -> b Source #

foldl' :: (b -> a0 -> b) -> b -> (a, a0) -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> (a, a0) -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> (a, a0) -> a0 Source #

toList :: (a, a0) -> [a0] Source #

null :: (a, a0) -> Bool Source #

length :: (a, a0) -> Int Source #

elem :: Eq a0 => a0 -> (a, a0) -> Bool Source #

maximum :: Ord a0 => (a, a0) -> a0 Source #

minimum :: Ord a0 => (a, a0) -> a0 Source #

sum :: Num a0 => (a, a0) -> a0 Source #

product :: Num a0 => (a, a0) -> a0 Source #

Foldable (bi a) => Foldable (Biap bi a) |

Instance details

Defined in Data.Bifunctor.Biap

Methods

fold :: Monoid m => Biap bi a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Biap bi a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Biap bi a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Biap bi a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Biap bi a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Biap bi a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Biap bi a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Biap bi a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Biap bi a a0 -> a0 Source #

toList :: Biap bi a a0 -> [a0] Source #

null :: Biap bi a a0 -> Bool Source #

length :: Biap bi a a0 -> Int Source #

elem :: Eq a0 => a0 -> Biap bi a a0 -> Bool Source #

maximum :: Ord a0 => Biap bi a a0 -> a0 Source #

minimum :: Ord a0 => Biap bi a a0 -> a0 Source #

sum :: Num a0 => Biap bi a a0 -> a0 Source #

product :: Num a0 => Biap bi a a0 -> a0 Source #

Bifoldable p => Foldable (Fix p) |

Instance details

Defined in Data.Bifunctor.Fix

Methods

fold :: Monoid m => Fix p m -> m Source #

foldMap :: Monoid m => (a -> m) -> Fix p a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Fix p a -> m Source #

foldr :: (a -> b -> b) -> b -> Fix p a -> b Source #

foldr' :: (a -> b -> b) -> b -> Fix p a -> b Source #

foldl :: (b -> a -> b) -> b -> Fix p a -> b Source #

foldl' :: (b -> a -> b) -> b -> Fix p a -> b Source #

foldr1 :: (a -> a -> a) -> Fix p a -> a Source #

foldl1 :: (a -> a -> a) -> Fix p a -> a Source #

toList :: Fix p a -> [a] Source #

null :: Fix p a -> Bool Source #

length :: Fix p a -> Int Source #

elem :: Eq a => a -> Fix p a -> Bool Source #

maximum :: Ord a => Fix p a -> a Source #

minimum :: Ord a => Fix p a -> a Source #

sum :: Num a => Fix p a -> a Source #

product :: Num a => Fix p a -> a Source #

Bifoldable p => Foldable (Join p) |

Instance details

Defined in Data.Bifunctor.Join

Methods

fold :: Monoid m => Join p m -> m Source #

foldMap :: Monoid m => (a -> m) -> Join p a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Join p a -> m Source #

foldr :: (a -> b -> b) -> b -> Join p a -> b Source #

foldr' :: (a -> b -> b) -> b -> Join p a -> b Source #

foldl :: (b -> a -> b) -> b -> Join p a -> b Source #

foldl' :: (b -> a -> b) -> b -> Join p a -> b Source #

foldr1 :: (a -> a -> a) -> Join p a -> a Source #

foldl1 :: (a -> a -> a) -> Join p a -> a Source #

toList :: Join p a -> [a] Source #

null :: Join p a -> Bool Source #

length :: Join p a -> Int Source #

elem :: Eq a => a -> Join p a -> Bool Source #

maximum :: Ord a => Join p a -> a Source #

minimum :: Ord a => Join p a -> a Source #

sum :: Num a => Join p a -> a Source #

product :: Num a => Join p a -> a Source #

Foldable f => Foldable (FreeF f a) |

Instance details

Defined in Control.Monad.Trans.Free

Methods

fold :: Monoid m => FreeF f a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> FreeF f a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> FreeF f a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> FreeF f a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> FreeF f a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> FreeF f a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> FreeF f a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> FreeF f a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> FreeF f a a0 -> a0 Source #

toList :: FreeF f a a0 -> [a0] Source #

null :: FreeF f a a0 -> Bool Source #

length :: FreeF f a a0 -> Int Source #

elem :: Eq a0 => a0 -> FreeF f a a0 -> Bool Source #

maximum :: Ord a0 => FreeF f a a0 -> a0 Source #

minimum :: Ord a0 => FreeF f a a0 -> a0 Source #

sum :: Num a0 => FreeF f a a0 -> a0 Source #

product :: Num a0 => FreeF f a a0 -> a0 Source #

(Foldable m, Foldable f) => Foldable (FreeT f m) |

Instance details

Defined in Control.Monad.Trans.Free

Methods

fold :: Monoid m0 => FreeT f m m0 -> m0 Source #

foldMap :: Monoid m0 => (a -> m0) -> FreeT f m a -> m0 Source #

foldMap' :: Monoid m0 => (a -> m0) -> FreeT f m a -> m0 Source #

foldr :: (a -> b -> b) -> b -> FreeT f m a -> b Source #

foldr' :: (a -> b -> b) -> b -> FreeT f m a -> b Source #

foldl :: (b -> a -> b) -> b -> FreeT f m a -> b Source #

foldl' :: (b -> a -> b) -> b -> FreeT f m a -> b Source #

foldr1 :: (a -> a -> a) -> FreeT f m a -> a Source #

foldl1 :: (a -> a -> a) -> FreeT f m a -> a Source #

toList :: FreeT f m a -> [a] Source #

null :: FreeT f m a -> Bool Source #

length :: FreeT f m a -> Int Source #

elem :: Eq a => a -> FreeT f m a -> Bool Source #

maximum :: Ord a => FreeT f m a -> a Source #

minimum :: Ord a => FreeT f m a -> a Source #

sum :: Num a => FreeT f m a -> a Source #

product :: Num a => FreeT f m a -> a Source #

Foldable f => Foldable (Ap f) | Since: base-4.12.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Ap f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Ap f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Ap f a -> m Source #

foldr :: (a -> b -> b) -> b -> Ap f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Ap f a -> b Source #

foldl :: (b -> a -> b) -> b -> Ap f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Ap f a -> b Source #

foldr1 :: (a -> a -> a) -> Ap f a -> a Source #

foldl1 :: (a -> a -> a) -> Ap f a -> a Source #

toList :: Ap f a -> [a] Source #

null :: Ap f a -> Bool Source #

length :: Ap f a -> Int Source #

elem :: Eq a => a -> Ap f a -> Bool Source #

maximum :: Ord a => Ap f a -> a Source #

minimum :: Ord a => Ap f a -> a Source #

sum :: Num a => Ap f a -> a Source #

product :: Num a => Ap f a -> a Source #

Foldable f => Foldable (Alt f) | Since: base-4.12.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Alt f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Alt f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Alt f a -> m Source #

foldr :: (a -> b -> b) -> b -> Alt f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Alt f a -> b Source #

foldl :: (b -> a -> b) -> b -> Alt f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Alt f a -> b Source #

foldr1 :: (a -> a -> a) -> Alt f a -> a Source #

foldl1 :: (a -> a -> a) -> Alt f a -> a Source #

toList :: Alt f a -> [a] Source #

null :: Alt f a -> Bool Source #

length :: Alt f a -> Int Source #

elem :: Eq a => a -> Alt f a -> Bool Source #

maximum :: Ord a => Alt f a -> a Source #

minimum :: Ord a => Alt f a -> a Source #

sum :: Num a => Alt f a -> a Source #

product :: Num a => Alt f a -> a Source #

Foldable f => Foldable (Rec1 f) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => Rec1 f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Rec1 f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Rec1 f a -> m Source #

foldr :: (a -> b -> b) -> b -> Rec1 f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Rec1 f a -> b Source #

foldl :: (b -> a -> b) -> b -> Rec1 f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Rec1 f a -> b Source #

foldr1 :: (a -> a -> a) -> Rec1 f a -> a Source #

foldl1 :: (a -> a -> a) -> Rec1 f a -> a Source #

toList :: Rec1 f a -> [a] Source #

null :: Rec1 f a -> Bool Source #

length :: Rec1 f a -> Int Source #

elem :: Eq a => a -> Rec1 f a -> Bool Source #

maximum :: Ord a => Rec1 f a -> a Source #

minimum :: Ord a => Rec1 f a -> a Source #

sum :: Num a => Rec1 f a -> a Source #

product :: Num a => Rec1 f a -> a Source #

Foldable (Tagged s) |

Instance details

Defined in Data.Tagged

Methods

fold :: Monoid m => Tagged s m -> m Source #

foldMap :: Monoid m => (a -> m) -> Tagged s a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Tagged s a -> m Source #

foldr :: (a -> b -> b) -> b -> Tagged s a -> b Source #

foldr' :: (a -> b -> b) -> b -> Tagged s a -> b Source #

foldl :: (b -> a -> b) -> b -> Tagged s a -> b Source #

foldl' :: (b -> a -> b) -> b -> Tagged s a -> b Source #

foldr1 :: (a -> a -> a) -> Tagged s a -> a Source #

foldl1 :: (a -> a -> a) -> Tagged s a -> a Source #

toList :: Tagged s a -> [a] Source #

null :: Tagged s a -> Bool Source #

length :: Tagged s a -> Int Source #

elem :: Eq a => a -> Tagged s a -> Bool Source #

maximum :: Ord a => Tagged s a -> a Source #

minimum :: Ord a => Tagged s a -> a Source #

sum :: Num a => Tagged s a -> a Source #

product :: Num a => Tagged s a -> a Source #

Foldable f => Foldable (Backwards f) | Derived instance.

Instance details

Defined in Control.Applicative.Backwards

Methods

fold :: Monoid m => Backwards f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Backwards f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Backwards f a -> m Source #

foldr :: (a -> b -> b) -> b -> Backwards f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Backwards f a -> b Source #

foldl :: (b -> a -> b) -> b -> Backwards f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Backwards f a -> b Source #

foldr1 :: (a -> a -> a) -> Backwards f a -> a Source #

foldl1 :: (a -> a -> a) -> Backwards f a -> a Source #

toList :: Backwards f a -> [a] Source #

null :: Backwards f a -> Bool Source #

length :: Backwards f a -> Int Source #

elem :: Eq a => a -> Backwards f a -> Bool Source #

maximum :: Ord a => Backwards f a -> a Source #

minimum :: Ord a => Backwards f a -> a Source #

sum :: Num a => Backwards f a -> a Source #

product :: Num a => Backwards f a -> a Source #

Foldable f => Foldable (ExceptT e f) |

Instance details

Defined in Control.Monad.Trans.Except

Methods

fold :: Monoid m => ExceptT e f m -> m Source #

foldMap :: Monoid m => (a -> m) -> ExceptT e f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> ExceptT e f a -> m Source #

foldr :: (a -> b -> b) -> b -> ExceptT e f a -> b Source #

foldr' :: (a -> b -> b) -> b -> ExceptT e f a -> b Source #

foldl :: (b -> a -> b) -> b -> ExceptT e f a -> b Source #

foldl' :: (b -> a -> b) -> b -> ExceptT e f a -> b Source #

foldr1 :: (a -> a -> a) -> ExceptT e f a -> a Source #

foldl1 :: (a -> a -> a) -> ExceptT e f a -> a Source #

toList :: ExceptT e f a -> [a] Source #

null :: ExceptT e f a -> Bool Source #

length :: ExceptT e f a -> Int Source #

elem :: Eq a => a -> ExceptT e f a -> Bool Source #

maximum :: Ord a => ExceptT e f a -> a Source #

minimum :: Ord a => ExceptT e f a -> a Source #

sum :: Num a => ExceptT e f a -> a Source #

product :: Num a => ExceptT e f a -> a Source #

Foldable f => Foldable (IdentityT f) |

Instance details

Defined in Control.Monad.Trans.Identity

Methods

fold :: Monoid m => IdentityT f m -> m Source #

foldMap :: Monoid m => (a -> m) -> IdentityT f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> IdentityT f a -> m Source #

foldr :: (a -> b -> b) -> b -> IdentityT f a -> b Source #

foldr' :: (a -> b -> b) -> b -> IdentityT f a -> b Source #

foldl :: (b -> a -> b) -> b -> IdentityT f a -> b Source #

foldl' :: (b -> a -> b) -> b -> IdentityT f a -> b Source #

foldr1 :: (a -> a -> a) -> IdentityT f a -> a Source #

foldl1 :: (a -> a -> a) -> IdentityT f a -> a Source #

toList :: IdentityT f a -> [a] Source #

null :: IdentityT f a -> Bool Source #

length :: IdentityT f a -> Int Source #

elem :: Eq a => a -> IdentityT f a -> Bool Source #

maximum :: Ord a => IdentityT f a -> a Source #

minimum :: Ord a => IdentityT f a -> a Source #

sum :: Num a => IdentityT f a -> a Source #

product :: Num a => IdentityT f a -> a Source #

Foldable f => Foldable (WriterT w f) |

Instance details

Defined in Control.Monad.Trans.Writer.Lazy

Methods

fold :: Monoid m => WriterT w f m -> m Source #

foldMap :: Monoid m => (a -> m) -> WriterT w f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> WriterT w f a -> m Source #

foldr :: (a -> b -> b) -> b -> WriterT w f a -> b Source #

foldr' :: (a -> b -> b) -> b -> WriterT w f a -> b Source #

foldl :: (b -> a -> b) -> b -> WriterT w f a -> b Source #

foldl' :: (b -> a -> b) -> b -> WriterT w f a -> b Source #

foldr1 :: (a -> a -> a) -> WriterT w f a -> a Source #

foldl1 :: (a -> a -> a) -> WriterT w f a -> a Source #

toList :: WriterT w f a -> [a] Source #

null :: WriterT w f a -> Bool Source #

length :: WriterT w f a -> Int Source #

elem :: Eq a => a -> WriterT w f a -> Bool Source #

maximum :: Ord a => WriterT w f a -> a Source #

minimum :: Ord a => WriterT w f a -> a Source #

sum :: Num a => WriterT w f a -> a Source #

product :: Num a => WriterT w f a -> a Source #

Foldable f => Foldable (WriterT w f) |

Instance details

Defined in Control.Monad.Trans.Writer.Strict

Methods

fold :: Monoid m => WriterT w f m -> m Source #

foldMap :: Monoid m => (a -> m) -> WriterT w f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> WriterT w f a -> m Source #

foldr :: (a -> b -> b) -> b -> WriterT w f a -> b Source #

foldr' :: (a -> b -> b) -> b -> WriterT w f a -> b Source #

foldl :: (b -> a -> b) -> b -> WriterT w f a -> b Source #

foldl' :: (b -> a -> b) -> b -> WriterT w f a -> b Source #

foldr1 :: (a -> a -> a) -> WriterT w f a -> a Source #

foldl1 :: (a -> a -> a) -> WriterT w f a -> a Source #

toList :: WriterT w f a -> [a] Source #

null :: WriterT w f a -> Bool Source #

length :: WriterT w f a -> Int Source #

elem :: Eq a => a -> WriterT w f a -> Bool Source #

maximum :: Ord a => WriterT w f a -> a Source #

minimum :: Ord a => WriterT w f a -> a Source #

sum :: Num a => WriterT w f a -> a Source #

product :: Num a => WriterT w f a -> a Source #

Foldable (Constant a :: Type -> Type) |

Instance details

Defined in Data.Functor.Constant

Methods

fold :: Monoid m => Constant a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Constant a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Constant a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Constant a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Constant a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Constant a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Constant a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Constant a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Constant a a0 -> a0 Source #

toList :: Constant a a0 -> [a0] Source #

null :: Constant a a0 -> Bool Source #

length :: Constant a a0 -> Int Source #

elem :: Eq a0 => a0 -> Constant a a0 -> Bool Source #

maximum :: Ord a0 => Constant a a0 -> a0 Source #

minimum :: Ord a0 => Constant a a0 -> a0 Source #

sum :: Num a0 => Constant a a0 -> a0 Source #

product :: Num a0 => Constant a a0 -> a0 Source #

Foldable f => Foldable (Reverse f) | Fold from right to left.

Instance details

Defined in Data.Functor.Reverse

Methods

fold :: Monoid m => Reverse f m -> m Source #

foldMap :: Monoid m => (a -> m) -> Reverse f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Reverse f a -> m Source #

foldr :: (a -> b -> b) -> b -> Reverse f a -> b Source #

foldr' :: (a -> b -> b) -> b -> Reverse f a -> b Source #

foldl :: (b -> a -> b) -> b -> Reverse f a -> b Source #

foldl' :: (b -> a -> b) -> b -> Reverse f a -> b Source #

foldr1 :: (a -> a -> a) -> Reverse f a -> a Source #

foldl1 :: (a -> a -> a) -> Reverse f a -> a Source #

toList :: Reverse f a -> [a] Source #

null :: Reverse f a -> Bool Source #

length :: Reverse f a -> Int Source #

elem :: Eq a => a -> Reverse f a -> Bool Source #

maximum :: Ord a => Reverse f a -> a Source #

minimum :: Ord a => Reverse f a -> a Source #

sum :: Num a => Reverse f a -> a Source #

product :: Num a => Reverse f a -> a Source #

(Foldable f, Foldable g) => Foldable (Product f g) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Product

Methods

fold :: Monoid m => Product f g m -> m Source #

foldMap :: Monoid m => (a -> m) -> Product f g a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Product f g a -> m Source #

foldr :: (a -> b -> b) -> b -> Product f g a -> b Source #

foldr' :: (a -> b -> b) -> b -> Product f g a -> b Source #

foldl :: (b -> a -> b) -> b -> Product f g a -> b Source #

foldl' :: (b -> a -> b) -> b -> Product f g a -> b Source #

foldr1 :: (a -> a -> a) -> Product f g a -> a Source #

foldl1 :: (a -> a -> a) -> Product f g a -> a Source #

toList :: Product f g a -> [a] Source #

null :: Product f g a -> Bool Source #

length :: Product f g a -> Int Source #

elem :: Eq a => a -> Product f g a -> Bool Source #

maximum :: Ord a => Product f g a -> a Source #

minimum :: Ord a => Product f g a -> a Source #

sum :: Num a => Product f g a -> a Source #

product :: Num a => Product f g a -> a Source #

(Foldable f, Foldable g) => Foldable (Sum f g) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Sum

Methods

fold :: Monoid m => Sum f g m -> m Source #

foldMap :: Monoid m => (a -> m) -> Sum f g a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Sum f g a -> m Source #

foldr :: (a -> b -> b) -> b -> Sum f g a -> b Source #

foldr' :: (a -> b -> b) -> b -> Sum f g a -> b Source #

foldl :: (b -> a -> b) -> b -> Sum f g a -> b Source #

foldl' :: (b -> a -> b) -> b -> Sum f g a -> b Source #

foldr1 :: (a -> a -> a) -> Sum f g a -> a Source #

foldl1 :: (a -> a -> a) -> Sum f g a -> a Source #

toList :: Sum f g a -> [a] Source #

null :: Sum f g a -> Bool Source #

length :: Sum f g a -> Int Source #

elem :: Eq a => a -> Sum f g a -> Bool Source #

maximum :: Ord a => Sum f g a -> a Source #

minimum :: Ord a => Sum f g a -> a Source #

sum :: Num a => Sum f g a -> a Source #

product :: Num a => Sum f g a -> a Source #

(Foldable f, Foldable g) => Foldable (f :*: g) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => (f :*: g) m -> m Source #

foldMap :: Monoid m => (a -> m) -> (f :*: g) a -> m Source #

foldMap' :: Monoid m => (a -> m) -> (f :*: g) a -> m Source #

foldr :: (a -> b -> b) -> b -> (f :*: g) a -> b Source #

foldr' :: (a -> b -> b) -> b -> (f :*: g) a -> b Source #

foldl :: (b -> a -> b) -> b -> (f :*: g) a -> b Source #

foldl' :: (b -> a -> b) -> b -> (f :*: g) a -> b Source #

foldr1 :: (a -> a -> a) -> (f :*: g) a -> a Source #

foldl1 :: (a -> a -> a) -> (f :*: g) a -> a Source #

toList :: (f :*: g) a -> [a] Source #

null :: (f :*: g) a -> Bool Source #

length :: (f :*: g) a -> Int Source #

elem :: Eq a => a -> (f :*: g) a -> Bool Source #

maximum :: Ord a => (f :*: g) a -> a Source #

minimum :: Ord a => (f :*: g) a -> a Source #

sum :: Num a => (f :*: g) a -> a Source #

product :: Num a => (f :*: g) a -> a Source #

(Foldable f, Foldable g) => Foldable (f :+: g) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => (f :+: g) m -> m Source #

foldMap :: Monoid m => (a -> m) -> (f :+: g) a -> m Source #

foldMap' :: Monoid m => (a -> m) -> (f :+: g) a -> m Source #

foldr :: (a -> b -> b) -> b -> (f :+: g) a -> b Source #

foldr' :: (a -> b -> b) -> b -> (f :+: g) a -> b Source #

foldl :: (b -> a -> b) -> b -> (f :+: g) a -> b Source #

foldl' :: (b -> a -> b) -> b -> (f :+: g) a -> b Source #

foldr1 :: (a -> a -> a) -> (f :+: g) a -> a Source #

foldl1 :: (a -> a -> a) -> (f :+: g) a -> a Source #

toList :: (f :+: g) a -> [a] Source #

null :: (f :+: g) a -> Bool Source #

length :: (f :+: g) a -> Int Source #

elem :: Eq a => a -> (f :+: g) a -> Bool Source #

maximum :: Ord a => (f :+: g) a -> a Source #

minimum :: Ord a => (f :+: g) a -> a Source #

sum :: Num a => (f :+: g) a -> a Source #

product :: Num a => (f :+: g) a -> a Source #

Foldable (K1 i c :: Type -> Type) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => K1 i c m -> m Source #

foldMap :: Monoid m => (a -> m) -> K1 i c a -> m Source #

foldMap' :: Monoid m => (a -> m) -> K1 i c a -> m Source #

foldr :: (a -> b -> b) -> b -> K1 i c a -> b Source #

foldr' :: (a -> b -> b) -> b -> K1 i c a -> b Source #

foldl :: (b -> a -> b) -> b -> K1 i c a -> b Source #

foldl' :: (b -> a -> b) -> b -> K1 i c a -> b Source #

foldr1 :: (a -> a -> a) -> K1 i c a -> a Source #

foldl1 :: (a -> a -> a) -> K1 i c a -> a Source #

toList :: K1 i c a -> [a] Source #

null :: K1 i c a -> Bool Source #

length :: K1 i c a -> Int Source #

elem :: Eq a => a -> K1 i c a -> Bool Source #

maximum :: Ord a => K1 i c a -> a Source #

minimum :: Ord a => K1 i c a -> a Source #

sum :: Num a => K1 i c a -> a Source #

product :: Num a => K1 i c a -> a Source #

(Foldable f, Foldable g) => Foldable (Compose f g) | Since: base-4.9.0.0

Instance details

Defined in Data.Functor.Compose

Methods

fold :: Monoid m => Compose f g m -> m Source #

foldMap :: Monoid m => (a -> m) -> Compose f g a -> m Source #

foldMap' :: Monoid m => (a -> m) -> Compose f g a -> m Source #

foldr :: (a -> b -> b) -> b -> Compose f g a -> b Source #

foldr' :: (a -> b -> b) -> b -> Compose f g a -> b Source #

foldl :: (b -> a -> b) -> b -> Compose f g a -> b Source #

foldl' :: (b -> a -> b) -> b -> Compose f g a -> b Source #

foldr1 :: (a -> a -> a) -> Compose f g a -> a Source #

foldl1 :: (a -> a -> a) -> Compose f g a -> a Source #

toList :: Compose f g a -> [a] Source #

null :: Compose f g a -> Bool Source #

length :: Compose f g a -> Int Source #

elem :: Eq a => a -> Compose f g a -> Bool Source #

maximum :: Ord a => Compose f g a -> a Source #

minimum :: Ord a => Compose f g a -> a Source #

sum :: Num a => Compose f g a -> a Source #

product :: Num a => Compose f g a -> a Source #

Foldable (Clown f a :: Type -> Type) |

Instance details

Defined in Data.Bifunctor.Clown

Methods

fold :: Monoid m => Clown f a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Clown f a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Clown f a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Clown f a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Clown f a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Clown f a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Clown f a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Clown f a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Clown f a a0 -> a0 Source #

toList :: Clown f a a0 -> [a0] Source #

null :: Clown f a a0 -> Bool Source #

length :: Clown f a a0 -> Int Source #

elem :: Eq a0 => a0 -> Clown f a a0 -> Bool Source #

maximum :: Ord a0 => Clown f a a0 -> a0 Source #

minimum :: Ord a0 => Clown f a a0 -> a0 Source #

sum :: Num a0 => Clown f a a0 -> a0 Source #

product :: Num a0 => Clown f a a0 -> a0 Source #

Bifoldable p => Foldable (Flip p a) |

Instance details

Defined in Data.Bifunctor.Flip

Methods

fold :: Monoid m => Flip p a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Flip p a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Flip p a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Flip p a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Flip p a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Flip p a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Flip p a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Flip p a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Flip p a a0 -> a0 Source #

toList :: Flip p a a0 -> [a0] Source #

null :: Flip p a a0 -> Bool Source #

length :: Flip p a a0 -> Int Source #

elem :: Eq a0 => a0 -> Flip p a a0 -> Bool Source #

maximum :: Ord a0 => Flip p a a0 -> a0 Source #

minimum :: Ord a0 => Flip p a a0 -> a0 Source #

sum :: Num a0 => Flip p a a0 -> a0 Source #

product :: Num a0 => Flip p a a0 -> a0 Source #

Foldable g => Foldable (Joker g a) |

Instance details

Defined in Data.Bifunctor.Joker

Methods

fold :: Monoid m => Joker g a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Joker g a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Joker g a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Joker g a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Joker g a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Joker g a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Joker g a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Joker g a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Joker g a a0 -> a0 Source #

toList :: Joker g a a0 -> [a0] Source #

null :: Joker g a a0 -> Bool Source #

length :: Joker g a a0 -> Int Source #

elem :: Eq a0 => a0 -> Joker g a a0 -> Bool Source #

maximum :: Ord a0 => Joker g a a0 -> a0 Source #

minimum :: Ord a0 => Joker g a a0 -> a0 Source #

sum :: Num a0 => Joker g a a0 -> a0 Source #

product :: Num a0 => Joker g a a0 -> a0 Source #

Bifoldable p => Foldable (WrappedBifunctor p a) |

Instance details

Defined in Data.Bifunctor.Wrapped

Methods

fold :: Monoid m => WrappedBifunctor p a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> WrappedBifunctor p a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> WrappedBifunctor p a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> WrappedBifunctor p a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> WrappedBifunctor p a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> WrappedBifunctor p a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> WrappedBifunctor p a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> WrappedBifunctor p a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> WrappedBifunctor p a a0 -> a0 Source #

toList :: WrappedBifunctor p a a0 -> [a0] Source #

null :: WrappedBifunctor p a a0 -> Bool Source #

length :: WrappedBifunctor p a a0 -> Int Source #

elem :: Eq a0 => a0 -> WrappedBifunctor p a a0 -> Bool Source #

maximum :: Ord a0 => WrappedBifunctor p a a0 -> a0 Source #

minimum :: Ord a0 => WrappedBifunctor p a a0 -> a0 Source #

sum :: Num a0 => WrappedBifunctor p a a0 -> a0 Source #

product :: Num a0 => WrappedBifunctor p a a0 -> a0 Source #

(Foldable f, Foldable g) => Foldable (f :.: g) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => (f :.: g) m -> m Source #

foldMap :: Monoid m => (a -> m) -> (f :.: g) a -> m Source #

foldMap' :: Monoid m => (a -> m) -> (f :.: g) a -> m Source #

foldr :: (a -> b -> b) -> b -> (f :.: g) a -> b Source #

foldr' :: (a -> b -> b) -> b -> (f :.: g) a -> b Source #

foldl :: (b -> a -> b) -> b -> (f :.: g) a -> b Source #

foldl' :: (b -> a -> b) -> b -> (f :.: g) a -> b Source #

foldr1 :: (a -> a -> a) -> (f :.: g) a -> a Source #

foldl1 :: (a -> a -> a) -> (f :.: g) a -> a Source #

toList :: (f :.: g) a -> [a] Source #

null :: (f :.: g) a -> Bool Source #

length :: (f :.: g) a -> Int Source #

elem :: Eq a => a -> (f :.: g) a -> Bool Source #

maximum :: Ord a => (f :.: g) a -> a Source #

minimum :: Ord a => (f :.: g) a -> a Source #

sum :: Num a => (f :.: g) a -> a Source #

product :: Num a => (f :.: g) a -> a Source #

Foldable f => Foldable (M1 i c f) | Since: base-4.9.0.0

Instance details

Defined in GHC.Internal.Data.Foldable

Methods

fold :: Monoid m => M1 i c f m -> m Source #

foldMap :: Monoid m => (a -> m) -> M1 i c f a -> m Source #

foldMap' :: Monoid m => (a -> m) -> M1 i c f a -> m Source #

foldr :: (a -> b -> b) -> b -> M1 i c f a -> b Source #

foldr' :: (a -> b -> b) -> b -> M1 i c f a -> b Source #

foldl :: (b -> a -> b) -> b -> M1 i c f a -> b Source #

foldl' :: (b -> a -> b) -> b -> M1 i c f a -> b Source #

foldr1 :: (a -> a -> a) -> M1 i c f a -> a Source #

foldl1 :: (a -> a -> a) -> M1 i c f a -> a Source #

toList :: M1 i c f a -> [a] Source #

null :: M1 i c f a -> Bool Source #

length :: M1 i c f a -> Int Source #

elem :: Eq a => a -> M1 i c f a -> Bool Source #

maximum :: Ord a => M1 i c f a -> a Source #

minimum :: Ord a => M1 i c f a -> a Source #

sum :: Num a => M1 i c f a -> a Source #

product :: Num a => M1 i c f a -> a Source #

(Foldable (f a), Foldable (g a)) => Foldable (Product f g a) |

Instance details

Defined in Data.Bifunctor.Product

Methods

fold :: Monoid m => Product f g a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Product f g a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Product f g a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Product f g a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Product f g a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Product f g a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Product f g a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Product f g a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Product f g a a0 -> a0 Source #

toList :: Product f g a a0 -> [a0] Source #

null :: Product f g a a0 -> Bool Source #

length :: Product f g a a0 -> Int Source #

elem :: Eq a0 => a0 -> Product f g a a0 -> Bool Source #

maximum :: Ord a0 => Product f g a a0 -> a0 Source #

minimum :: Ord a0 => Product f g a a0 -> a0 Source #

sum :: Num a0 => Product f g a a0 -> a0 Source #

product :: Num a0 => Product f g a a0 -> a0 Source #

(Foldable (f a), Foldable (g a)) => Foldable (Sum f g a) |

Instance details

Defined in Data.Bifunctor.Sum

Methods

fold :: Monoid m => Sum f g a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Sum f g a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Sum f g a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Sum f g a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Sum f g a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Sum f g a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Sum f g a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Sum f g a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Sum f g a a0 -> a0 Source #

toList :: Sum f g a a0 -> [a0] Source #

null :: Sum f g a a0 -> Bool Source #

length :: Sum f g a a0 -> Int Source #

elem :: Eq a0 => a0 -> Sum f g a a0 -> Bool Source #

maximum :: Ord a0 => Sum f g a a0 -> a0 Source #

minimum :: Ord a0 => Sum f g a a0 -> a0 Source #

sum :: Num a0 => Sum f g a a0 -> a0 Source #

product :: Num a0 => Sum f g a a0 -> a0 Source #

(Foldable f, Bifoldable p) => Foldable (Tannen f p a) |

Instance details

Defined in Data.Bifunctor.Tannen

Methods

fold :: Monoid m => Tannen f p a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Tannen f p a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Tannen f p a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Tannen f p a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Tannen f p a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Tannen f p a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Tannen f p a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Tannen f p a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Tannen f p a a0 -> a0 Source #

toList :: Tannen f p a a0 -> [a0] Source #

null :: Tannen f p a a0 -> Bool Source #

length :: Tannen f p a a0 -> Int Source #

elem :: Eq a0 => a0 -> Tannen f p a a0 -> Bool Source #

maximum :: Ord a0 => Tannen f p a a0 -> a0 Source #

minimum :: Ord a0 => Tannen f p a a0 -> a0 Source #

sum :: Num a0 => Tannen f p a a0 -> a0 Source #

product :: Num a0 => Tannen f p a a0 -> a0 Source #

(Bifoldable p, Foldable g) => Foldable (Biff p f g a) |

Instance details

Defined in Data.Bifunctor.Biff

Methods

fold :: Monoid m => Biff p f g a m -> m Source #

foldMap :: Monoid m => (a0 -> m) -> Biff p f g a a0 -> m Source #

foldMap' :: Monoid m => (a0 -> m) -> Biff p f g a a0 -> m Source #

foldr :: (a0 -> b -> b) -> b -> Biff p f g a a0 -> b Source #

foldr' :: (a0 -> b -> b) -> b -> Biff p f g a a0 -> b Source #

foldl :: (b -> a0 -> b) -> b -> Biff p f g a a0 -> b Source #

foldl' :: (b -> a0 -> b) -> b -> Biff p f g a a0 -> b Source #

foldr1 :: (a0 -> a0 -> a0) -> Biff p f g a a0 -> a0 Source #

foldl1 :: (a0 -> a0 -> a0) -> Biff p f g a a0 -> a0 Source #

toList :: Biff p f g a a0 -> [a0] Source #

null :: Biff p f g a a0 -> Bool Source #

length :: Biff p f g a a0 -> Int Source #

elem :: Eq a0 => a0 -> Biff p f g a a0 -> Bool Source #

maximum :: Ord a0 => Biff p f g a a0 -> a0 Source #

minimum :: Ord a0 => Biff p f g a a0 -> a0 Source #

sum :: Num a0 => Biff p f g a a0 -> a0 Source #

product :: Num a0 => Biff p f g a a0 -> a0 Source #

class (Functor t, Foldable t) => Traversable (t :: Type -> Type) where Source #

Functors representing data structures that can be transformed to structures of the same shape by performing an `Applicative` (or, therefore, `Monad`) action on each element from left to right.

A more detailed description of what same shape means, the various methods, how traversals are constructed, and example advanced use-cases can be found in the Overview section of Data.Traversable.

For the class laws see the Laws section of Data.Traversable.

Minimal complete definition

traverse | sequenceA

Methods

traverse :: Applicative f => (a -> f b) -> t a -> f (t b) Source #

Map each element of a structure to an action, evaluate these actions from left to right, and collect the results. For a version that ignores the results see `traverse_`.

#### Examples

Expand

Basic usage:

In the first two examples we show each evaluated action mapping to the output structure.

    >>> traverse Just [1,2,3,4]
    Just [1,2,3,4]

    >>> traverse id [Right 1, Right 2, Right 3, Right 4]
    Right [1,2,3,4]

In the next examples, we show that `Nothing` and `Left` values short circuit the created structure.

    >>> traverse (const Nothing) [1,2,3,4]
    Nothing

    >>> traverse (\x -> if odd x then Just x else Nothing)  [1,2,3,4]
    Nothing

    >>> traverse id [Right 1, Right 2, Right 3, Right 4, Left 0]
    Left 0

sequenceA :: Applicative f => t (f a) -> f (t a) Source #

Evaluate each action in the structure from left to right, and collect the results. For a version that ignores the results see `sequenceA_`.

#### Examples

Expand

Basic usage:

For the first two examples we show sequenceA fully evaluating a a structure and collecting the results.

    >>> sequenceA [Just 1, Just 2, Just 3]
    Just [1,2,3]

    >>> sequenceA [Right 1, Right 2, Right 3]
    Right [1,2,3]

The next two example show `Nothing` and `Just` will short circuit the resulting structure if present in the input. For more context, check the `Traversable` instances for `Either` and `Maybe`.

    >>> sequenceA [Just 1, Just 2, Just 3, Nothing]
    Nothing

    >>> sequenceA [Right 1, Right 2, Right 3, Left 4]
    Left 4

mapM :: Monad m => (a -> m b) -> t a -> m (t b) Source #

Map each element of a structure to a monadic action, evaluate these actions from left to right, and collect the results. For a version that ignores the results see `mapM_`.

#### Examples

Expand

`mapM` is literally a `traverse` with a type signature restricted to `Monad`. Its implementation may be more efficient due to additional power of `Monad`.

sequence :: Monad m => t (m a) -> m (t a) Source #

Evaluate each monadic action in the structure from left to right, and collect the results. For a version that ignores the results see `sequence_`.

#### Examples

Expand

Basic usage:

The first two examples are instances where the input and and output of `sequence` are isomorphic.

    >>> sequence $ Right [1,2,3,4]
    [Right 1,Right 2,Right 3,Right 4]

    >>> sequence $ [Right 1,Right 2,Right 3,Right 4]
    Right [1,2,3,4]

The following examples demonstrate short circuit behavior for `sequence`.

    >>> sequence $ Left [1,2,3,4]
    Left [1,2,3,4]

    >>> sequence $ [Left 0, Right 1,Right 2,Right 3,Right 4]
    Left 0

#### Instances

Instances details

Traversable Complex | Since: base-4.9.0.0
Instance details Defined in Data.Complex Methods traverse :: Applicative f => (a -> f b) -> Complex a -> f (Complex b) Source # sequenceA :: Applicative f => Complex (f a) -> f (Complex a) Source # mapM :: Monad m => (a -> m b) -> Complex a -> m (Complex b) Source # sequence :: Monad m => Complex (m a) -> m (Complex a) Source #
Traversable First | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a -> f b) -> First a -> f (First b) Source # sequenceA :: Applicative f => First (f a) -> f (First a) Source # mapM :: Monad m => (a -> m b) -> First a -> m (First b) Source # sequence :: Monad m => First (m a) -> m (First a) Source #
Traversable Last | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a -> f b) -> Last a -> f (Last b) Source # sequenceA :: Applicative f => Last (f a) -> f (Last a) Source # mapM :: Monad m => (a -> m b) -> Last a -> m (Last b) Source # sequence :: Monad m => Last (m a) -> m (Last a) Source #
Traversable Max | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a -> f b) -> Max a -> f (Max b) Source # sequenceA :: Applicative f => Max (f a) -> f (Max a) Source # mapM :: Monad m => (a -> m b) -> Max a -> m (Max b) Source # sequence :: Monad m => Max (m a) -> m (Max a) Source #
Traversable Min | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a -> f b) -> Min a -> f (Min b) Source # sequenceA :: Applicative f => Min (f a) -> f (Min a) Source # mapM :: Monad m => (a -> m b) -> Min a -> m (Min b) Source # sequence :: Monad m => Min (m a) -> m (Min a) Source #
Traversable SCC | Since: containers-0.5.9
Instance details Defined in Data.Graph Methods traverse :: Applicative f => (a -> f b) -> SCC a -> f (SCC b) Source # sequenceA :: Applicative f => SCC (f a) -> f (SCC a) Source # mapM :: Monad m => (a -> m b) -> SCC a -> m (SCC b) Source # sequence :: Monad m => SCC (m a) -> m (SCC a) Source #
Traversable IntMap | Traverses in order of increasing key.
Instance details Defined in Data.IntMap.Internal Methods traverse :: Applicative f => (a -> f b) -> IntMap a -> f (IntMap b) Source # sequenceA :: Applicative f => IntMap (f a) -> f (IntMap a) Source # mapM :: Monad m => (a -> m b) -> IntMap a -> m (IntMap b) Source # sequence :: Monad m => IntMap (m a) -> m (IntMap a) Source #
Traversable Digit |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Digit a -> f (Digit b) Source # sequenceA :: Applicative f => Digit (f a) -> f (Digit a) Source # mapM :: Monad m => (a -> m b) -> Digit a -> m (Digit b) Source # sequence :: Monad m => Digit (m a) -> m (Digit a) Source #
Traversable Elem |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Elem a -> f (Elem b) Source # sequenceA :: Applicative f => Elem (f a) -> f (Elem a) Source # mapM :: Monad m => (a -> m b) -> Elem a -> m (Elem b) Source # sequence :: Monad m => Elem (m a) -> m (Elem a) Source #
Traversable FingerTree |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> FingerTree a -> f (FingerTree b) Source # sequenceA :: Applicative f => FingerTree (f a) -> f (FingerTree a) Source # mapM :: Monad m => (a -> m b) -> FingerTree a -> m (FingerTree b) Source # sequence :: Monad m => FingerTree (m a) -> m (FingerTree a) Source #
Traversable Node |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Node a -> f (Node b) Source # sequenceA :: Applicative f => Node (f a) -> f (Node a) Source # mapM :: Monad m => (a -> m b) -> Node a -> m (Node b) Source # sequence :: Monad m => Node (m a) -> m (Node a) Source #
Traversable Seq |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> Seq a -> f (Seq b) Source # sequenceA :: Applicative f => Seq (f a) -> f (Seq a) Source # mapM :: Monad m => (a -> m b) -> Seq a -> m (Seq b) Source # sequence :: Monad m => Seq (m a) -> m (Seq a) Source #
Traversable ViewL |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> ViewL a -> f (ViewL b) Source # sequenceA :: Applicative f => ViewL (f a) -> f (ViewL a) Source # mapM :: Monad m => (a -> m b) -> ViewL a -> m (ViewL b) Source # sequence :: Monad m => ViewL (m a) -> m (ViewL a) Source #
Traversable ViewR |
Instance details Defined in Data.Sequence.Internal Methods traverse :: Applicative f => (a -> f b) -> ViewR a -> f (ViewR b) Source # sequenceA :: Applicative f => ViewR (f a) -> f (ViewR a) Source # mapM :: Monad m => (a -> m b) -> ViewR a -> m (ViewR b) Source # sequence :: Monad m => ViewR (m a) -> m (ViewR a) Source #
Traversable Tree |
Instance details Defined in Data.Tree Methods traverse :: Applicative f => (a -> f b) -> Tree a -> f (Tree b) Source # sequenceA :: Applicative f => Tree (f a) -> f (Tree a) Source # mapM :: Monad m => (a -> m b) -> Tree a -> m (Tree b) Source # sequence :: Monad m => Tree (m a) -> m (Tree a) Source #
Traversable DList |
Instance details Defined in Data.DList.Internal Methods traverse :: Applicative f => (a -> f b) -> DList a -> f (DList b) Source # sequenceA :: Applicative f => DList (f a) -> f (DList a) Source # mapM :: Monad m => (a -> m b) -> DList a -> m (DList b) Source # sequence :: Monad m => DList (m a) -> m (DList a) Source #
Traversable NonEmpty | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> NonEmpty a -> f (NonEmpty b) Source # sequenceA :: Applicative f => NonEmpty (f a) -> f (NonEmpty a) Source # mapM :: Monad m => (a -> m b) -> NonEmpty a -> m (NonEmpty b) Source # sequence :: Monad m => NonEmpty (m a) -> m (NonEmpty a) Source #
Traversable Identity | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Identity a -> f (Identity b) Source # sequenceA :: Applicative f => Identity (f a) -> f (Identity a) Source # mapM :: Monad m => (a -> m b) -> Identity a -> m (Identity b) Source # sequence :: Monad m => Identity (m a) -> m (Identity a) Source #
Traversable First | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> First a -> f (First b) Source # sequenceA :: Applicative f => First (f a) -> f (First a) Source # mapM :: Monad m => (a -> m b) -> First a -> m (First b) Source # sequence :: Monad m => First (m a) -> m (First a) Source #
Traversable Last | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Last a -> f (Last b) Source # sequenceA :: Applicative f => Last (f a) -> f (Last a) Source # mapM :: Monad m => (a -> m b) -> Last a -> m (Last b) Source # sequence :: Monad m => Last (m a) -> m (Last a) Source #
Traversable Down | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Down a -> f (Down b) Source # sequenceA :: Applicative f => Down (f a) -> f (Down a) Source # mapM :: Monad m => (a -> m b) -> Down a -> m (Down b) Source # sequence :: Monad m => Down (m a) -> m (Down a) Source #
Traversable Dual | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Dual a -> f (Dual b) Source # sequenceA :: Applicative f => Dual (f a) -> f (Dual a) Source # mapM :: Monad m => (a -> m b) -> Dual a -> m (Dual b) Source # sequence :: Monad m => Dual (m a) -> m (Dual a) Source #
Traversable Product | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Product a -> f (Product b) Source # sequenceA :: Applicative f => Product (f a) -> f (Product a) Source # mapM :: Monad m => (a -> m b) -> Product a -> m (Product b) Source # sequence :: Monad m => Product (m a) -> m (Product a) Source #
Traversable Sum | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Sum a -> f (Sum b) Source # sequenceA :: Applicative f => Sum (f a) -> f (Sum a) Source # mapM :: Monad m => (a -> m b) -> Sum a -> m (Sum b) Source # sequence :: Monad m => Sum (m a) -> m (Sum a) Source #
Traversable Par1 | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Par1 a -> f (Par1 b) Source # sequenceA :: Applicative f => Par1 (f a) -> f (Par1 a) Source # mapM :: Monad m => (a -> m b) -> Par1 a -> m (Par1 b) Source # sequence :: Monad m => Par1 (m a) -> m (Par1 a) Source #
Traversable Array |
Instance details Defined in Data.Primitive.Array Methods traverse :: Applicative f => (a -> f b) -> Array a -> f (Array b) Source # sequenceA :: Applicative f => Array (f a) -> f (Array a) Source # mapM :: Monad m => (a -> m b) -> Array a -> m (Array b) Source # sequence :: Monad m => Array (m a) -> m (Array a) Source #
Traversable SmallArray |
Instance details Defined in Data.Primitive.SmallArray Methods traverse :: Applicative f => (a -> f b) -> SmallArray a -> f (SmallArray b) Source # sequenceA :: Applicative f => SmallArray (f a) -> f (SmallArray a) Source # mapM :: Monad m => (a -> m b) -> SmallArray a -> m (SmallArray b) Source # sequence :: Monad m => SmallArray (m a) -> m (SmallArray a) Source #
Traversable Vector |
Instance details Defined in Data.Vector Methods traverse :: Applicative f => (a -> f b) -> Vector a -> f (Vector b) Source # sequenceA :: Applicative f => Vector (f a) -> f (Vector a) Source # mapM :: Monad m => (a -> m b) -> Vector a -> m (Vector b) Source # sequence :: Monad m => Vector (m a) -> m (Vector a) Source #
Traversable Vector |
Instance details Defined in Data.Vector.Strict Methods traverse :: Applicative f => (a -> f b) -> Vector a -> f (Vector b) Source # sequenceA :: Applicative f => Vector (f a) -> f (Vector a) Source # mapM :: Monad m => (a -> m b) -> Vector a -> m (Vector b) Source # sequence :: Monad m => Vector (m a) -> m (Vector a) Source #
Traversable Maybe | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Maybe a -> f (Maybe b) Source # sequenceA :: Applicative f => Maybe (f a) -> f (Maybe a) Source # mapM :: Monad m => (a -> m b) -> Maybe a -> m (Maybe b) Source # sequence :: Monad m => Maybe (m a) -> m (Maybe a) Source #
Traversable Solo | Since: base-4.15
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Solo a -> f (Solo b) Source # sequenceA :: Applicative f => Solo (f a) -> f (Solo a) Source # mapM :: Monad m => (a -> m b) -> Solo a -> m (Solo b) Source # sequence :: Monad m => Solo (m a) -> m (Solo a) Source #
Traversable [] | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> [a] -> f [b] Source # sequenceA :: Applicative f => [f a] -> f [a] Source # mapM :: Monad m => (a -> m b) -> [a] -> m [b] Source # sequence :: Monad m => [m a] -> m [a] Source #
Traversable (Arg a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods traverse :: Applicative f => (a0 -> f b) -> Arg a a0 -> f (Arg a b) Source # sequenceA :: Applicative f => Arg a (f a0) -> f (Arg a a0) Source # mapM :: Monad m => (a0 -> m b) -> Arg a a0 -> m (Arg a b) Source # sequence :: Monad m => Arg a (m a0) -> m (Arg a a0) Source #
Traversable (Map k) | Traverses in order of increasing key.
Instance details Defined in Data.Map.Internal Methods traverse :: Applicative f => (a -> f b) -> Map k a -> f (Map k b) Source # sequenceA :: Applicative f => Map k (f a) -> f (Map k a) Source # mapM :: Monad m => (a -> m b) -> Map k a -> m (Map k b) Source # sequence :: Monad m => Map k (m a) -> m (Map k a) Source #
Traversable f => Traversable (Cofree f) |
Instance details Defined in Control.Comonad.Cofree Methods traverse :: Applicative f0 => (a -> f0 b) -> Cofree f a -> f0 (Cofree f b) Source # sequenceA :: Applicative f0 => Cofree f (f0 a) -> f0 (Cofree f a) Source # mapM :: Monad m => (a -> m b) -> Cofree f a -> m (Cofree f b) Source # sequence :: Monad m => Cofree f (m a) -> m (Cofree f a) Source #
Traversable f => Traversable (Free f) |
Instance details Defined in Control.Monad.Free Methods traverse :: Applicative f0 => (a -> f0 b) -> Free f a -> f0 (Free f b) Source # sequenceA :: Applicative f0 => Free f (f0 a) -> f0 (Free f a) Source # mapM :: Monad m => (a -> m b) -> Free f a -> m (Free f b) Source # sequence :: Monad m => Free f (m a) -> m (Free f a) Source #
Ix i => Traversable (Array i) | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Array i a -> f (Array i b) Source # sequenceA :: Applicative f => Array i (f a) -> f (Array i a) Source # mapM :: Monad m => (a -> m b) -> Array i a -> m (Array i b) Source # sequence :: Monad m => Array i (m a) -> m (Array i a) Source #
Traversable (Either a) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a0 -> f b) -> Either a a0 -> f (Either a b) Source # sequenceA :: Applicative f => Either a (f a0) -> f (Either a a0) Source # mapM :: Monad m => (a0 -> m b) -> Either a a0 -> m (Either a b) Source # sequence :: Monad m => Either a (m a0) -> m (Either a a0) Source #
Traversable (Proxy :: Type -> Type) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Proxy a -> f (Proxy b) Source # sequenceA :: Applicative f => Proxy (f a) -> f (Proxy a) Source # mapM :: Monad m => (a -> m b) -> Proxy a -> m (Proxy b) Source # sequence :: Monad m => Proxy (m a) -> m (Proxy a) Source #
Traversable (U1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> U1 a -> f (U1 b) Source # sequenceA :: Applicative f => U1 (f a) -> f (U1 a) Source # mapM :: Monad m => (a -> m b) -> U1 a -> m (U1 b) Source # sequence :: Monad m => U1 (m a) -> m (U1 a) Source #
Traversable (UAddr :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UAddr a -> f (UAddr b) Source # sequenceA :: Applicative f => UAddr (f a) -> f (UAddr a) Source # mapM :: Monad m => (a -> m b) -> UAddr a -> m (UAddr b) Source # sequence :: Monad m => UAddr (m a) -> m (UAddr a) Source #
Traversable (UChar :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UChar a -> f (UChar b) Source # sequenceA :: Applicative f => UChar (f a) -> f (UChar a) Source # mapM :: Monad m => (a -> m b) -> UChar a -> m (UChar b) Source # sequence :: Monad m => UChar (m a) -> m (UChar a) Source #
Traversable (UDouble :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UDouble a -> f (UDouble b) Source # sequenceA :: Applicative f => UDouble (f a) -> f (UDouble a) Source # mapM :: Monad m => (a -> m b) -> UDouble a -> m (UDouble b) Source # sequence :: Monad m => UDouble (m a) -> m (UDouble a) Source #
Traversable (UFloat :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UFloat a -> f (UFloat b) Source # sequenceA :: Applicative f => UFloat (f a) -> f (UFloat a) Source # mapM :: Monad m => (a -> m b) -> UFloat a -> m (UFloat b) Source # sequence :: Monad m => UFloat (m a) -> m (UFloat a) Source #
Traversable (UInt :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UInt a -> f (UInt b) Source # sequenceA :: Applicative f => UInt (f a) -> f (UInt a) Source # mapM :: Monad m => (a -> m b) -> UInt a -> m (UInt b) Source # sequence :: Monad m => UInt (m a) -> m (UInt a) Source #
Traversable (UWord :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> UWord a -> f (UWord b) Source # sequenceA :: Applicative f => UWord (f a) -> f (UWord a) Source # mapM :: Monad m => (a -> m b) -> UWord a -> m (UWord b) Source # sequence :: Monad m => UWord (m a) -> m (UWord a) Source #
Traversable (V1 :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> V1 a -> f (V1 b) Source # sequenceA :: Applicative f => V1 (f a) -> f (V1 a) Source # mapM :: Monad m => (a -> m b) -> V1 a -> m (V1 b) Source # sequence :: Monad m => V1 (m a) -> m (V1 a) Source #
Traversable f => Traversable (Lift f) |
Instance details Defined in Control.Applicative.Lift Methods traverse :: Applicative f0 => (a -> f0 b) -> Lift f a -> f0 (Lift f b) Source # sequenceA :: Applicative f0 => Lift f (f0 a) -> f0 (Lift f a) Source # mapM :: Monad m => (a -> m b) -> Lift f a -> m (Lift f b) Source # sequence :: Monad m => Lift f (m a) -> m (Lift f a) Source #
Traversable f => Traversable (MaybeT f) |
Instance details Defined in Control.Monad.Trans.Maybe Methods traverse :: Applicative f0 => (a -> f0 b) -> MaybeT f a -> f0 (MaybeT f b) Source # sequenceA :: Applicative f0 => MaybeT f (f0 a) -> f0 (MaybeT f a) Source # mapM :: Monad m => (a -> m b) -> MaybeT f a -> m (MaybeT f b) Source # sequence :: Monad m => MaybeT f (m a) -> m (MaybeT f a) Source #
Traversable (HashMap k) |
Instance details Defined in Data.HashMap.Internal Methods traverse :: Applicative f => (a -> f b) -> HashMap k a -> f (HashMap k b) Source # sequenceA :: Applicative f => HashMap k (f a) -> f (HashMap k a) Source # mapM :: Monad m => (a -> m b) -> HashMap k a -> m (HashMap k b) Source # sequence :: Monad m => HashMap k (m a) -> m (HashMap k a) Source #
Traversable ((,) a) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a0 -> f b) -> (a, a0) -> f (a, b) Source # sequenceA :: Applicative f => (a, f a0) -> f (a, a0) Source # mapM :: Monad m => (a0 -> m b) -> (a, a0) -> m (a, b) Source # sequence :: Monad m => (a, m a0) -> m (a, a0) Source #
Traversable (bi a) => Traversable (Biap bi a) |
Instance details Defined in Data.Bifunctor.Biap Methods traverse :: Applicative f => (a0 -> f b) -> Biap bi a a0 -> f (Biap bi a b) Source # sequenceA :: Applicative f => Biap bi a (f a0) -> f (Biap bi a a0) Source # mapM :: Monad m => (a0 -> m b) -> Biap bi a a0 -> m (Biap bi a b) Source # sequence :: Monad m => Biap bi a (m a0) -> m (Biap bi a a0) Source #
Bitraversable p => Traversable (Fix p) |
Instance details Defined in Data.Bifunctor.Fix Methods traverse :: Applicative f => (a -> f b) -> Fix p a -> f (Fix p b) Source # sequenceA :: Applicative f => Fix p (f a) -> f (Fix p a) Source # mapM :: Monad m => (a -> m b) -> Fix p a -> m (Fix p b) Source # sequence :: Monad m => Fix p (m a) -> m (Fix p a) Source #
Bitraversable p => Traversable (Join p) |
Instance details Defined in Data.Bifunctor.Join Methods traverse :: Applicative f => (a -> f b) -> Join p a -> f (Join p b) Source # sequenceA :: Applicative f => Join p (f a) -> f (Join p a) Source # mapM :: Monad m => (a -> m b) -> Join p a -> m (Join p b) Source # sequence :: Monad m => Join p (m a) -> m (Join p a) Source #
Traversable f => Traversable (FreeF f a) |
Instance details Defined in Control.Monad.Trans.Free Methods traverse :: Applicative f0 => (a0 -> f0 b) -> FreeF f a a0 -> f0 (FreeF f a b) Source # sequenceA :: Applicative f0 => FreeF f a (f0 a0) -> f0 (FreeF f a a0) Source # mapM :: Monad m => (a0 -> m b) -> FreeF f a a0 -> m (FreeF f a b) Source # sequence :: Monad m => FreeF f a (m a0) -> m (FreeF f a a0) Source #
(Monad m, Traversable m, Traversable f) => Traversable (FreeT f m) |
Instance details Defined in Control.Monad.Trans.Free Methods traverse :: Applicative f0 => (a -> f0 b) -> FreeT f m a -> f0 (FreeT f m b) Source # sequenceA :: Applicative f0 => FreeT f m (f0 a) -> f0 (FreeT f m a) Source # mapM :: Monad m0 => (a -> m0 b) -> FreeT f m a -> m0 (FreeT f m b) Source # sequence :: Monad m0 => FreeT f m (m0 a) -> m0 (FreeT f m a) Source #
Traversable (Const m :: Type -> Type) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> Const m a -> f (Const m b) Source # sequenceA :: Applicative f => Const m (f a) -> f (Const m a) Source # mapM :: Monad m0 => (a -> m0 b) -> Const m a -> m0 (Const m b) Source # sequence :: Monad m0 => Const m (m0 a) -> m0 (Const m a) Source #
Traversable f => Traversable (Ap f) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> Ap f a -> f0 (Ap f b) Source # sequenceA :: Applicative f0 => Ap f (f0 a) -> f0 (Ap f a) Source # mapM :: Monad m => (a -> m b) -> Ap f a -> m (Ap f b) Source # sequence :: Monad m => Ap f (m a) -> m (Ap f a) Source #
Traversable f => Traversable (Alt f) | Since: base-4.12.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> Alt f a -> f0 (Alt f b) Source # sequenceA :: Applicative f0 => Alt f (f0 a) -> f0 (Alt f a) Source # mapM :: Monad m => (a -> m b) -> Alt f a -> m (Alt f b) Source # sequence :: Monad m => Alt f (m a) -> m (Alt f a) Source #
Traversable f => Traversable (Rec1 f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> Rec1 f a -> f0 (Rec1 f b) Source # sequenceA :: Applicative f0 => Rec1 f (f0 a) -> f0 (Rec1 f a) Source # mapM :: Monad m => (a -> m b) -> Rec1 f a -> m (Rec1 f b) Source # sequence :: Monad m => Rec1 f (m a) -> m (Rec1 f a) Source #
Traversable (Tagged s) |
Instance details Defined in Data.Tagged Methods traverse :: Applicative f => (a -> f b) -> Tagged s a -> f (Tagged s b) Source # sequenceA :: Applicative f => Tagged s (f a) -> f (Tagged s a) Source # mapM :: Monad m => (a -> m b) -> Tagged s a -> m (Tagged s b) Source # sequence :: Monad m => Tagged s (m a) -> m (Tagged s a) Source #
Traversable f => Traversable (Backwards f) | Derived instance.
Instance details Defined in Control.Applicative.Backwards Methods traverse :: Applicative f0 => (a -> f0 b) -> Backwards f a -> f0 (Backwards f b) Source # sequenceA :: Applicative f0 => Backwards f (f0 a) -> f0 (Backwards f a) Source # mapM :: Monad m => (a -> m b) -> Backwards f a -> m (Backwards f b) Source # sequence :: Monad m => Backwards f (m a) -> m (Backwards f a) Source #
Traversable f => Traversable (ExceptT e f) |
Instance details Defined in Control.Monad.Trans.Except Methods traverse :: Applicative f0 => (a -> f0 b) -> ExceptT e f a -> f0 (ExceptT e f b) Source # sequenceA :: Applicative f0 => ExceptT e f (f0 a) -> f0 (ExceptT e f a) Source # mapM :: Monad m => (a -> m b) -> ExceptT e f a -> m (ExceptT e f b) Source # sequence :: Monad m => ExceptT e f (m a) -> m (ExceptT e f a) Source #
Traversable f => Traversable (IdentityT f) |
Instance details Defined in Control.Monad.Trans.Identity Methods traverse :: Applicative f0 => (a -> f0 b) -> IdentityT f a -> f0 (IdentityT f b) Source # sequenceA :: Applicative f0 => IdentityT f (f0 a) -> f0 (IdentityT f a) Source # mapM :: Monad m => (a -> m b) -> IdentityT f a -> m (IdentityT f b) Source # sequence :: Monad m => IdentityT f (m a) -> m (IdentityT f a) Source #
Traversable f => Traversable (WriterT w f) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods traverse :: Applicative f0 => (a -> f0 b) -> WriterT w f a -> f0 (WriterT w f b) Source # sequenceA :: Applicative f0 => WriterT w f (f0 a) -> f0 (WriterT w f a) Source # mapM :: Monad m => (a -> m b) -> WriterT w f a -> m (WriterT w f b) Source # sequence :: Monad m => WriterT w f (m a) -> m (WriterT w f a) Source #
Traversable f => Traversable (WriterT w f) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods traverse :: Applicative f0 => (a -> f0 b) -> WriterT w f a -> f0 (WriterT w f b) Source # sequenceA :: Applicative f0 => WriterT w f (f0 a) -> f0 (WriterT w f a) Source # mapM :: Monad m => (a -> m b) -> WriterT w f a -> m (WriterT w f b) Source # sequence :: Monad m => WriterT w f (m a) -> m (WriterT w f a) Source #
Traversable (Constant a :: Type -> Type) |
Instance details Defined in Data.Functor.Constant Methods traverse :: Applicative f => (a0 -> f b) -> Constant a a0 -> f (Constant a b) Source # sequenceA :: Applicative f => Constant a (f a0) -> f (Constant a a0) Source # mapM :: Monad m => (a0 -> m b) -> Constant a a0 -> m (Constant a b) Source # sequence :: Monad m => Constant a (m a0) -> m (Constant a a0) Source #
Traversable f => Traversable (Reverse f) | Traverse from right to left.
Instance details Defined in Data.Functor.Reverse Methods traverse :: Applicative f0 => (a -> f0 b) -> Reverse f a -> f0 (Reverse f b) Source # sequenceA :: Applicative f0 => Reverse f (f0 a) -> f0 (Reverse f a) Source # mapM :: Monad m => (a -> m b) -> Reverse f a -> m (Reverse f b) Source # sequence :: Monad m => Reverse f (m a) -> m (Reverse f a) Source #
(Traversable f, Traversable g) => Traversable (Product f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Product Methods traverse :: Applicative f0 => (a -> f0 b) -> Product f g a -> f0 (Product f g b) Source # sequenceA :: Applicative f0 => Product f g (f0 a) -> f0 (Product f g a) Source # mapM :: Monad m => (a -> m b) -> Product f g a -> m (Product f g b) Source # sequence :: Monad m => Product f g (m a) -> m (Product f g a) Source #
(Traversable f, Traversable g) => Traversable (Sum f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Sum Methods traverse :: Applicative f0 => (a -> f0 b) -> Sum f g a -> f0 (Sum f g b) Source # sequenceA :: Applicative f0 => Sum f g (f0 a) -> f0 (Sum f g a) Source # mapM :: Monad m => (a -> m b) -> Sum f g a -> m (Sum f g b) Source # sequence :: Monad m => Sum f g (m a) -> m (Sum f g a) Source #
(Traversable f, Traversable g) => Traversable (f :*: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> (f :*: g) a -> f0 ((f :*: g) b) Source # sequenceA :: Applicative f0 => (f :*: g) (f0 a) -> f0 ((f :*: g) a) Source # mapM :: Monad m => (a -> m b) -> (f :*: g) a -> m ((f :*: g) b) Source # sequence :: Monad m => (f :*: g) (m a) -> m ((f :*: g) a) Source #
(Traversable f, Traversable g) => Traversable (f :+: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> (f :+: g) a -> f0 ((f :+: g) b) Source # sequenceA :: Applicative f0 => (f :+: g) (f0 a) -> f0 ((f :+: g) a) Source # mapM :: Monad m => (a -> m b) -> (f :+: g) a -> m ((f :+: g) b) Source # sequence :: Monad m => (f :+: g) (m a) -> m ((f :+: g) a) Source #
Traversable (K1 i c :: Type -> Type) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f => (a -> f b) -> K1 i c a -> f (K1 i c b) Source # sequenceA :: Applicative f => K1 i c (f a) -> f (K1 i c a) Source # mapM :: Monad m => (a -> m b) -> K1 i c a -> m (K1 i c b) Source # sequence :: Monad m => K1 i c (m a) -> m (K1 i c a) Source #
(Traversable f, Traversable g) => Traversable (Compose f g) | Since: base-4.9.0.0
Instance details Defined in Data.Functor.Compose Methods traverse :: Applicative f0 => (a -> f0 b) -> Compose f g a -> f0 (Compose f g b) Source # sequenceA :: Applicative f0 => Compose f g (f0 a) -> f0 (Compose f g a) Source # mapM :: Monad m => (a -> m b) -> Compose f g a -> m (Compose f g b) Source # sequence :: Monad m => Compose f g (m a) -> m (Compose f g a) Source #
Traversable (Clown f a :: Type -> Type) |
Instance details Defined in Data.Bifunctor.Clown Methods traverse :: Applicative f0 => (a0 -> f0 b) -> Clown f a a0 -> f0 (Clown f a b) Source # sequenceA :: Applicative f0 => Clown f a (f0 a0) -> f0 (Clown f a a0) Source # mapM :: Monad m => (a0 -> m b) -> Clown f a a0 -> m (Clown f a b) Source # sequence :: Monad m => Clown f a (m a0) -> m (Clown f a a0) Source #
Bitraversable p => Traversable (Flip p a) |
Instance details Defined in Data.Bifunctor.Flip Methods traverse :: Applicative f => (a0 -> f b) -> Flip p a a0 -> f (Flip p a b) Source # sequenceA :: Applicative f => Flip p a (f a0) -> f (Flip p a a0) Source # mapM :: Monad m => (a0 -> m b) -> Flip p a a0 -> m (Flip p a b) Source # sequence :: Monad m => Flip p a (m a0) -> m (Flip p a a0) Source #
Traversable g => Traversable (Joker g a) |
Instance details Defined in Data.Bifunctor.Joker Methods traverse :: Applicative f => (a0 -> f b) -> Joker g a a0 -> f (Joker g a b) Source # sequenceA :: Applicative f => Joker g a (f a0) -> f (Joker g a a0) Source # mapM :: Monad m => (a0 -> m b) -> Joker g a a0 -> m (Joker g a b) Source # sequence :: Monad m => Joker g a (m a0) -> m (Joker g a a0) Source #
Bitraversable p => Traversable (WrappedBifunctor p a) |

Instance details

Defined in Data.Bifunctor.Wrapped

Methods

traverse :: Applicative f => (a0 -> f b) -> WrappedBifunctor p a a0 -> f (WrappedBifunctor p a b) Source #

sequenceA :: Applicative f => WrappedBifunctor p a (f a0) -> f (WrappedBifunctor p a a0) Source #

mapM :: Monad m => (a0 -> m b) -> WrappedBifunctor p a a0 -> m (WrappedBifunctor p a b) Source #

sequence :: Monad m => WrappedBifunctor p a (m a0) -> m (WrappedBifunctor p a a0) Source #

(Traversable f, Traversable g) => Traversable (f :.: g) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> (f :.: g) a -> f0 ((f :.: g) b) Source # sequenceA :: Applicative f0 => (f :.: g) (f0 a) -> f0 ((f :.: g) a) Source # mapM :: Monad m => (a -> m b) -> (f :.: g) a -> m ((f :.: g) b) Source # sequence :: Monad m => (f :.: g) (m a) -> m ((f :.: g) a) Source #
Traversable f => Traversable (M1 i c f) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Data.Traversable Methods traverse :: Applicative f0 => (a -> f0 b) -> M1 i c f a -> f0 (M1 i c f b) Source # sequenceA :: Applicative f0 => M1 i c f (f0 a) -> f0 (M1 i c f a) Source # mapM :: Monad m => (a -> m b) -> M1 i c f a -> m (M1 i c f b) Source # sequence :: Monad m => M1 i c f (m a) -> m (M1 i c f a) Source #
(Traversable (f a), Traversable (g a)) => Traversable (Product f g a) |

Instance details

Defined in Data.Bifunctor.Product

Methods

traverse :: Applicative f0 => (a0 -> f0 b) -> Product f g a a0 -> f0 (Product f g a b) Source #

sequenceA :: Applicative f0 => Product f g a (f0 a0) -> f0 (Product f g a a0) Source #

mapM :: Monad m => (a0 -> m b) -> Product f g a a0 -> m (Product f g a b) Source #

sequence :: Monad m => Product f g a (m a0) -> m (Product f g a a0) Source #

(Traversable (f a), Traversable (g a)) => Traversable (Sum f g a) |
Instance details Defined in Data.Bifunctor.Sum Methods traverse :: Applicative f0 => (a0 -> f0 b) -> Sum f g a a0 -> f0 (Sum f g a b) Source # sequenceA :: Applicative f0 => Sum f g a (f0 a0) -> f0 (Sum f g a a0) Source # mapM :: Monad m => (a0 -> m b) -> Sum f g a a0 -> m (Sum f g a b) Source # sequence :: Monad m => Sum f g a (m a0) -> m (Sum f g a a0) Source #
(Traversable f, Bitraversable p) => Traversable (Tannen f p a) |
Instance details Defined in Data.Bifunctor.Tannen Methods traverse :: Applicative f0 => (a0 -> f0 b) -> Tannen f p a a0 -> f0 (Tannen f p a b) Source # sequenceA :: Applicative f0 => Tannen f p a (f0 a0) -> f0 (Tannen f p a a0) Source # mapM :: Monad m => (a0 -> m b) -> Tannen f p a a0 -> m (Tannen f p a b) Source # sequence :: Monad m => Tannen f p a (m a0) -> m (Tannen f p a a0) Source #
(Bitraversable p, Traversable g) => Traversable (Biff p f g a) |
Instance details Defined in Data.Bifunctor.Biff Methods traverse :: Applicative f0 => (a0 -> f0 b) -> Biff p f g a a0 -> f0 (Biff p f g a b) Source # sequenceA :: Applicative f0 => Biff p f g a (f0 a0) -> f0 (Biff p f g a a0) Source # mapM :: Monad m => (a0 -> m b) -> Biff p f g a a0 -> m (Biff p f g a b) Source # sequence :: Monad m => Biff p f g a (m a0) -> m (Biff p f g a a0) Source #

for :: (Traversable t, Applicative f) => t a -> (a -> f b) -> f (t b) Source #

`for` is `traverse` with its arguments flipped. For a version that ignores the results see `for_`.

forM :: (Traversable t, Monad m) => t a -> (a -> m b) -> m (t b) Source #

`forM` is `mapM` with its arguments flipped. For a version that ignores the results see `forM_`.

## Bifunctor (since 0.10.0)

module Data.Bifunctor

# Mono hierarchy

module Data.MonoTraversable

module Data.MonoTraversable.Unprefixed

module Data.Sequences

module Data.Containers

module Data.Builder

module Data.NonNull

toByteVector :: ByteString -> SVector Word8 Source #

Convert a `ByteString` into a storable `Vector`.

fromByteVector :: SVector Word8 -> ByteString Source #

Convert a storable `Vector` into a `ByteString`.

# I/O

module Say

# Concurrency

yieldThread :: MonadIO m => m () Source #

Originally `yield`.

waitAsync :: MonadIO m => Async a -> m a Source #

`waitSTM` for any `MonadIO`

Since: 1.0.0

pollAsync :: MonadIO m => Async a -> m (Maybe (Either SomeException a)) Source #

`pollSTM` for any `MonadIO`

Since: 1.0.0

waitCatchAsync :: MonadIO m => Async a -> m (Either SomeException a) Source #

`waitCatchSTM` for any `MonadIO`

Since: 1.0.0

linkAsync :: MonadIO m => Async a -> m () Source #

`link` generalized to any `MonadIO`

Since: 1.0.0

link2Async :: MonadIO m => Async a -> Async b -> m () Source #

`link2` generalized to any `MonadIO`

Since: 1.0.0

# Non-standard

## List-like classes

map :: Functor f => (a -> b) -> f a -> f b Source #

readMay :: (Element c ~ Char, MonoFoldable c, Read a) => c -> Maybe a Source #

zip :: Zip f => f a -> f b -> f (a, b) Source #

zip3 :: Zip3 f => f a -> f b -> f c -> f (a, b, c) Source #

zip4 :: Zip4 f => f a -> f b -> f c -> f d -> f (a, b, c, d) Source #

zip5 :: Zip5 f => f a -> f b -> f c -> f d -> f e -> f (a, b, c, d, e) Source #

zip6 :: Zip6 f => f a -> f b -> f c -> f d -> f e -> f g -> f (a, b, c, d, e, g) Source #

zip7 :: Zip7 f => f a -> f b -> f c -> f d -> f e -> f g -> f h -> f (a, b, c, d, e, g, h) Source #

unzip :: Zip f => f (a, b) -> (f a, f b) Source #

unzip3 :: Zip3 f => f (a, b, c) -> (f a, f b, f c) Source #

unzip4 :: Zip4 f => f (a, b, c, d) -> (f a, f b, f c, f d) Source #

unzip5 :: Zip5 f => f (a, b, c, d, e) -> (f a, f b, f c, f d, f e) Source #

unzip6 :: Zip6 f => f (a, b, c, d, e, g) -> (f a, f b, f c, f d, f e, f g) Source #

unzip7 :: Zip7 f => f (a, b, c, d, e, g, h) -> (f a, f b, f c, f d, f e, f g, f h) Source #

zipWith :: Zip f => (a -> b -> c) -> f a -> f b -> f c Source #

zipWith3 :: Zip3 f => (a -> b -> c -> d) -> f a -> f b -> f c -> f d Source #

zipWith4 :: Zip4 f => (a -> b -> c -> d -> e) -> f a -> f b -> f c -> f d -> f e Source #

zipWith5 :: Zip5 f => (a -> b -> c -> d -> e -> g) -> f a -> f b -> f c -> f d -> f e -> f g Source #

zipWith6 :: Zip6 f => (a -> b -> c -> d -> e -> g -> h) -> f a -> f b -> f c -> f d -> f e -> f g -> f h Source #

zipWith7 :: Zip7 f => (a -> b -> c -> d -> e -> g -> h -> i) -> f a -> f b -> f c -> f d -> f e -> f g -> f h -> f i Source #

hashNub :: (Hashable a, Eq a) => [a] -> [a] Source #

same behavior as `nub`, but requires `Hashable` & `Eq` and is `O(n log n)`

https://github.com/nh2/haskell-ordnub

ordNub :: Ord a => [a] -> [a] Source #

same behavior as `nub`, but requires `Ord` and is `O(n log n)`

https://github.com/nh2/haskell-ordnub

ordNubBy :: Ord b => (a -> b) -> (a -> a -> Bool) -> [a] -> [a] Source #

same behavior as `nubBy`, but requires `Ord` and is `O(n log n)`

https://github.com/nh2/haskell-ordnub

sortWith :: (Ord a, IsSequence c) => (Element c -> a) -> c -> c Source #

Sort elements using the user supplied function to project something out of each element. Inspired by http://hackage.haskell.org/packages/archive/base/latest/doc/html/GHC-Exts.html#v:sortWith.

repeat :: a -> [a] Source #

`repeat` `x` is an infinite list, with `x` the value of every element.

#### Examples

Expand

    >>> take 10 $ repeat 17
    [17,17,17,17,17,17,17,17,17, 17]

    >>> repeat undefined
    [*** Exception: Prelude.undefined

## Set-like

(\\) :: SetContainer a => a -> a -> a infixl 9 Source #

An alias for `difference`.

intersect :: SetContainer a => a -> a -> a Source #

An alias for `intersection`.

## Text-like

class Show a where Source #

Conversion of values to readable `String`s.

Derived instances of `Show` have the following properties, which are compatible with derived instances of `Read`:

- The result of `show` is a syntactically correct Haskell expression containing only constants, given the fixity declarations in force at the point where the type is declared. It contains only the constructor names defined in the data type, parentheses, and spaces. When labelled constructor fields are used, braces, commas, field names, and equal signs are also used.
- If the constructor is defined to be an infix operator, then `showsPrec` will produce infix applications of the constructor.
- the representation will be enclosed in parentheses if the precedence of the top-level constructor in `x` is less than `d` (associativity is ignored). Thus, if `d` is `0` then the result is never surrounded in parentheses; if `d` is `11` it is always surrounded in parentheses, unless it is an atomic expression.
- If the constructor is defined using record syntax, then `show` will produce the record-syntax form, with the fields given in the same order as the original declaration.

For example, given the declarations

    infixr 5 :^:
    data Tree a =  Leaf a  |  Tree a :^: Tree a

the derived instance of `Show` is equivalent to

    instance (Show a) => Show (Tree a) where

           showsPrec d (Leaf m) = showParen (d > app_prec) $
                showString "Leaf " . showsPrec (app_prec+1) m
             where app_prec = 10

           showsPrec d (u :^: v) = showParen (d > up_prec) $
                showsPrec (up_prec+1) u .
                showString " :^: "      .
                showsPrec (up_prec+1) v
             where up_prec = 5

Note that right-associativity of `:^:` is ignored. For example,

- ``show` (Leaf 1 :^: Leaf 2 :^: Leaf 3)` produces the string `"Leaf 1 :^: (Leaf 2 :^: Leaf 3)"`.

Minimal complete definition

showsPrec | show

Methods

showsPrec Source #

Arguments

:: Int | the operator precedence of the enclosing context (a number from `0` to `11`). Function application has precedence `10`.
-> a | the value to be converted to a `String`
-> ShowS |

Convert a value to a readable `String`.

`showsPrec` should satisfy the law

    showsPrec d x r ++ s  ==  showsPrec d x (r ++ s)

Derived instances of `Read` and `Show` satisfy the following:

- `(x,"")` is an element of `(`readsPrec` d (`showsPrec` d x ""))`.

That is, `readsPrec` parses the string produced by `showsPrec`, and delivers the value that `showsPrec` started with.

show :: a -> String Source #

A specialised variant of `showsPrec`, using precedence context zero, and returning an ordinary `String`.

showList :: [a] -> ShowS Source #

The method `showList` is provided to allow the programmer to give a specialised way of showing lists of values. For example, this is used by the predefined `Show` instance of the `Char` type, where values of type `String` should be shown in double quotes, rather than between square brackets.

#### Instances

Instances details

Show AsyncCancelled |
Instance details Defined in Control.Concurrent.Async.Internal Methods showsPrec :: Int -> AsyncCancelled -> ShowS Source # show :: AsyncCancelled -> String Source # showList :: [AsyncCancelled] -> ShowS Source #
Show ExceptionInLinkedThread |
Instance details Defined in Control.Concurrent.Async.Internal Methods showsPrec :: Int -> ExceptionInLinkedThread -> ShowS Source # show :: ExceptionInLinkedThread -> String Source # showList :: [ExceptionInLinkedThread] -> ShowS Source #
Show ByteArray | Since: base-4.17.0.0
Instance details Defined in Data.Array.Byte Methods showsPrec :: Int -> ByteArray -> ShowS Source # show :: ByteArray -> String Source # showList :: [ByteArray] -> ShowS Source #
Show Timeout | Since: base-4.0
Instance details Defined in System.Timeout Methods showsPrec :: Int -> Timeout -> ShowS Source # show :: Timeout -> String Source # showList :: [Timeout] -> ShowS Source #
Show Options |
Instance details Defined in Data.Bifunctor.TH Methods showsPrec :: Int -> Options -> ShowS Source # show :: Options -> String Source # showList :: [Options] -> ShowS Source #
Show Builder | Since: bytestring-0.11.1.0
Instance details Defined in Data.ByteString.Builder Methods showsPrec :: Int -> Builder -> ShowS Source # show :: Builder -> String Source # showList :: [Builder] -> ShowS Source #
Show FormatMode |
Instance details Defined in Data.ByteString.Builder.RealFloat Methods showsPrec :: Int -> FormatMode -> ShowS Source # show :: FormatMode -> String Source # showList :: [FormatMode] -> ShowS Source #
Show ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods showsPrec :: Int -> ByteString -> ShowS Source # show :: ByteString -> String Source # showList :: [ByteString] -> ShowS Source #
Show SizeOverflowException |
Instance details Defined in Data.ByteString.Internal.Type Methods showsPrec :: Int -> SizeOverflowException -> ShowS Source # show :: SizeOverflowException -> String Source # showList :: [SizeOverflowException] -> ShowS Source #
Show ByteString |
Instance details Defined in Data.ByteString.Lazy.Internal Methods showsPrec :: Int -> ByteString -> ShowS Source # show :: ByteString -> String Source # showList :: [ByteString] -> ShowS Source #
Show ShortByteString |
Instance details Defined in Data.ByteString.Short.Internal Methods showsPrec :: Int -> ShortByteString -> ShowS Source # show :: ShortByteString -> String Source # showList :: [ShortByteString] -> ShowS Source #
Show IntSet |
Instance details Defined in Data.IntSet.Internal Methods showsPrec :: Int -> IntSet -> ShowS Source # show :: IntSet -> String Source # showList :: [IntSet] -> ShowS Source #
Show BitQueue |
Instance details Defined in Utils.Containers.Internal.BitQueue Methods showsPrec :: Int -> BitQueue -> ShowS Source # show :: BitQueue -> String Source # showList :: [BitQueue] -> ShowS Source #
Show BitQueueB |
Instance details Defined in Utils.Containers.Internal.BitQueue Methods showsPrec :: Int -> BitQueueB -> ShowS Source # show :: BitQueueB -> String Source # showList :: [BitQueueB] -> ShowS Source #
Show Void | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Void -> ShowS Source # show :: Void -> String Source # showList :: [Void] -> ShowS Source #
Show BlockReason | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods showsPrec :: Int -> BlockReason -> ShowS Source # show :: BlockReason -> String Source # showList :: [BlockReason] -> ShowS Source #
Show ThreadId | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods showsPrec :: Int -> ThreadId -> ShowS Source # show :: ThreadId -> String Source # showList :: [ThreadId] -> ShowS Source #
Show ThreadStatus | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.Conc.Sync Methods showsPrec :: Int -> ThreadStatus -> ShowS Source # show :: ThreadStatus -> String Source # showList :: [ThreadStatus] -> ShowS Source #
Show SomeTypeRep | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Data.Typeable.Internal Methods showsPrec :: Int -> SomeTypeRep -> ShowS Source # show :: SomeTypeRep -> String Source # showList :: [SomeTypeRep] -> ShowS Source #
Show Version | Since: base-2.1
Instance details Defined in GHC.Internal.Data.Version Methods showsPrec :: Int -> Version -> ShowS Source # show :: Version -> String Source # showList :: [Version] -> ShowS Source #
Show ArithException | Since: base-4.0.0.0
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> ArithException -> ShowS Source # show :: ArithException -> String Source # showList :: [ArithException] -> ShowS Source #
Show SomeException | Since: ghc-internal-3.0
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> SomeException -> ShowS Source # show :: SomeException -> String Source # showList :: [SomeException] -> ShowS Source #
Show CBool |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CBool -> ShowS Source # show :: CBool -> String Source # showList :: [CBool] -> ShowS Source #
Show CChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CChar -> ShowS Source # show :: CChar -> String Source # showList :: [CChar] -> ShowS Source #
Show CClock |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CClock -> ShowS Source # show :: CClock -> String Source # showList :: [CClock] -> ShowS Source #
Show CDouble |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CDouble -> ShowS Source # show :: CDouble -> String Source # showList :: [CDouble] -> ShowS Source #
Show CFloat |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CFloat -> ShowS Source # show :: CFloat -> String Source # showList :: [CFloat] -> ShowS Source #
Show CInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CInt -> ShowS Source # show :: CInt -> String Source # showList :: [CInt] -> ShowS Source #
Show CIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CIntMax -> ShowS Source # show :: CIntMax -> String Source # showList :: [CIntMax] -> ShowS Source #
Show CIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CIntPtr -> ShowS Source # show :: CIntPtr -> String Source # showList :: [CIntPtr] -> ShowS Source #
Show CLLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CLLong -> ShowS Source # show :: CLLong -> String Source # showList :: [CLLong] -> ShowS Source #
Show CLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CLong -> ShowS Source # show :: CLong -> String Source # showList :: [CLong] -> ShowS Source #
Show CPtrdiff |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CPtrdiff -> ShowS Source # show :: CPtrdiff -> String Source # showList :: [CPtrdiff] -> ShowS Source #
Show CSChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CSChar -> ShowS Source # show :: CSChar -> String Source # showList :: [CSChar] -> ShowS Source #
Show CSUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CSUSeconds -> ShowS Source # show :: CSUSeconds -> String Source # showList :: [CSUSeconds] -> ShowS Source #
Show CShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CShort -> ShowS Source # show :: CShort -> String Source # showList :: [CShort] -> ShowS Source #
Show CSigAtomic |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CSigAtomic -> ShowS Source # show :: CSigAtomic -> String Source # showList :: [CSigAtomic] -> ShowS Source #
Show CSize |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CSize -> ShowS Source # show :: CSize -> String Source # showList :: [CSize] -> ShowS Source #
Show CTime |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CTime -> ShowS Source # show :: CTime -> String Source # showList :: [CTime] -> ShowS Source #
Show CUChar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUChar -> ShowS Source # show :: CUChar -> String Source # showList :: [CUChar] -> ShowS Source #
Show CUInt |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUInt -> ShowS Source # show :: CUInt -> String Source # showList :: [CUInt] -> ShowS Source #
Show CUIntMax |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUIntMax -> ShowS Source # show :: CUIntMax -> String Source # showList :: [CUIntMax] -> ShowS Source #
Show CUIntPtr |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUIntPtr -> ShowS Source # show :: CUIntPtr -> String Source # showList :: [CUIntPtr] -> ShowS Source #
Show CULLong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CULLong -> ShowS Source # show :: CULLong -> String Source # showList :: [CULLong] -> ShowS Source #
Show CULong |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CULong -> ShowS Source # show :: CULong -> String Source # showList :: [CULong] -> ShowS Source #
Show CUSeconds |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUSeconds -> ShowS Source # show :: CUSeconds -> String Source # showList :: [CUSeconds] -> ShowS Source #
Show CUShort |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CUShort -> ShowS Source # show :: CUShort -> String Source # showList :: [CUShort] -> ShowS Source #
Show CWchar |
Instance details Defined in GHC.Internal.Foreign.C.Types Methods showsPrec :: Int -> CWchar -> ShowS Source # show :: CWchar -> String Source # showList :: [CWchar] -> ShowS Source #
Show Associativity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Associativity -> ShowS Source # show :: Associativity -> String Source # showList :: [Associativity] -> ShowS Source #
Show DecidedStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> DecidedStrictness -> ShowS Source # show :: DecidedStrictness -> String Source # showList :: [DecidedStrictness] -> ShowS Source #
Show Fixity | Since: base-4.6.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Fixity -> ShowS Source # show :: Fixity -> String Source # showList :: [Fixity] -> ShowS Source #
Show SourceStrictness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> SourceStrictness -> ShowS Source # show :: SourceStrictness -> String Source # showList :: [SourceStrictness] -> ShowS Source #
Show SourceUnpackedness | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> SourceUnpackedness -> ShowS Source # show :: SourceUnpackedness -> String Source # showList :: [SourceUnpackedness] -> ShowS Source #
Show MaskingState | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO Methods showsPrec :: Int -> MaskingState -> ShowS Source # show :: MaskingState -> String Source # showList :: [MaskingState] -> ShowS Source #
Show SeekMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Device Methods showsPrec :: Int -> SeekMode -> ShowS Source # show :: SeekMode -> String Source # showList :: [SeekMode] -> ShowS Source #
Show AllocationLimitExceeded | Since: base-4.7.1.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> AllocationLimitExceeded -> ShowS Source # show :: AllocationLimitExceeded -> String Source # showList :: [AllocationLimitExceeded] -> ShowS Source #
Show ArrayException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> ArrayException -> ShowS Source # show :: ArrayException -> String Source # showList :: [ArrayException] -> ShowS Source #
Show AssertionFailed | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> AssertionFailed -> ShowS Source # show :: AssertionFailed -> String Source # showList :: [AssertionFailed] -> ShowS Source #
Show AsyncException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> AsyncException -> ShowS Source # show :: AsyncException -> String Source # showList :: [AsyncException] -> ShowS Source #
Show BlockedIndefinitelyOnMVar | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> BlockedIndefinitelyOnMVar -> ShowS Source # show :: BlockedIndefinitelyOnMVar -> String Source # showList :: [BlockedIndefinitelyOnMVar] -> ShowS Source #
Show BlockedIndefinitelyOnSTM | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> BlockedIndefinitelyOnSTM -> ShowS Source # show :: BlockedIndefinitelyOnSTM -> String Source # showList :: [BlockedIndefinitelyOnSTM] -> ShowS Source #
Show CompactionFailed | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> CompactionFailed -> ShowS Source # show :: CompactionFailed -> String Source # showList :: [CompactionFailed] -> ShowS Source #
Show Deadlock | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> Deadlock -> ShowS Source # show :: Deadlock -> String Source # showList :: [Deadlock] -> ShowS Source #
Show ExitCode |
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> ExitCode -> ShowS Source # show :: ExitCode -> String Source # showList :: [ExitCode] -> ShowS Source #
Show FixIOException | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> FixIOException -> ShowS Source # show :: FixIOException -> String Source # showList :: [FixIOException] -> ShowS Source #
Show IOErrorType | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> IOErrorType -> ShowS Source # show :: IOErrorType -> String Source # showList :: [IOErrorType] -> ShowS Source #
Show IOException | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> IOException -> ShowS Source # show :: IOException -> String Source # showList :: [IOException] -> ShowS Source #
Show SomeAsyncException | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.IO.Exception Methods showsPrec :: Int -> SomeAsyncException -> ShowS Source # show :: SomeAsyncException -> String Source # showList :: [SomeAsyncException] -> ShowS Source #
Show BufferMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> BufferMode -> ShowS Source # show :: BufferMode -> String Source # showList :: [BufferMode] -> ShowS Source #
Show Handle | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> Handle -> ShowS Source # show :: Handle -> String Source # showList :: [Handle] -> ShowS Source #
Show HandleType | Since: base-4.1.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> HandleType -> ShowS Source # show :: HandleType -> String Source # showList :: [HandleType] -> ShowS Source #
Show Newline | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> Newline -> ShowS Source # show :: Newline -> String Source # showList :: [Newline] -> ShowS Source #
Show NewlineMode | Since: base-4.3.0.0
Instance details Defined in GHC.Internal.IO.Handle.Types Methods showsPrec :: Int -> NewlineMode -> ShowS Source # show :: NewlineMode -> String Source # showList :: [NewlineMode] -> ShowS Source #
Show IOMode | Since: base-4.2.0.0
Instance details Defined in GHC.Internal.IO.IOMode Methods showsPrec :: Int -> IOMode -> ShowS Source # show :: IOMode -> String Source # showList :: [IOMode] -> ShowS Source #
Show Int16 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int16 -> ShowS Source # show :: Int16 -> String Source # showList :: [Int16] -> ShowS Source #
Show Int32 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int32 -> ShowS Source # show :: Int32 -> String Source # showList :: [Int32] -> ShowS Source #
Show Int64 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int64 -> ShowS Source # show :: Int64 -> String Source # showList :: [Int64] -> ShowS Source #
Show Int8 | Since: base-2.1
Instance details Defined in GHC.Internal.Int Methods showsPrec :: Int -> Int8 -> ShowS Source # show :: Int8 -> String Source # showList :: [Int8] -> ShowS Source #
Show FractionalExponentBase |
Instance details Defined in GHC.Internal.Real Methods showsPrec :: Int -> FractionalExponentBase -> ShowS Source # show :: FractionalExponentBase -> String Source # showList :: [FractionalExponentBase] -> ShowS Source #
Show CallStack | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> CallStack -> ShowS Source # show :: CallStack -> String Source # showList :: [CallStack] -> ShowS Source #
Show SrcLoc | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> SrcLoc -> ShowS Source # show :: SrcLoc -> String Source # showList :: [SrcLoc] -> ShowS Source #
Show GCDetails | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Stats Methods showsPrec :: Int -> GCDetails -> ShowS Source # show :: GCDetails -> String Source # showList :: [GCDetails] -> ShowS Source #
Show RTSStats | Since: base-4.10.0.0
Instance details Defined in GHC.Internal.Stats Methods showsPrec :: Int -> RTSStats -> ShowS Source # show :: RTSStats -> String Source # showList :: [RTSStats] -> ShowS Source #
Show GeneralCategory | Since: base-2.1
Instance details Defined in GHC.Internal.Unicode Methods showsPrec :: Int -> GeneralCategory -> ShowS Source # show :: GeneralCategory -> String Source # showList :: [GeneralCategory] -> ShowS Source #
Show Word16 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word16 -> ShowS Source # show :: Word16 -> String Source # showList :: [Word16] -> ShowS Source #
Show Word32 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word32 -> ShowS Source # show :: Word32 -> String Source # showList :: [Word32] -> ShowS Source #
Show Word64 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word64 -> ShowS Source # show :: Word64 -> String Source # showList :: [Word64] -> ShowS Source #
Show Word8 | Since: base-2.1
Instance details Defined in GHC.Internal.Word Methods showsPrec :: Int -> Word8 -> ShowS Source # show :: Word8 -> String Source # showList :: [Word8] -> ShowS Source #
Show KindRep |
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> KindRep -> ShowS Source # show :: KindRep -> String Source # showList :: [KindRep] -> ShowS Source #
Show Module | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Module -> ShowS Source # show :: Module -> String Source # showList :: [Module] -> ShowS Source #
Show Ordering | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Ordering -> ShowS Source # show :: Ordering -> String Source # showList :: [Ordering] -> ShowS Source #
Show TrName | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> TrName -> ShowS Source # show :: TrName -> String Source # showList :: [TrName] -> ShowS Source #
Show TyCon | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> TyCon -> ShowS Source # show :: TyCon -> String Source # showList :: [TyCon] -> ShowS Source #
Show TypeLitSort | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> TypeLitSort -> ShowS Source # show :: TypeLitSort -> String Source # showList :: [TypeLitSort] -> ShowS Source #
Show NullError |
Instance details Defined in Data.NonNull Methods showsPrec :: Int -> NullError -> ShowS Source # show :: NullError -> String Source # showList :: [NullError] -> ShowS Source #
Show AsyncExceptionWrapper |
Instance details Defined in Control.Exception.Safe Methods showsPrec :: Int -> AsyncExceptionWrapper -> ShowS Source # show :: AsyncExceptionWrapper -> String Source # showList :: [AsyncExceptionWrapper] -> ShowS Source #
Show StringException |
Instance details Defined in Control.Exception.Safe Methods showsPrec :: Int -> StringException -> ShowS Source # show :: StringException -> String Source # showList :: [StringException] -> ShowS Source #
Show SyncExceptionWrapper |
Instance details Defined in Control.Exception.Safe Methods showsPrec :: Int -> SyncExceptionWrapper -> ShowS Source # show :: SyncExceptionWrapper -> String Source # showList :: [SyncExceptionWrapper] -> ShowS Source #
Show Decoding |
Instance details Defined in Data.Text.Encoding Methods showsPrec :: Int -> Decoding -> ShowS Source # show :: Decoding -> String Source # showList :: [Decoding] -> ShowS Source #
Show UnicodeException |
Instance details Defined in Data.Text.Encoding.Error Methods showsPrec :: Int -> UnicodeException -> ShowS Source # show :: UnicodeException -> String Source # showList :: [UnicodeException] -> ShowS Source #
Show I8 |
Instance details Defined in Data.Text.Foreign Methods showsPrec :: Int -> I8 -> ShowS Source # show :: I8 -> String Source # showList :: [I8] -> ShowS Source #
Show Text |
Instance details Defined in Data.Text.Show Methods showsPrec :: Int -> Text -> ShowS Source # show :: Text -> String Source # showList :: [Text] -> ShowS Source #
Show Builder |
Instance details Defined in Data.Text.Internal.Builder Methods showsPrec :: Int -> Builder -> ShowS Source # show :: Builder -> String Source # showList :: [Builder] -> ShowS Source #
Show PartialUtf8CodePoint |
Instance details Defined in Data.Text.Internal.Encoding Methods showsPrec :: Int -> PartialUtf8CodePoint -> ShowS Source # show :: PartialUtf8CodePoint -> String Source # showList :: [PartialUtf8CodePoint] -> ShowS Source #
Show Utf8State |
Instance details Defined in Data.Text.Internal.Encoding Methods showsPrec :: Int -> Utf8State -> ShowS Source # show :: Utf8State -> String Source # showList :: [Utf8State] -> ShowS Source #
Show DecoderState |
Instance details Defined in Data.Text.Internal.Encoding.Utf8 Methods showsPrec :: Int -> DecoderState -> ShowS Source # show :: DecoderState -> String Source # showList :: [DecoderState] -> ShowS Source #
Show Size |
Instance details Defined in Data.Text.Internal.Fusion.Size Methods showsPrec :: Int -> Size -> ShowS Source # show :: Size -> String Source # showList :: [Size] -> ShowS Source #
Show Text |
Instance details Defined in Data.Text.Lazy Methods showsPrec :: Int -> Text -> ShowS Source # show :: Text -> String Source # showList :: [Text] -> ShowS Source #
Show FPFormat |
Instance details Defined in Data.Text.Lazy.Builder.RealFloat Methods showsPrec :: Int -> FPFormat -> ShowS Source # show :: FPFormat -> String Source # showList :: [FPFormat] -> ShowS Source #
Show Iter |
Instance details Defined in Data.Text.Unsafe Methods showsPrec :: Int -> Iter -> ShowS Source # show :: Iter -> String Source # showList :: [Iter] -> ShowS Source #
Show Day |
Instance details Defined in Data.Time.Calendar.Gregorian Methods showsPrec :: Int -> Day -> ShowS Source # show :: Day -> String Source # showList :: [Day] -> ShowS Source #
Show Month | Show as `yyyy-mm`.
Instance details Defined in Data.Time.Calendar.Month Methods showsPrec :: Int -> Month -> ShowS Source # show :: Month -> String Source # showList :: [Month] -> ShowS Source #
Show Quarter | Show as `yyyy-Qn`.
Instance details Defined in Data.Time.Calendar.Quarter Methods showsPrec :: Int -> Quarter -> ShowS Source # show :: Quarter -> String Source # showList :: [Quarter] -> ShowS Source #
Show QuarterOfYear |
Instance details Defined in Data.Time.Calendar.Quarter Methods showsPrec :: Int -> QuarterOfYear -> ShowS Source # show :: QuarterOfYear -> String Source # showList :: [QuarterOfYear] -> ShowS Source #
Show DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods showsPrec :: Int -> DiffTime -> ShowS Source # show :: DiffTime -> String Source # showList :: [DiffTime] -> ShowS Source #
Show UTCTime |
Instance details Defined in Data.Time.LocalTime.Internal.ZonedTime Methods showsPrec :: Int -> UTCTime -> ShowS Source # show :: UTCTime -> String Source # showList :: [UTCTime] -> ShowS Source #
Show UniversalTime |
Instance details Defined in Data.Time.LocalTime.Internal.LocalTime Methods showsPrec :: Int -> UniversalTime -> ShowS Source # show :: UniversalTime -> String Source # showList :: [UniversalTime] -> ShowS Source #
Show TimeLocale |
Instance details Defined in Data.Time.Format.Locale Methods showsPrec :: Int -> TimeLocale -> ShowS Source # show :: TimeLocale -> String Source # showList :: [TimeLocale] -> ShowS Source #
Show LocalTime |
Instance details Defined in Data.Time.LocalTime.Internal.LocalTime Methods showsPrec :: Int -> LocalTime -> ShowS Source # show :: LocalTime -> String Source # showList :: [LocalTime] -> ShowS Source #
Show ZonedTime | For the time zone, this only shows the name, or offset if the name is empty.
Instance details Defined in Data.Time.LocalTime.Internal.ZonedTime Methods showsPrec :: Int -> ZonedTime -> ShowS Source # show :: ZonedTime -> String Source # showList :: [ZonedTime] -> ShowS Source #
Show StringException | Since: unliftio-0.1.0.0
Instance details Defined in UnliftIO.Exception Methods showsPrec :: Int -> StringException -> ShowS Source # show :: StringException -> String Source # showList :: [StringException] -> ShowS Source #
Show ConcException |
Instance details Defined in UnliftIO.Internals.Async Methods showsPrec :: Int -> ConcException -> ShowS Source # show :: ConcException -> String Source # showList :: [ConcException] -> ShowS Source #
Show SubHashPath |
Instance details Defined in Data.HashMap.Internal.Debug Methods showsPrec :: Int -> SubHashPath -> ShowS Source # show :: SubHashPath -> String Source # showList :: [SubHashPath] -> ShowS Source #
Show Size |
Instance details Defined in Data.Vector.Fusion.Bundle.Size Methods showsPrec :: Int -> Size -> ShowS Source # show :: Size -> String Source # showList :: [Size] -> ShowS Source #
Show Integer | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Integer -> ShowS Source # show :: Integer -> String Source # showList :: [Integer] -> ShowS Source #
Show Natural | Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Natural -> ShowS Source # show :: Natural -> String Source # showList :: [Natural] -> ShowS Source #
Show () | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> () -> ShowS Source # show :: () -> String Source # showList :: [()] -> ShowS Source #
Show Bool | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Bool -> ShowS Source # show :: Bool -> String Source # showList :: [Bool] -> ShowS Source #
Show Char | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Char -> ShowS Source # show :: Char -> String Source # showList :: [Char] -> ShowS Source #
Show Double | Since: base-2.1
Instance details Defined in GHC.Internal.Float Methods showsPrec :: Int -> Double -> ShowS Source # show :: Double -> String Source # showList :: [Double] -> ShowS Source #
Show Float | Since: base-2.1
Instance details Defined in GHC.Internal.Float Methods showsPrec :: Int -> Float -> ShowS Source # show :: Float -> String Source # showList :: [Float] -> ShowS Source #
Show Int | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Int -> ShowS Source # show :: Int -> String Source # showList :: [Int] -> ShowS Source #
Show Levity | Since: base-4.15.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Levity -> ShowS Source # show :: Levity -> String Source # showList :: [Levity] -> ShowS Source #
Show RuntimeRep | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> RuntimeRep -> ShowS Source # show :: RuntimeRep -> String Source # showList :: [RuntimeRep] -> ShowS Source #
Show VecCount | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> VecCount -> ShowS Source # show :: VecCount -> String Source # showList :: [VecCount] -> ShowS Source #
Show VecElem | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> VecElem -> ShowS Source # show :: VecElem -> String Source # showList :: [VecElem] -> ShowS Source #
Show Word | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Word -> ShowS Source # show :: Word -> String Source # showList :: [Word] -> ShowS Source #
Show a => Show (Complex a) | Since: base-2.1
Instance details Defined in Data.Complex Methods showsPrec :: Int -> Complex a -> ShowS Source # show :: Complex a -> String Source # showList :: [Complex a] -> ShowS Source #
Show a => Show (First a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> First a -> ShowS Source # show :: First a -> String Source # showList :: [First a] -> ShowS Source #
Show a => Show (Last a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> Last a -> ShowS Source # show :: Last a -> String Source # showList :: [Last a] -> ShowS Source #
Show a => Show (Max a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> Max a -> ShowS Source # show :: Max a -> String Source # showList :: [Max a] -> ShowS Source #
Show a => Show (Min a) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> Min a -> ShowS Source # show :: Min a -> String Source # showList :: [Min a] -> ShowS Source #
Show m => Show (WrappedMonoid m) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> WrappedMonoid m -> ShowS Source # show :: WrappedMonoid m -> String Source # showList :: [WrappedMonoid m] -> ShowS Source #
Show vertex => Show (SCC vertex) | Since: containers-0.5.9
Instance details Defined in Data.Graph Methods showsPrec :: Int -> SCC vertex -> ShowS Source # show :: SCC vertex -> String Source # showList :: [SCC vertex] -> ShowS Source #
Show a => Show (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods showsPrec :: Int -> IntMap a -> ShowS Source # show :: IntMap a -> String Source # showList :: [IntMap a] -> ShowS Source #
Show a => Show (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods showsPrec :: Int -> Seq a -> ShowS Source # show :: Seq a -> String Source # showList :: [Seq a] -> ShowS Source #
Show a => Show (ViewL a) |
Instance details Defined in Data.Sequence.Internal Methods showsPrec :: Int -> ViewL a -> ShowS Source # show :: ViewL a -> String Source # showList :: [ViewL a] -> ShowS Source #
Show a => Show (ViewR a) |
Instance details Defined in Data.Sequence.Internal Methods showsPrec :: Int -> ViewR a -> ShowS Source # show :: ViewR a -> String Source # showList :: [ViewR a] -> ShowS Source #
Show a => Show (Intersection a) |
Instance details Defined in Data.Set.Internal Methods showsPrec :: Int -> Intersection a -> ShowS Source # show :: Intersection a -> String Source # showList :: [Intersection a] -> ShowS Source #
Show a => Show (Set a) |
Instance details Defined in Data.Set.Internal Methods showsPrec :: Int -> Set a -> ShowS Source # show :: Set a -> String Source # showList :: [Set a] -> ShowS Source #
Show a => Show (Tree a) |
Instance details Defined in Data.Tree Methods showsPrec :: Int -> Tree a -> ShowS Source # show :: Tree a -> String Source # showList :: [Tree a] -> ShowS Source #
Show a => Show (DList a) |
Instance details Defined in Data.DList.Internal Methods showsPrec :: Int -> DList a -> ShowS Source # show :: DList a -> String Source # showList :: [DList a] -> ShowS Source #
Show a => Show (ExitCase a) |
Instance details Defined in Control.Monad.Catch Methods showsPrec :: Int -> ExitCase a -> ShowS Source # show :: ExitCase a -> String Source # showList :: [ExitCase a] -> ShowS Source #
Show a => Show (NonEmpty a) | Since: base-4.11.0.0
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> NonEmpty a -> ShowS Source # show :: NonEmpty a -> String Source # showList :: [NonEmpty a] -> ShowS Source #
Show a => Show (Identity a) | This instance would be equivalent to the derived instances of the `Identity` newtype if the `runIdentity` field were removed Since: base-4.8.0.0
Instance details Defined in GHC.Internal.Data.Functor.Identity Methods showsPrec :: Int -> Identity a -> ShowS Source # show :: Identity a -> String Source # showList :: [Identity a] -> ShowS Source #
Show a => Show (Down a) | This instance would be equivalent to the derived instances of the `Down` newtype if the `getDown` field were removed Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Data.Ord Methods showsPrec :: Int -> Down a -> ShowS Source # show :: Down a -> String Source # showList :: [Down a] -> ShowS Source #
Show a => Show (ExceptionWithContext a) |
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> ExceptionWithContext a -> ShowS Source # show :: ExceptionWithContext a -> String Source # showList :: [ExceptionWithContext a] -> ShowS Source #
Show e => Show (NoBacktrace e) |
Instance details Defined in GHC.Internal.Exception.Type Methods showsPrec :: Int -> NoBacktrace e -> ShowS Source # show :: NoBacktrace e -> String Source # showList :: [NoBacktrace e] -> ShowS Source #
Show (ForeignPtr a) | Since: base-2.1
Instance details Defined in GHC.Internal.ForeignPtr Methods showsPrec :: Int -> ForeignPtr a -> ShowS Source # show :: ForeignPtr a -> String Source # showList :: [ForeignPtr a] -> ShowS Source #
Show p => Show (Par1 p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Par1 p -> ShowS Source # show :: Par1 p -> String Source # showList :: [Par1 p] -> ShowS Source #
Show a => Show (Ratio a) | Since: base-2.0.1
Instance details Defined in GHC.Internal.Real Methods showsPrec :: Int -> Ratio a -> ShowS Source # show :: Ratio a -> String Source # showList :: [Ratio a] -> ShowS Source #
Show a => Show (Hashed a) |
Instance details Defined in Data.Hashable.Class Methods showsPrec :: Int -> Hashed a -> ShowS Source # show :: Hashed a -> String Source # showList :: [Hashed a] -> ShowS Source #
Show mono => Show (NonNull mono) |
Instance details Defined in Data.NonNull Methods showsPrec :: Int -> NonNull mono -> ShowS Source # show :: NonNull mono -> String Source # showList :: [NonNull mono] -> ShowS Source #
Show a => Show (Array a) |
Instance details Defined in Data.Primitive.Array Methods showsPrec :: Int -> Array a -> ShowS Source # show :: Array a -> String Source # showList :: [Array a] -> ShowS Source #
(Show a, Prim a) => Show (PrimArray a) | Since: primitive-0.6.4.0
Instance details Defined in Data.Primitive.PrimArray Methods showsPrec :: Int -> PrimArray a -> ShowS Source # show :: PrimArray a -> String Source # showList :: [PrimArray a] -> ShowS Source #
Show a => Show (SmallArray a) |
Instance details Defined in Data.Primitive.SmallArray Methods showsPrec :: Int -> SmallArray a -> ShowS Source # show :: SmallArray a -> String Source # showList :: [SmallArray a] -> ShowS Source #
Show (Memoized a) |
Instance details Defined in UnliftIO.Memoize Methods showsPrec :: Int -> Memoized a -> ShowS Source # show :: Memoized a -> String Source # showList :: [Memoized a] -> ShowS Source #
Show a => Show (Array a) |
Instance details Defined in Data.HashMap.Internal.Array Methods showsPrec :: Int -> Array a -> ShowS Source # show :: Array a -> String Source # showList :: [Array a] -> ShowS Source #
Show k => Show (Error k) |
Instance details Defined in Data.HashMap.Internal.Debug Methods showsPrec :: Int -> Error k -> ShowS Source # show :: Error k -> String Source # showList :: [Error k] -> ShowS Source #
Show k => Show (Validity k) |
Instance details Defined in Data.HashMap.Internal.Debug Methods showsPrec :: Int -> Validity k -> ShowS Source # show :: Validity k -> String Source # showList :: [Validity k] -> ShowS Source #
Show a => Show (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods showsPrec :: Int -> HashSet a -> ShowS Source # show :: HashSet a -> String Source # showList :: [HashSet a] -> ShowS Source #
Show a => Show (Vector a) |
Instance details Defined in Data.Vector Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
(Show a, Prim a) => Show (Vector a) |
Instance details Defined in Data.Vector.Primitive Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
(Show a, Storable a) => Show (Vector a) |
Instance details Defined in Data.Vector.Storable Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
Show a => Show (Vector a) |
Instance details Defined in Data.Vector.Strict Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
(Show a, Unbox a) => Show (Vector a) |
Instance details Defined in Data.Vector.Unboxed Methods showsPrec :: Int -> Vector a -> ShowS Source # show :: Vector a -> String Source # showList :: [Vector a] -> ShowS Source #
Show a => Show (Maybe a) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Maybe a -> ShowS Source # show :: Maybe a -> String Source # showList :: [Maybe a] -> ShowS Source #
Show a => Show (Solo a) | Since: base-4.15
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> Solo a -> ShowS Source # show :: Solo a -> String Source # showList :: [Solo a] -> ShowS Source #
Show a => Show [a] | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> [a] -> ShowS Source # show :: [a] -> String Source # showList :: [[a]] -> ShowS Source #
HasResolution a => Show (Fixed a) | Since: base-2.1
Instance details Defined in Data.Fixed Methods showsPrec :: Int -> Fixed a -> ShowS Source # show :: Fixed a -> String Source # showList :: [Fixed a] -> ShowS Source #
(Show a, Show b) => Show (Arg a b) | Since: base-4.9.0.0
Instance details Defined in Data.Semigroup Methods showsPrec :: Int -> Arg a b -> ShowS Source # show :: Arg a b -> String Source # showList :: [Arg a b] -> ShowS Source #
(Show k, Show a) => Show (Map k a) |
Instance details Defined in Data.Map.Internal Methods showsPrec :: Int -> Map k a -> ShowS Source # show :: Map k a -> String Source # showList :: [Map k a] -> ShowS Source #
(Show1 f, Show a) => Show (Cofree f a) |
Instance details Defined in Control.Comonad.Cofree Methods showsPrec :: Int -> Cofree f a -> ShowS Source # show :: Cofree f a -> String Source # showList :: [Cofree f a] -> ShowS Source #
(Show1 f, Show a) => Show (Free f a) |
Instance details Defined in Control.Monad.Free Methods showsPrec :: Int -> Free f a -> ShowS Source # show :: Free f a -> String Source # showList :: [Free f a] -> ShowS Source #
(Show a, Show b) => Show (Either a b) | Since: base-3.0
Instance details Defined in GHC.Internal.Data.Either Methods showsPrec :: Int -> Either a b -> ShowS Source # show :: Either a b -> String Source # showList :: [Either a b] -> ShowS Source #
Show (TypeRep a) |
Instance details Defined in GHC.Internal.Data.Typeable.Internal Methods showsPrec :: Int -> TypeRep a -> ShowS Source # show :: TypeRep a -> String Source # showList :: [TypeRep a] -> ShowS Source #
Show (U1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> U1 p -> ShowS Source # show :: U1 p -> String Source # showList :: [U1 p] -> ShowS Source #
Show (UAddr p) |
Instance details Defined in Data.Orphans Methods showsPrec :: Int -> UAddr p -> ShowS Source # show :: UAddr p -> String Source # showList :: [UAddr p] -> ShowS Source #
Show (V1 p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> V1 p -> ShowS Source # show :: V1 p -> String Source # showList :: [V1 p] -> ShowS Source #
Show (ST s a) | Since: base-2.1
Instance details Defined in GHC.Internal.ST Methods showsPrec :: Int -> ST s a -> ShowS Source # show :: ST s a -> String Source # showList :: [ST s a] -> ShowS Source #
(Show1 f, Show a) => Show (Lift f a) |
Instance details Defined in Control.Applicative.Lift Methods showsPrec :: Int -> Lift f a -> ShowS Source # show :: Lift f a -> String Source # showList :: [Lift f a] -> ShowS Source #
(Show1 m, Show a) => Show (MaybeT m a) |
Instance details Defined in Control.Monad.Trans.Maybe Methods showsPrec :: Int -> MaybeT m a -> ShowS Source # show :: MaybeT m a -> String Source # showList :: [MaybeT m a] -> ShowS Source #
(Show k, Show v) => Show (HashMap k v) |
Instance details Defined in Data.HashMap.Internal Methods showsPrec :: Int -> HashMap k v -> ShowS Source # show :: HashMap k v -> String Source # showList :: [HashMap k v] -> ShowS Source #
(Show a, Show b) => Show (a, b) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b) -> ShowS Source # show :: (a, b) -> String Source # showList :: [(a, b)] -> ShowS Source #
Show (bi a b) => Show (Biap bi a b) |
Instance details Defined in Data.Bifunctor.Biap Methods showsPrec :: Int -> Biap bi a b -> ShowS Source # show :: Biap bi a b -> String Source # showList :: [Biap bi a b] -> ShowS Source #
Show (p (Fix p a) a) => Show (Fix p a) |
Instance details Defined in Data.Bifunctor.Fix Methods showsPrec :: Int -> Fix p a -> ShowS Source # show :: Fix p a -> String Source # showList :: [Fix p a] -> ShowS Source #
Show (p a a) => Show (Join p a) |
Instance details Defined in Data.Bifunctor.Join Methods showsPrec :: Int -> Join p a -> ShowS Source # show :: Join p a -> String Source # showList :: [Join p a] -> ShowS Source #
(Show a, Show (f b)) => Show (FreeF f a b) |
Instance details Defined in Control.Monad.Trans.Free Methods showsPrec :: Int -> FreeF f a b -> ShowS Source # show :: FreeF f a b -> String Source # showList :: [FreeF f a b] -> ShowS Source #
(Show1 f, Show1 m, Show a) => Show (FreeT f m a) |
Instance details Defined in Control.Monad.Trans.Free Methods showsPrec :: Int -> FreeT f m a -> ShowS Source # show :: FreeT f m a -> String Source # showList :: [FreeT f m a] -> ShowS Source #
Show (f p) => Show (Rec1 f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> Rec1 f p -> ShowS Source # show :: Rec1 f p -> String Source # showList :: [Rec1 f p] -> ShowS Source #
Show (URec Char p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Char p -> ShowS Source # show :: URec Char p -> String Source # showList :: [URec Char p] -> ShowS Source #
Show (URec Double p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Double p -> ShowS Source # show :: URec Double p -> String Source # showList :: [URec Double p] -> ShowS Source #
Show (URec Float p) |
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Float p -> ShowS Source # show :: URec Float p -> String Source # showList :: [URec Float p] -> ShowS Source #
Show (URec Int p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Int p -> ShowS Source # show :: URec Int p -> String Source # showList :: [URec Int p] -> ShowS Source #
Show (URec Word p) | Since: base-4.9.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> URec Word p -> ShowS Source # show :: URec Word p -> String Source # showList :: [URec Word p] -> ShowS Source #
Show b => Show (Tagged s b) |
Instance details Defined in Data.Tagged Methods showsPrec :: Int -> Tagged s b -> ShowS Source # show :: Tagged s b -> String Source # showList :: [Tagged s b] -> ShowS Source #
(Show1 f, Show a) => Show (Backwards f a) |
Instance details Defined in Control.Applicative.Backwards Methods showsPrec :: Int -> Backwards f a -> ShowS Source # show :: Backwards f a -> String Source # showList :: [Backwards f a] -> ShowS Source #
(Show e, Show1 m, Show a) => Show (ExceptT e m a) |
Instance details Defined in Control.Monad.Trans.Except Methods showsPrec :: Int -> ExceptT e m a -> ShowS Source # show :: ExceptT e m a -> String Source # showList :: [ExceptT e m a] -> ShowS Source #
(Show1 f, Show a) => Show (IdentityT f a) |
Instance details Defined in Control.Monad.Trans.Identity Methods showsPrec :: Int -> IdentityT f a -> ShowS Source # show :: IdentityT f a -> String Source # showList :: [IdentityT f a] -> ShowS Source #
(Show w, Show1 m, Show a) => Show (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Lazy Methods showsPrec :: Int -> WriterT w m a -> ShowS Source # show :: WriterT w m a -> String Source # showList :: [WriterT w m a] -> ShowS Source #
(Show w, Show1 m, Show a) => Show (WriterT w m a) |
Instance details Defined in Control.Monad.Trans.Writer.Strict Methods showsPrec :: Int -> WriterT w m a -> ShowS Source # show :: WriterT w m a -> String Source # showList :: [WriterT w m a] -> ShowS Source #
Show a => Show (Constant a b) |
Instance details Defined in Data.Functor.Constant Methods showsPrec :: Int -> Constant a b -> ShowS Source # show :: Constant a b -> String Source # showList :: [Constant a b] -> ShowS Source #
(Show1 f, Show a) => Show (Reverse f a) |
Instance details Defined in Data.Functor.Reverse Methods showsPrec :: Int -> Reverse f a -> ShowS Source # show :: Reverse f a -> String Source # showList :: [Reverse f a] -> ShowS Source #
(Show a, Show b, Show c) => Show (a, b, c) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c) -> ShowS Source # show :: (a, b, c) -> String Source # showList :: [(a, b, c)] -> ShowS Source #
(Show (f a), Show (g a)) => Show (Product f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Product Methods showsPrec :: Int -> Product f g a -> ShowS Source # show :: Product f g a -> String Source # showList :: [Product f g a] -> ShowS Source #
(Show (f a), Show (g a)) => Show (Sum f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Sum Methods showsPrec :: Int -> Sum f g a -> ShowS Source # show :: Sum f g a -> String Source # showList :: [Sum f g a] -> ShowS Source #
(Show (f p), Show (g p)) => Show ((f :*: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> (f :*: g) p -> ShowS Source # show :: (f :*: g) p -> String Source # showList :: [(f :*: g) p] -> ShowS Source #
(Show (f p), Show (g p)) => Show ((f :+: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> (f :+: g) p -> ShowS Source # show :: (f :+: g) p -> String Source # showList :: [(f :+: g) p] -> ShowS Source #
Show c => Show (K1 i c p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> K1 i c p -> ShowS Source # show :: K1 i c p -> String Source # showList :: [K1 i c p] -> ShowS Source #
(Show a, Show b, Show c, Show d) => Show (a, b, c, d) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d) -> ShowS Source # show :: (a, b, c, d) -> String Source # showList :: [(a, b, c, d)] -> ShowS Source #
Show (f (g a)) => Show (Compose f g a) | Since: base-4.18.0.0
Instance details Defined in Data.Functor.Compose Methods showsPrec :: Int -> Compose f g a -> ShowS Source # show :: Compose f g a -> String Source # showList :: [Compose f g a] -> ShowS Source #
Show (f a) => Show (Clown f a b) |
Instance details Defined in Data.Bifunctor.Clown Methods showsPrec :: Int -> Clown f a b -> ShowS Source # show :: Clown f a b -> String Source # showList :: [Clown f a b] -> ShowS Source #
Show (p b a) => Show (Flip p a b) |
Instance details Defined in Data.Bifunctor.Flip Methods showsPrec :: Int -> Flip p a b -> ShowS Source # show :: Flip p a b -> String Source # showList :: [Flip p a b] -> ShowS Source #
Show (g b) => Show (Joker g a b) |
Instance details Defined in Data.Bifunctor.Joker Methods showsPrec :: Int -> Joker g a b -> ShowS Source # show :: Joker g a b -> String Source # showList :: [Joker g a b] -> ShowS Source #
Show (p a b) => Show (WrappedBifunctor p a b) |
Instance details Defined in Data.Bifunctor.Wrapped Methods showsPrec :: Int -> WrappedBifunctor p a b -> ShowS Source # show :: WrappedBifunctor p a b -> String Source # showList :: [WrappedBifunctor p a b] -> ShowS Source #
Show (f (g p)) => Show ((f :.: g) p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> (f :.: g) p -> ShowS Source # show :: (f :.: g) p -> String Source # showList :: [(f :.: g) p] -> ShowS Source #
Show (f p) => Show (M1 i c f p) | Since: base-4.7.0.0
Instance details Defined in GHC.Internal.Generics Methods showsPrec :: Int -> M1 i c f p -> ShowS Source # show :: M1 i c f p -> String Source # showList :: [M1 i c f p] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e) => Show (a, b, c, d, e) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e) -> ShowS Source # show :: (a, b, c, d, e) -> String Source # showList :: [(a, b, c, d, e)] -> ShowS Source #
(Show (f a b), Show (g a b)) => Show (Product f g a b) |
Instance details Defined in Data.Bifunctor.Product Methods showsPrec :: Int -> Product f g a b -> ShowS Source # show :: Product f g a b -> String Source # showList :: [Product f g a b] -> ShowS Source #
(Show (p a b), Show (q a b)) => Show (Sum p q a b) |
Instance details Defined in Data.Bifunctor.Sum Methods showsPrec :: Int -> Sum p q a b -> ShowS Source # show :: Sum p q a b -> String Source # showList :: [Sum p q a b] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f) => Show (a, b, c, d, e, f) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f) -> ShowS Source # show :: (a, b, c, d, e, f) -> String Source # showList :: [(a, b, c, d, e, f)] -> ShowS Source #
Show (f (p a b)) => Show (Tannen f p a b) |
Instance details Defined in Data.Bifunctor.Tannen Methods showsPrec :: Int -> Tannen f p a b -> ShowS Source # show :: Tannen f p a b -> String Source # showList :: [Tannen f p a b] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g) => Show (a, b, c, d, e, f, g) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g) -> ShowS Source # show :: (a, b, c, d, e, f, g) -> String Source # showList :: [(a, b, c, d, e, f, g)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h) => Show (a, b, c, d, e, f, g, h) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h) -> ShowS Source # show :: (a, b, c, d, e, f, g, h) -> String Source # showList :: [(a, b, c, d, e, f, g, h)] -> ShowS Source #
Show (p (f a) (g b)) => Show (Biff p f g a b) |
Instance details Defined in Data.Bifunctor.Biff Methods showsPrec :: Int -> Biff p f g a b -> ShowS Source # show :: Biff p f g a b -> String Source # showList :: [Biff p f g a b] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i) => Show (a, b, c, d, e, f, g, h, i) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j) => Show (a, b, c, d, e, f, g, h, i, j) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k) => Show (a, b, c, d, e, f, g, h, i, j, k) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k, Show l) => Show (a, b, c, d, e, f, g, h, i, j, k, l) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k, l) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k, l) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k, l)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k, Show l, Show m) => Show (a, b, c, d, e, f, g, h, i, j, k, l, m) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k, l, m) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k, l, m) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k, Show l, Show m, Show n) => Show (a, b, c, d, e, f, g, h, i, j, k, l, m, n) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m, n)] -> ShowS Source #
(Show a, Show b, Show c, Show d, Show e, Show f, Show g, Show h, Show i, Show j, Show k, Show l, Show m, Show n, Show o) => Show (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) | Since: base-2.1
Instance details Defined in GHC.Internal.Show Methods showsPrec :: Int -> (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> ShowS Source # show :: (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) -> String Source # showList :: [(a, b, c, d, e, f, g, h, i, j, k, l, m, n, o)] -> ShowS Source #

tshow :: Show a => a -> Text Source #

tlshow :: Show a => a -> LText Source #

### Case conversion

charToLower :: Char -> Char Source #

Convert a character to lower case.

Character-based case conversion is lossy in comparison to string-based `toLower`. For instance, İ will be converted to i, instead of i̇.

charToUpper :: Char -> Char Source #

Convert a character to upper case.

Character-based case conversion is lossy in comparison to string-based `toUpper`. For instance, ß won't be converted to SS.

## IO

readFile :: MonadIO m => FilePath -> m ByteString Source #

Strictly read a file into a `ByteString`.

Since: 1.2.0

readFileUtf8 :: MonadIO m => FilePath -> m Text Source #

Strictly read a file into a `Text` using a UTF-8 character encoding. In the event of a character encoding error, a Unicode replacement character will be used (a.k.a., `lenientDecode`).

Since: 1.2.0

writeFile :: MonadIO m => FilePath -> ByteString -> m () Source #

Write a `ByteString` to a file.

Since: 1.2.0

writeFileUtf8 :: MonadIO m => FilePath -> Text -> m () Source #

Write a `Text` to a file using a UTF-8 character encoding.

Since: 1.2.0

hGetContents :: MonadIO m => Handle -> m ByteString Source #

Strictly read the contents of the given `Handle` into a `ByteString`.

Since: 1.2.0

hPut :: MonadIO m => Handle -> ByteString -> m () Source #

Write a `ByteString` to the given `Handle`.

Since: 1.2.0

hGetChunk :: MonadIO m => Handle -> m ByteString Source #

Read a single chunk of data as a `ByteString` from the given `Handle`.

Under the surface, this uses `hGetSome` with the default chunk size.

Since: 1.2.0

print :: (Show a, MonadIO m) => a -> m () Source #

putChar :: MonadIO m => Char -> m () Source #

Write a character to stdout

Uses system locale settings

Since: 1.3.1

putStr :: MonadIO m => Text -> m () Source #

Write a Text to stdout

Uses system locale settings

Since: 1.3.1

putStrLn :: MonadIO m => Text -> m () Source #

Write a Text followed by a newline to stdout

Uses system locale settings

Since: 1.3.1

getChar :: MonadIO m => m Char Source #

Read a character from stdin

Uses system locale settings

Since: 1.3.1

getLine :: MonadIO m => m Text Source #

Read a line from stdin

Uses system locale settings

Since: 1.3.1

getContents :: MonadIO m => m LText Source #

Read all input from stdin into a lazy Text (`LText`)

Uses system locale settings

Since: 1.3.1

interact :: MonadIO m => (LText -> LText) -> m () Source #

Takes a function of type 'LText -> LText' and passes all input on stdin to it, then prints result to stdout

Uses lazy IO Uses system locale settings

Since: 1.3.1

## Difference lists

data DList a Source #

A difference list is an abstraction representing a list that supports \(\mathcal{O}\)(`1`) `append` and `snoc` operations, making it useful for replacing frequent applications of `++` such as logging and pretty printing (esp. if those uses of `++` are left-nested).

#### Instances

Instances details

Alternative DList |
Instance details Defined in Data.DList.Internal Methods empty :: DList a Source # (<|>) :: DList a -> DList a -> DList a Source # some :: DList a -> DList [a] Source # many :: DList a -> DList [a] Source #
Applicative DList |
Instance details Defined in Data.DList.Internal Methods pure :: a -> DList a Source # (<*>) :: DList (a -> b) -> DList a -> DList b Source # liftA2 :: (a -> b -> c) -> DList a -> DList b -> DList c Source # (*>) :: DList a -> DList b -> DList b Source # (<*) :: DList a -> DList b -> DList a Source #
Functor DList |
Instance details Defined in Data.DList.Internal Methods fmap :: (a -> b) -> DList a -> DList b Source # (<$) :: a -> DList b -> DList a Source #
Monad DList |
Instance details Defined in Data.DList.Internal Methods (>>=) :: DList a -> (a -> DList b) -> DList b Source # (>>) :: DList a -> DList b -> DList b Source # return :: a -> DList a Source #
MonadPlus DList |
Instance details Defined in Data.DList.Internal Methods mzero :: DList a Source # mplus :: DList a -> DList a -> DList a Source #
MonadFail DList |
Instance details Defined in Data.DList.Internal Methods fail :: String -> DList a Source #
Foldable DList |

Instance details

Defined in Data.DList.Internal

Methods

fold :: Monoid m => DList m -> m Source #

foldMap :: Monoid m => (a -> m) -> DList a -> m Source #

foldMap' :: Monoid m => (a -> m) -> DList a -> m Source #

foldr :: (a -> b -> b) -> b -> DList a -> b Source #

foldr' :: (a -> b -> b) -> b -> DList a -> b Source #

foldl :: (b -> a -> b) -> b -> DList a -> b Source #

foldl' :: (b -> a -> b) -> b -> DList a -> b Source #

foldr1 :: (a -> a -> a) -> DList a -> a Source #

foldl1 :: (a -> a -> a) -> DList a -> a Source #

toList :: DList a -> [a] Source #

null :: DList a -> Bool Source #

length :: DList a -> Int Source #

elem :: Eq a => a -> DList a -> Bool Source #

maximum :: Ord a => DList a -> a Source #

minimum :: Ord a => DList a -> a Source #

sum :: Num a => DList a -> a Source #

product :: Num a => DList a -> a Source #

Traversable DList |
Instance details Defined in Data.DList.Internal Methods traverse :: Applicative f => (a -> f b) -> DList a -> f (DList b) Source # sequenceA :: Applicative f => DList (f a) -> f (DList a) Source # mapM :: Monad m => (a -> m b) -> DList a -> m (DList b) Source # sequence :: Monad m => DList (m a) -> m (DList a) Source #
NFData a => NFData (DList a) |
Instance details Defined in Data.DList.Internal Methods rnf :: DList a -> () Source #
Monoid (DList a) |
Instance details Defined in Data.DList.Internal Methods mempty :: DList a Source # mappend :: DList a -> DList a -> DList a Source # mconcat :: [DList a] -> DList a Source #
Semigroup (DList a) |
Instance details Defined in Data.DList.Internal Methods (<>) :: DList a -> DList a -> DList a Source # sconcat :: NonEmpty (DList a) -> DList a Source # stimes :: Integral b => b -> DList a -> DList a Source #
a ~ Char => IsString (DList a) |
Instance details Defined in Data.DList.Internal Methods fromString :: String -> DList a Source #
IsList (DList a) |

Instance details

Defined in Data.DList.Internal

Associated Types

type Item (DList a) |
Instance details Defined in Data.DList.Internal type Item (DList a) = a

Methods

fromList :: [Item (DList a)] -> DList a Source #

fromListN :: Int -> [Item (DList a)] -> DList a Source #

toList :: DList a -> [Item (DList a)] Source #

Read a => Read (DList a) |
Instance details Defined in Data.DList.Internal Methods readsPrec :: Int -> ReadS (DList a) Source # readList :: ReadS [DList a] Source # readPrec :: ReadPrec (DList a) Source # readListPrec :: ReadPrec [DList a] Source #
Show a => Show (DList a) |
Instance details Defined in Data.DList.Internal Methods showsPrec :: Int -> DList a -> ShowS Source # show :: DList a -> String Source # showList :: [DList a] -> ShowS Source #
Eq a => Eq (DList a) |
Instance details Defined in Data.DList.Internal Methods (==) :: DList a -> DList a -> Bool Source # (/=) :: DList a -> DList a -> Bool Source #
Ord a => Ord (DList a) |
Instance details Defined in Data.DList.Internal Methods compare :: DList a -> DList a -> Ordering Source # (<) :: DList a -> DList a -> Bool Source # (<=) :: DList a -> DList a -> Bool Source # (>) :: DList a -> DList a -> Bool Source # (>=) :: DList a -> DList a -> Bool Source # max :: DList a -> DList a -> DList a Source # min :: DList a -> DList a -> DList a Source #
GrowingAppend (DList a) |
Instance details Defined in Data.MonoTraversable.Instances
MonoFoldable (DList a) |

Instance details

Defined in Data.MonoTraversable.Instances

Methods

ofoldMap :: Monoid m => (Element (DList a) -> m) -> DList a -> m Source #

ofoldr :: (Element (DList a) -> b -> b) -> b -> DList a -> b Source #

ofoldl' :: (a0 -> Element (DList a) -> a0) -> a0 -> DList a -> a0 Source #

otoList :: DList a -> [Element (DList a)] Source #

oall :: (Element (DList a) -> Bool) -> DList a -> Bool Source #

oany :: (Element (DList a) -> Bool) -> DList a -> Bool Source #

onull :: DList a -> Bool Source #

olength :: DList a -> Int Source #

olength64 :: DList a -> Int64 Source #

ocompareLength :: Integral i => DList a -> i -> Ordering Source #

otraverse_ :: Applicative f => (Element (DList a) -> f b) -> DList a -> f () Source #

ofor_ :: Applicative f => DList a -> (Element (DList a) -> f b) -> f () Source #

omapM_ :: Applicative m => (Element (DList a) -> m ()) -> DList a -> m () Source #

oforM_ :: Applicative m => DList a -> (Element (DList a) -> m ()) -> m () Source #

ofoldlM :: Monad m => (a0 -> Element (DList a) -> m a0) -> a0 -> DList a -> m a0 Source #

ofoldMap1Ex :: Semigroup m => (Element (DList a) -> m) -> DList a -> m Source #

ofoldr1Ex :: (Element (DList a) -> Element (DList a) -> Element (DList a)) -> DList a -> Element (DList a) Source #

ofoldl1Ex' :: (Element (DList a) -> Element (DList a) -> Element (DList a)) -> DList a -> Element (DList a) Source #

headEx :: DList a -> Element (DList a) Source #

lastEx :: DList a -> Element (DList a) Source #

unsafeHead :: DList a -> Element (DList a) Source #

unsafeLast :: DList a -> Element (DList a) Source #

maximumByEx :: (Element (DList a) -> Element (DList a) -> Ordering) -> DList a -> Element (DList a) Source #

minimumByEx :: (Element (DList a) -> Element (DList a) -> Ordering) -> DList a -> Element (DList a) Source #

oelem :: Element (DList a) -> DList a -> Bool Source #

onotElem :: Element (DList a) -> DList a -> Bool Source #

MonoFunctor (DList a) |
Instance details Defined in Data.MonoTraversable.Instances Methods omap :: (Element (DList a) -> Element (DList a)) -> DList a -> DList a Source #
MonoPointed (DList a) |
Instance details Defined in Data.MonoTraversable.Instances Methods opoint :: Element (DList a) -> DList a Source #
MonoTraversable (DList a) |
Instance details Defined in Data.MonoTraversable.Instances Methods otraverse :: Applicative f => (Element (DList a) -> f (Element (DList a))) -> DList a -> f (DList a) Source # omapM :: Applicative m => (Element (DList a) -> m (Element (DList a))) -> DList a -> m (DList a) Source #
IsSequence (DList a) |

Instance details

Defined in Data.MonoTraversable.Instances

Methods

fromList :: [Element (DList a)] -> DList a Source #

lengthIndex :: DList a -> Index (DList a) Source #

break :: (Element (DList a) -> Bool) -> DList a -> (DList a, DList a) Source #

span :: (Element (DList a) -> Bool) -> DList a -> (DList a, DList a) Source #

dropWhile :: (Element (DList a) -> Bool) -> DList a -> DList a Source #

takeWhile :: (Element (DList a) -> Bool) -> DList a -> DList a Source #

splitAt :: Index (DList a) -> DList a -> (DList a, DList a) Source #

unsafeSplitAt :: Index (DList a) -> DList a -> (DList a, DList a) Source #

take :: Index (DList a) -> DList a -> DList a Source #

unsafeTake :: Index (DList a) -> DList a -> DList a Source #

drop :: Index (DList a) -> DList a -> DList a Source #

unsafeDrop :: Index (DList a) -> DList a -> DList a Source #

dropEnd :: Index (DList a) -> DList a -> DList a Source #

partition :: (Element (DList a) -> Bool) -> DList a -> (DList a, DList a) Source #

uncons :: DList a -> Maybe (Element (DList a), DList a) Source #

unsnoc :: DList a -> Maybe (DList a, Element (DList a)) Source #

filter :: (Element (DList a) -> Bool) -> DList a -> DList a Source #

filterM :: Monad m => (Element (DList a) -> m Bool) -> DList a -> m (DList a) Source #

replicate :: Index (DList a) -> Element (DList a) -> DList a Source #

replicateM :: Monad m => Index (DList a) -> m (Element (DList a)) -> m (DList a) Source #

groupBy :: (Element (DList a) -> Element (DList a) -> Bool) -> DList a -> [DList a] Source #

groupAllOn :: Eq b => (Element (DList a) -> b) -> DList a -> [DList a] Source #

subsequences :: DList a -> [DList a] Source #

permutations :: DList a -> [DList a] Source #

tailEx :: DList a -> DList a Source #

tailMay :: DList a -> Maybe (DList a) Source #

initEx :: DList a -> DList a Source #

initMay :: DList a -> Maybe (DList a) Source #

unsafeTail :: DList a -> DList a Source #

unsafeInit :: DList a -> DList a Source #

index :: DList a -> Index (DList a) -> Maybe (Element (DList a)) Source #

indexEx :: DList a -> Index (DList a) -> Element (DList a) Source #

unsafeIndex :: DList a -> Index (DList a) -> Element (DList a) Source #

splitWhen :: (Element (DList a) -> Bool) -> DList a -> [DList a] Source #

tails :: DList a -> [DList a] Source #

inits :: DList a -> [DList a] Source #

initTails :: DList a -> [(DList a, DList a)] Source #

SemiSequence (DList a) |

Instance details

Defined in Data.MonoTraversable.Instances

Associated Types

type Index (DList a) |
Instance details Defined in Data.MonoTraversable.Instances type Index (DList a) = Int

Methods

intersperse :: Element (DList a) -> DList a -> DList a Source #

reverse :: DList a -> DList a Source #

find :: (Element (DList a) -> Bool) -> DList a -> Maybe (Element (DList a)) Source #

sortBy :: (Element (DList a) -> Element (DList a) -> Ordering) -> DList a -> DList a Source #

cons :: Element (DList a) -> DList a -> DList a Source #

snoc :: DList a -> Element (DList a) -> DList a Source #

type Item (DList a) |
Instance details Defined in Data.DList.Internal type Item (DList a) = a
type Element (DList a) |
Instance details Defined in Data.MonoTraversable.Instances type Element (DList a) = a
type Index (DList a) |
Instance details Defined in Data.MonoTraversable.Instances type Index (DList a) = Int

asDList :: DList a -> DList a Source #

Force type to a `DList`

Since 0.11.0

applyDList :: DList a -> [a] -> [a] Source #

Synonym for `apply`

Since 0.11.0

## Exceptions

deepseq :: NFData a => a -> b -> b infixr 0 Source #

`deepseq`: fully evaluates the first argument, before returning the second.

The name `deepseq` is used to illustrate the relationship to `seq`: where `seq` is shallow in the sense that it only evaluates the top level of its argument, `deepseq` traverses the entire data structure evaluating it completely.

`deepseq` can be useful for forcing pending exceptions, eradicating space leaks, or forcing lazy I/O to happen. It is also useful in conjunction with parallel Strategies (see the `parallel` package).

There is no guarantee about the ordering of evaluation. The implementation may evaluate the components of the structure in any order or in parallel. To impose an actual order on evaluation, use `pseq` from Control.Parallel in the `parallel` package.

Since: deepseq-1.1.0.0

class NFData a where Source #

A class of types that can be fully evaluated.

Since: deepseq-1.1.0.0

Minimal complete definition

Nothing

Methods

rnf :: a -> () Source #

`rnf` should reduce its argument to normal form (that is, fully evaluate all sub-components), and then return `()`.

### `Generic` `NFData` deriving

Starting with GHC 7.2, you can automatically derive instances for types possessing a `Generic` instance.

Note: `Generic1` can be auto-derived starting with GHC 7.4

    {-# LANGUAGE DeriveGeneric #-}

    import GHC.Generics (Generic, Generic1)
    import Control.DeepSeq

    data Foo a = Foo a String
                 deriving (Eq, Generic, Generic1)

    instance NFData a => NFData (Foo a)
    instance NFData1 Foo

    data Colour = Red | Green | Blue
                  deriving Generic

    instance NFData Colour

Starting with GHC 7.10, the example above can be written more concisely by enabling the new `DeriveAnyClass` extension:

    {-# LANGUAGE DeriveGeneric, DeriveAnyClass #-}

    import GHC.Generics (Generic)
    import Control.DeepSeq

    data Foo a = Foo a String
                 deriving (Eq, Generic, Generic1, NFData, NFData1)

    data Colour = Red | Green | Blue
                  deriving (Generic, NFData)

### Compatibility with previous `deepseq` versions

Prior to version 1.4.0.0, the default implementation of the `rnf` method was defined as

    rnf a = seq a ()

However, starting with `deepseq-1.4.0.0`, the default implementation is based on `DefaultSignatures` allowing for more accurate auto-derived `NFData` instances. If you need the previously used exact default `rnf` method implementation semantics, use

    instance NFData Colour where rnf x = seq x ()

or alternatively

    instance NFData Colour where rnf = rwhnf

or

    {-# LANGUAGE BangPatterns #-}
    instance NFData Colour where rnf !_ = ()

default rnf :: (Generic a, GNFData Zero (Rep a)) => a -> () Source #

#### Instances

Instances details

NFData ByteArray | Since: deepseq-1.4.7.0
Instance details Defined in Control.DeepSeq Methods rnf :: ByteArray -> () Source #
NFData Buffer | Like the `NFData` instance for `StrictByteString`, this does not force the `ForeignPtrContents` field of the underlying `ForeignPtr`. Since: bytestring-0.12.2.0
Instance details Defined in Data.ByteString.Builder.Internal Methods rnf :: Buffer -> () Source #
NFData BufferRange | Since: bytestring-0.12.2.0
Instance details Defined in Data.ByteString.Builder.Internal Methods rnf :: BufferRange -> () Source #
NFData ByteString |
Instance details Defined in Data.ByteString.Internal.Type Methods rnf :: ByteString -> () Source #
NFData ByteString |
Instance details Defined in Data.ByteString.Lazy.Internal Methods rnf :: ByteString -> () Source #
NFData ShortByteString |
Instance details Defined in Data.ByteString.Short.Internal Methods rnf :: ShortByteString -> () Source #
NFData IntSet |
Instance details Defined in Data.IntSet.Internal Methods rnf :: IntSet -> () Source #
NFData Void | Defined as ``rnf` = `absurd``. Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Void -> () Source #
NFData ThreadId | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: ThreadId -> () Source #
NFData All | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: All -> () Source #
NFData Any | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Any -> () Source #
NFData TypeRep | NOTE: Prior to `deepseq-1.4.4.0` this instance was only defined for `base-4.8.0.0` and later. Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: TypeRep -> () Source #
NFData Unique | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Unique -> () Source #
NFData Version | Since: deepseq-1.3.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Version -> () Source #
NFData Fingerprint | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Fingerprint -> () Source #
NFData CBool | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods rnf :: CBool -> () Source #
NFData CChar | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CChar -> () Source #
NFData CClock | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CClock -> () Source #
NFData CDouble | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CDouble -> () Source #
NFData CFile | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CFile -> () Source #
NFData CFloat | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CFloat -> () Source #
NFData CFpos | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CFpos -> () Source #
NFData CInt | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CInt -> () Source #
NFData CIntMax | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CIntMax -> () Source #
NFData CIntPtr | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CIntPtr -> () Source #
NFData CJmpBuf | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CJmpBuf -> () Source #
NFData CLLong | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CLLong -> () Source #
NFData CLong | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CLong -> () Source #
NFData CPtrdiff | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CPtrdiff -> () Source #
NFData CSChar | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CSChar -> () Source #
NFData CSUSeconds | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CSUSeconds -> () Source #
NFData CShort | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CShort -> () Source #
NFData CSigAtomic | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CSigAtomic -> () Source #
NFData CSize | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CSize -> () Source #
NFData CTime | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CTime -> () Source #
NFData CUChar | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CUChar -> () Source #
NFData CUInt | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CUInt -> () Source #
NFData CUIntMax | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CUIntMax -> () Source #
NFData CUIntPtr | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CUIntPtr -> () Source #
NFData CULLong | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CULLong -> () Source #
NFData CULong | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CULong -> () Source #
NFData CUSeconds | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CUSeconds -> () Source #
NFData CUShort | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CUShort -> () Source #
NFData CWchar | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: CWchar -> () Source #
NFData MaskingState | Since: deepseq-1.4.4.0
Instance details Defined in Control.DeepSeq Methods rnf :: MaskingState -> () Source #
NFData ExitCode | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: ExitCode -> () Source #
NFData Int16 |
Instance details Defined in Control.DeepSeq Methods rnf :: Int16 -> () Source #
NFData Int32 |
Instance details Defined in Control.DeepSeq Methods rnf :: Int32 -> () Source #
NFData Int64 |
Instance details Defined in Control.DeepSeq Methods rnf :: Int64 -> () Source #
NFData Int8 |
Instance details Defined in Control.DeepSeq Methods rnf :: Int8 -> () Source #
NFData CallStack | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: CallStack -> () Source #
NFData SrcLoc | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: SrcLoc -> () Source #
NFData Word16 |
Instance details Defined in Control.DeepSeq Methods rnf :: Word16 -> () Source #
NFData Word32 |
Instance details Defined in Control.DeepSeq Methods rnf :: Word32 -> () Source #
NFData Word64 |
Instance details Defined in Control.DeepSeq Methods rnf :: Word64 -> () Source #
NFData Word8 |
Instance details Defined in Control.DeepSeq Methods rnf :: Word8 -> () Source #
NFData Module | Since: deepseq-1.4.8.0
Instance details Defined in Control.DeepSeq Methods rnf :: Module -> () Source #
NFData Ordering |
Instance details Defined in Control.DeepSeq Methods rnf :: Ordering -> () Source #
NFData TyCon | NOTE: Prior to `deepseq-1.4.4.0` this instance was only defined for `base-4.8.0.0` and later. Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: TyCon -> () Source #
NFData UnicodeException |
Instance details Defined in Data.Text.Encoding.Error Methods rnf :: UnicodeException -> () Source #
NFData Text |
Instance details Defined in Data.Text Methods rnf :: Text -> () Source #
NFData Text |
Instance details Defined in Data.Text.Lazy Methods rnf :: Text -> () Source #
NFData Day |
Instance details Defined in Data.Time.Calendar.Days Methods rnf :: Day -> () Source #
NFData Month |
Instance details Defined in Data.Time.Calendar.Month Methods rnf :: Month -> () Source #
NFData Quarter |
Instance details Defined in Data.Time.Calendar.Quarter Methods rnf :: Quarter -> () Source #
NFData QuarterOfYear |
Instance details Defined in Data.Time.Calendar.Quarter Methods rnf :: QuarterOfYear -> () Source #
NFData DiffTime |
Instance details Defined in Data.Time.Clock.Internal.DiffTime Methods rnf :: DiffTime -> () Source #
NFData UTCTime |
Instance details Defined in Data.Time.Clock.Internal.UTCTime Methods rnf :: UTCTime -> () Source #
NFData LocalTime |
Instance details Defined in Data.Time.LocalTime.Internal.LocalTime Methods rnf :: LocalTime -> () Source #
NFData ZonedTime |
Instance details Defined in Data.Time.LocalTime.Internal.ZonedTime Methods rnf :: ZonedTime -> () Source #
NFData Integer |
Instance details Defined in Control.DeepSeq Methods rnf :: Integer -> () Source #
NFData Natural | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Natural -> () Source #
NFData () |
Instance details Defined in Control.DeepSeq Methods rnf :: () -> () Source #
NFData Bool |
Instance details Defined in Control.DeepSeq Methods rnf :: Bool -> () Source #
NFData Char |
Instance details Defined in Control.DeepSeq Methods rnf :: Char -> () Source #
NFData Double |
Instance details Defined in Control.DeepSeq Methods rnf :: Double -> () Source #
NFData Float |
Instance details Defined in Control.DeepSeq Methods rnf :: Float -> () Source #
NFData Int |
Instance details Defined in Control.DeepSeq Methods rnf :: Int -> () Source #
NFData Word |
Instance details Defined in Control.DeepSeq Methods rnf :: Word -> () Source #
NFData (MutableByteArray s) | Since: deepseq-1.4.8.0
Instance details Defined in Control.DeepSeq Methods rnf :: MutableByteArray s -> () Source #
NFData a => NFData (Complex a) |
Instance details Defined in Control.DeepSeq Methods rnf :: Complex a -> () Source #
NFData a => NFData (First a) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: First a -> () Source #
NFData a => NFData (Last a) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: Last a -> () Source #
NFData a => NFData (Max a) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: Max a -> () Source #
NFData a => NFData (Min a) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: Min a -> () Source #
NFData m => NFData (WrappedMonoid m) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: WrappedMonoid m -> () Source #
NFData a => NFData (SCC a) |
Instance details Defined in Data.Graph Methods rnf :: SCC a -> () Source #
NFData a => NFData (IntMap a) |
Instance details Defined in Data.IntMap.Internal Methods rnf :: IntMap a -> () Source #
NFData a => NFData (Digit a) |
Instance details Defined in Data.Sequence.Internal Methods rnf :: Digit a -> () Source #
NFData a => NFData (Elem a) |
Instance details Defined in Data.Sequence.Internal Methods rnf :: Elem a -> () Source #
NFData a => NFData (FingerTree a) |
Instance details Defined in Data.Sequence.Internal Methods rnf :: FingerTree a -> () Source #
NFData a => NFData (Node a) |
Instance details Defined in Data.Sequence.Internal Methods rnf :: Node a -> () Source #
NFData a => NFData (Seq a) |
Instance details Defined in Data.Sequence.Internal Methods rnf :: Seq a -> () Source #
NFData a => NFData (Set a) |
Instance details Defined in Data.Set.Internal Methods rnf :: Set a -> () Source #
NFData a => NFData (Tree a) |
Instance details Defined in Data.Tree Methods rnf :: Tree a -> () Source #
NFData a => NFData (DList a) |
Instance details Defined in Data.DList.Internal Methods rnf :: DList a -> () Source #
NFData a => NFData (NonEmpty a) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: NonEmpty a -> () Source #
NFData a => NFData (Identity a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Identity a -> () Source #
NFData a => NFData (First a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: First a -> () Source #
NFData a => NFData (Last a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Last a -> () Source #
NFData a => NFData (Down a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Down a -> () Source #
NFData a => NFData (Dual a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Dual a -> () Source #
NFData a => NFData (Product a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Product a -> () Source #
NFData a => NFData (Sum a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Sum a -> () Source #
NFData a => NFData (ZipList a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: ZipList a -> () Source #
NFData (IORef a) | NOTE: Only strict in the reference and not the referenced value. Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: IORef a -> () Source #
NFData (MVar a) | NOTE: Only strict in the reference and not the referenced value. Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: MVar a -> () Source #
NFData (FunPtr a) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: FunPtr a -> () Source #
NFData (Ptr a) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: Ptr a -> () Source #
NFData a => NFData (Ratio a) |
Instance details Defined in Control.DeepSeq Methods rnf :: Ratio a -> () Source #
NFData (StableName a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: StableName a -> () Source #
NFData a => NFData (Hashed a) |
Instance details Defined in Data.Hashable.Class Methods rnf :: Hashed a -> () Source #
NFData a => NFData (Array a) |
Instance details Defined in Data.Primitive.Array Methods rnf :: Array a -> () Source #
NFData (PrimArray a) |
Instance details Defined in Data.Primitive.PrimArray Methods rnf :: PrimArray a -> () Source #
NFData a => NFData (SmallArray a) |
Instance details Defined in Data.Primitive.SmallArray Methods rnf :: SmallArray a -> () Source #
NFData a => NFData (Array a) |
Instance details Defined in Data.HashMap.Internal.Array Methods rnf :: Array a -> () Source #
NFData a => NFData (HashSet a) |
Instance details Defined in Data.HashSet.Internal Methods rnf :: HashSet a -> () Source #
NFData a => NFData (Vector a) |
Instance details Defined in Data.Vector Methods rnf :: Vector a -> () Source #
NFData (Vector a) |
Instance details Defined in Data.Vector.Primitive Methods rnf :: Vector a -> () Source #
NFData (Vector a) |
Instance details Defined in Data.Vector.Storable Methods rnf :: Vector a -> () Source #
NFData a => NFData (Vector a) |
Instance details Defined in Data.Vector.Strict Methods rnf :: Vector a -> () Source #
NFData (Vector a) |
Instance details Defined in Data.Vector.Unboxed.Base Methods rnf :: Vector a -> () Source #
NFData a => NFData (Maybe a) |
Instance details Defined in Control.DeepSeq Methods rnf :: Maybe a -> () Source #
NFData a => NFData (Solo a) | Since: deepseq-1.4.6.0
Instance details Defined in Control.DeepSeq Methods rnf :: Solo a -> () Source #
NFData a => NFData [a] |
Instance details Defined in Control.DeepSeq Methods rnf :: [a] -> () Source #
NFData (Fixed a) | Since: deepseq-1.3.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Fixed a -> () Source #
(NFData a, NFData b) => NFData (Arg a b) | Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: Arg a b -> () Source #
(NFData k, NFData a) => NFData (Map k a) |
Instance details Defined in Data.Map.Internal Methods rnf :: Map k a -> () Source #
(NFData a, NFData b) => NFData (Array a b) |
Instance details Defined in Control.DeepSeq Methods rnf :: Array a b -> () Source #
(NFData a, NFData b) => NFData (Either a b) |
Instance details Defined in Control.DeepSeq Methods rnf :: Either a b -> () Source #
NFData (Proxy a) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Proxy a -> () Source #
NFData (TypeRep a) | Since: deepseq-1.4.8.0
Instance details Defined in Control.DeepSeq Methods rnf :: TypeRep a -> () Source #
NFData (STRef s a) | NOTE: Only strict in the reference and not the referenced value. Since: deepseq-1.4.2.0
Instance details Defined in Control.DeepSeq Methods rnf :: STRef s a -> () Source #
NFData (MutablePrimArray s a) |
Instance details Defined in Data.Primitive.PrimArray Methods rnf :: MutablePrimArray s a -> () Source #
(NFData k, NFData v) => NFData (HashMap k v) |
Instance details Defined in Data.HashMap.Internal Methods rnf :: HashMap k v -> () Source #
(NFData k, NFData v) => NFData (Leaf k v) |
Instance details Defined in Data.HashMap.Internal Methods rnf :: Leaf k v -> () Source #
NFData (MVector s a) |
Instance details Defined in Data.Vector.Primitive.Mutable Methods rnf :: MVector s a -> () Source #
NFData (MVector s a) |
Instance details Defined in Data.Vector.Storable.Mutable Methods rnf :: MVector s a -> () Source #
NFData (MVector s a) |
Instance details Defined in Data.Vector.Unboxed.Base Methods rnf :: MVector s a -> () Source #
(NFData a, NFData b) => NFData (a, b) |
Instance details Defined in Control.DeepSeq Methods rnf :: (a, b) -> () Source #
NFData (a -> b) | This instance is for convenience and consistency with `seq`. This assumes that WHNF is equivalent to NF for functions. Since: deepseq-1.3.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: (a -> b) -> () Source #
NFData a => NFData (Const a b) | Since: deepseq-1.4.0.0
Instance details Defined in Control.DeepSeq Methods rnf :: Const a b -> () Source #
NFData (a :~: b) | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods rnf :: (a :~: b) -> () Source #
NFData b => NFData (Tagged s b) |
Instance details Defined in Data.Tagged Methods rnf :: Tagged s b -> () Source #
(NFData a1, NFData a2, NFData a3) => NFData (a1, a2, a3) |
Instance details Defined in Control.DeepSeq Methods rnf :: (a1, a2, a3) -> () Source #
(NFData (f a), NFData (g a)) => NFData (Product f g a) | Note: in `deepseq-1.5.0.0` this instance's superclasses were changed. Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods rnf :: Product f g a -> () Source #
(NFData (f a), NFData (g a)) => NFData (Sum f g a) | Note: in `deepseq-1.5.0.0` this instance's superclasses were changed. Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods rnf :: Sum f g a -> () Source #
NFData (a :~~: b) | Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods rnf :: (a :~~: b) -> () Source #
(NFData a1, NFData a2, NFData a3, NFData a4) => NFData (a1, a2, a3, a4) |
Instance details Defined in Control.DeepSeq Methods rnf :: (a1, a2, a3, a4) -> () Source #
NFData (f (g a)) => NFData (Compose f g a) | Note: in `deepseq-1.5.0.0` this instance's superclasses were changed. Since: deepseq-1.4.3.0
Instance details Defined in Control.DeepSeq Methods rnf :: Compose f g a -> () Source #
(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5) => NFData (a1, a2, a3, a4, a5) |
Instance details Defined in Control.DeepSeq Methods rnf :: (a1, a2, a3, a4, a5) -> () Source #
(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6) => NFData (a1, a2, a3, a4, a5, a6) |
Instance details Defined in Control.DeepSeq Methods rnf :: (a1, a2, a3, a4, a5, a6) -> () Source #
(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7) => NFData (a1, a2, a3, a4, a5, a6, a7) |
Instance details Defined in Control.DeepSeq Methods rnf :: (a1, a2, a3, a4, a5, a6, a7) -> () Source #
(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7, NFData a8) => NFData (a1, a2, a3, a4, a5, a6, a7, a8) |
Instance details Defined in Control.DeepSeq Methods rnf :: (a1, a2, a3, a4, a5, a6, a7, a8) -> () Source #
(NFData a1, NFData a2, NFData a3, NFData a4, NFData a5, NFData a6, NFData a7, NFData a8, NFData a9) => NFData (a1, a2, a3, a4, a5, a6, a7, a8, a9) |
Instance details Defined in Control.DeepSeq Methods rnf :: (a1, a2, a3, a4, a5, a6, a7, a8, a9) -> () Source #

($!!) :: NFData a => (a -> b) -> a -> b infixr 0 Source #

the deep analogue of `$!`. In the expression `f $!! x`, `x` is fully evaluated before the function `f` is applied to it.

Since: deepseq-1.2.0.0

force :: NFData a => a -> a Source #

a variant of `deepseq` that is useful in some circumstances:

    force x = x `deepseq` x

`force x` fully evaluates `x`, and then returns it. Note that `force x` only performs evaluation when the value of `force x` itself is demanded, so essentially it turns shallow evaluation into deep evaluation.

`force` can be conveniently used in combination with `ViewPatterns`:

    {-# LANGUAGE BangPatterns, ViewPatterns #-}
    import Control.DeepSeq

    someFun :: ComplexData -> SomeResult
    someFun (force -> !arg) = {- 'arg' will be fully evaluated -}

Another useful application is to combine `force` with `evaluate` in order to force deep evaluation relative to other `IO` operations:

    import Control.Exception (evaluate)
    import Control.DeepSeq

    main = do
      result <- evaluate $ force $ pureComputation
      {- 'result' will be fully evaluated at this point -}
      return ()

Finally, here's an exception safe variant of the `readFile'` example:

    readFile' :: FilePath -> IO String
    readFile' fn = bracket (openFile fn ReadMode) hClose $ \h ->
                           evaluate . force =<< hGetContents h

Since: deepseq-1.2.0.0

## Force types

Helper functions for situations where type inferer gets confused.

asByteString :: ByteString -> ByteString Source #

asLByteString :: LByteString -> LByteString Source #

asHashMap :: HashMap k v -> HashMap k v Source #

asHashSet :: HashSet a -> HashSet a Source #

asText :: Text -> Text Source #

asLText :: LText -> LText Source #

asList :: [a] -> [a] Source #

asMap :: Map k v -> Map k v Source #

asIntMap :: IntMap v -> IntMap v Source #

asMaybe :: Maybe a -> Maybe a Source #

asSet :: Set a -> Set a Source #

asIntSet :: IntSet -> IntSet Source #

asVector :: Vector a -> Vector a Source #

asUVector :: UVector a -> UVector a Source #

asSVector :: SVector a -> SVector a Source #

asString :: [Char] -> [Char] Source #