Hoogle Search

Within LTS Haskell 24.52 (ghc-9.10.3)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. takeAll :: (ParserSource input, Sequential (Chunk input)) => Parser input (Chunk input)

    foundation Foundation.Parser

    Take the remaining elements from the current position in the stream

  2. timeBytesAllocated :: Timing -> !Maybe Word64

    foundation Foundation.Timing

    No documentation available.

  3. newtype Generically a

    generic-data Generic.Data

    A datatype whose instances are defined generically, using the Generic representation. Generically1 is a higher-kinded version of Generically that uses Generic1. Generic instances can be derived via Generically A using -XDerivingVia.

    {-# LANGUAGE DeriveGeneric      #-}
    {-# LANGUAGE DerivingStrategies #-}
    {-# LANGUAGE DerivingVia        #-}
    
    import GHC.Generics (Generic)
    
    data V4 a = V4 a a a a
    deriving stock Generic
    
    deriving (Semigroup, Monoid)
    via Generically (V4 a)
    
    This corresponds to Semigroup and Monoid instances defined by pointwise lifting:
    instance Semigroup a => Semigroup (V4 a) where
    (<>) :: V4 a -> V4 a -> V4 a
    V4 a1 b1 c1 d1 <> V4 a2 b2 c2 d2 =
    V4 (a1 <> a2) (b1 <> b2) (c1 <> c2) (d1 <> d2)
    
    instance Monoid a => Monoid (V4 a) where
    mempty :: V4 a
    mempty = V4 mempty mempty mempty mempty
    
    Historically this required modifying the type class to include generic method definitions (-XDefaultSignatures) and deriving it with the anyclass strategy (-XDeriveAnyClass). Having a /via type/ like Generically decouples the instance from the type class.

  4. Generically :: a -> Generically a

    generic-data Generic.Data

    No documentation available.

  5. newtype Generically1 (f :: k -> Type) (a :: k)

    generic-data Generic.Data

    A type whose instances are defined generically, using the Generic1 representation. Generically1 is a higher-kinded version of Generically that uses Generic. Generic instances can be derived for type constructors via Generically1 F using -XDerivingVia.

    {-# LANGUAGE DeriveGeneric      #-}
    {-# LANGUAGE DerivingStrategies #-}
    {-# LANGUAGE DerivingVia        #-}
    
    import GHC.Generics (Generic)
    
    data V4 a = V4 a a a a
    deriving stock (Functor, Generic1)
    
    deriving Applicative
    via Generically1 V4
    
    This corresponds to Applicative instances defined by pointwise lifting:
    instance Applicative V4 where
    pure :: a -> V4 a
    pure a = V4 a a a a
    
    liftA2 :: (a -> b -> c) -> (V4 a -> V4 b -> V4 c)
    liftA2 (·) (V4 a1 b1 c1 d1) (V4 a2 b2 c2 d2) =
    V4 (a1 · a2) (b1 · b2) (c1 · c2) (d1 · d2)
    
    Historically this required modifying the type class to include generic method definitions (-XDefaultSignatures) and deriving it with the anyclass strategy (-XDeriveAnyClass). Having a /via type/ like Generically1 decouples the instance from the type class.

  6. module Generic.Data.Internal.Generically

    Newtypes with instances implemented using generic combinators.

    Warning

    This is an internal module: it is not subject to any versioning policy, breaking changes can happen at any time. If something here seems useful, please report it or create a pull request to export it from an external module.

  7. newtype Generically a

    generic-data Generic.Data.Internal.Generically

    A datatype whose instances are defined generically, using the Generic representation. Generically1 is a higher-kinded version of Generically that uses Generic1. Generic instances can be derived via Generically A using -XDerivingVia.

    {-# LANGUAGE DeriveGeneric      #-}
    {-# LANGUAGE DerivingStrategies #-}
    {-# LANGUAGE DerivingVia        #-}
    
    import GHC.Generics (Generic)
    
    data V4 a = V4 a a a a
    deriving stock Generic
    
    deriving (Semigroup, Monoid)
    via Generically (V4 a)
    
    This corresponds to Semigroup and Monoid instances defined by pointwise lifting:
    instance Semigroup a => Semigroup (V4 a) where
    (<>) :: V4 a -> V4 a -> V4 a
    V4 a1 b1 c1 d1 <> V4 a2 b2 c2 d2 =
    V4 (a1 <> a2) (b1 <> b2) (c1 <> c2) (d1 <> d2)
    
    instance Monoid a => Monoid (V4 a) where
    mempty :: V4 a
    mempty = V4 mempty mempty mempty mempty
    
    Historically this required modifying the type class to include generic method definitions (-XDefaultSignatures) and deriving it with the anyclass strategy (-XDeriveAnyClass). Having a /via type/ like Generically decouples the instance from the type class.

  8. Generically :: a -> Generically a

    generic-data Generic.Data.Internal.Generically

    No documentation available.

  9. newtype Generically1 (f :: k -> Type) (a :: k)

    generic-data Generic.Data.Internal.Generically

    A type whose instances are defined generically, using the Generic1 representation. Generically1 is a higher-kinded version of Generically that uses Generic. Generic instances can be derived for type constructors via Generically1 F using -XDerivingVia.

    {-# LANGUAGE DeriveGeneric      #-}
    {-# LANGUAGE DerivingStrategies #-}
    {-# LANGUAGE DerivingVia        #-}
    
    import GHC.Generics (Generic)
    
    data V4 a = V4 a a a a
    deriving stock (Functor, Generic1)
    
    deriving Applicative
    via Generically1 V4
    
    This corresponds to Applicative instances defined by pointwise lifting:
    instance Applicative V4 where
    pure :: a -> V4 a
    pure a = V4 a a a a
    
    liftA2 :: (a -> b -> c) -> (V4 a -> V4 b -> V4 c)
    liftA2 (·) (V4 a1 b1 c1 d1) (V4 a2 b2 c2 d2) =
    V4 (a1 · a2) (b1 · b2) (c1 · c2) (d1 · d2)
    
    Historically this required modifying the type class to include generic method definitions (-XDefaultSignatures) and deriving it with the anyclass strategy (-XDeriveAnyClass). Having a /via type/ like Generically1 decouples the instance from the type class.

  10. newtype Generically a

    generic-data Generic.Data.Microsurgery

    A datatype whose instances are defined generically, using the Generic representation. Generically1 is a higher-kinded version of Generically that uses Generic1. Generic instances can be derived via Generically A using -XDerivingVia.

    {-# LANGUAGE DeriveGeneric      #-}
    {-# LANGUAGE DerivingStrategies #-}
    {-# LANGUAGE DerivingVia        #-}
    
    import GHC.Generics (Generic)
    
    data V4 a = V4 a a a a
    deriving stock Generic
    
    deriving (Semigroup, Monoid)
    via Generically (V4 a)
    
    This corresponds to Semigroup and Monoid instances defined by pointwise lifting:
    instance Semigroup a => Semigroup (V4 a) where
    (<>) :: V4 a -> V4 a -> V4 a
    V4 a1 b1 c1 d1 <> V4 a2 b2 c2 d2 =
    V4 (a1 <> a2) (b1 <> b2) (c1 <> c2) (d1 <> d2)
    
    instance Monoid a => Monoid (V4 a) where
    mempty :: V4 a
    mempty = V4 mempty mempty mempty mempty
    
    Historically this required modifying the type class to include generic method definitions (-XDefaultSignatures) and deriving it with the anyclass strategy (-XDeriveAnyClass). Having a /via type/ like Generically decouples the instance from the type class.

Page 681 of many | Previous | Next