Hello community, here is the log from the commit of package ghc-proxied for openSUSE:Factory checked in at 2017-08-31 20:58:03 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/ghc-proxied (Old) and /work/SRC/openSUSE:Factory/.ghc-proxied.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "ghc-proxied" Thu Aug 31 20:58:03 2017 rev:2 rq:513457 version:0.3 Changes: -------- --- /work/SRC/openSUSE:Factory/ghc-proxied/ghc-proxied.changes 2016-11-15 17:57:09.000000000 +0100 +++ /work/SRC/openSUSE:Factory/.ghc-proxied.new/ghc-proxied.changes 2017-08-31 20:58:04.725799520 +0200 @@ -1,0 +2,5 @@ +Thu Jul 27 14:07:02 UTC 2017 - [email protected] + +- Update to version 0.3. + +------------------------------------------------------------------- Old: ---- proxied-0.2.tar.gz New: ---- proxied-0.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ ghc-proxied.spec ++++++ --- /var/tmp/diff_new_pack.VtArbQ/_old 2017-08-31 20:58:05.401704554 +0200 +++ /var/tmp/diff_new_pack.VtArbQ/_new 2017-08-31 20:58:05.405703992 +0200 @@ -1,7 +1,7 @@ # # spec file for package ghc-proxied # -# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,20 +18,16 @@ %global pkg_name proxied Name: ghc-%{pkg_name} -Version: 0.2 +Version: 0.3 Release: 0 Summary: Make functions consume Proxy instead of undefined License: BSD-3-Clause -Group: System/Libraries +Group: Development/Languages/Other Url: https://hackage.haskell.org/package/%{pkg_name} Source0: https://hackage.haskell.org/package/%{pkg_name}-%{version}/%{pkg_name}-%{version}.tar.gz BuildRequires: ghc-Cabal-devel -# Begin cabal-rpm deps: -BuildRequires: ghc-generic-deriving-devel BuildRequires: ghc-rpm-macros -BuildRequires: ghc-tagged-devel BuildRoot: %{_tmppath}/%{name}-%{version}-build -# End cabal-rpm deps %description 'proxied' is a simple library that exports a function to convert constant @@ -70,15 +66,12 @@ %prep %setup -q -n %{pkg_name}-%{version} - %build %ghc_lib_build - %install %ghc_lib_install - %post devel %ghc_pkg_recache ++++++ proxied-0.2.tar.gz -> proxied-0.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/CHANGELOG.md new/proxied-0.3/CHANGELOG.md --- old/proxied-0.2/CHANGELOG.md 2016-04-17 00:57:59.000000000 +0200 +++ new/proxied-0.3/CHANGELOG.md 2017-04-04 16:04:59.000000000 +0200 @@ -1,3 +1,14 @@ +## 0.3 +* Update for GHC 8.2 + * Since `typeRep#`, `typeNatTypeRep`, and `typeSymbolTypeRep` are no longer + exported from `base`, `theTypeRep#`, `theTypeNatTypeRep`, and + `theTypeSymbolTypeRep` are now synonyms for `theTypeRep` + * Happily, the new type signature for `GHC.OverloadedLabels.fromLabel` is now + exactly the same as `theFromLabel`, so the latter is now a synonym for the + former +* Use explicit kind variable binders in `Data.Proxyless` +* Use explicit `forall`s in `Data.Proxied` for consistency + ## 0.2 * Added the `Data.Proxyless` module * Added `proxyHashed` to `Data.Proxied` diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/LICENSE new/proxied-0.3/LICENSE --- old/proxied-0.2/LICENSE 2016-04-17 00:57:59.000000000 +0200 +++ new/proxied-0.3/LICENSE 2017-04-04 16:04:59.000000000 +0200 @@ -1,4 +1,4 @@ -Copyright (c) 2016, Ryan Scott +Copyright (c) 2016-2017, Ryan Scott All rights reserved. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/README.md new/proxied-0.3/README.md --- old/proxied-0.2/README.md 2016-04-17 00:57:59.000000000 +0200 +++ new/proxied-0.3/README.md 2017-04-04 16:04:59.000000000 +0200 @@ -19,4 +19,4 @@ `Proxy`, however, does not carry any of the error-throwing risks of `undefined`, so it is much more preferable to take `Proxy` as an argument to a constant function instead of `undefined`. Unfortunately, `Proxy` was included in `base` until GHC 7.8, so many of `base`'s typeclasses still contain constant functions that aren't amenable to passing `Proxy`. `proxied` addresses this issue by providing variants of those typeclass functions that take an explicit `proxy` value. -This library also contains the "Data.Proxyless" module, which works in the opposite direction. That is, one can take functions which take `Proxy` (or `undefined`) as an argument and convert them to functions which take no arguments. This trick relies on the `-XTypeApplications` extension, so it is only available with GHC 8.0 or later. +This library also contains the `Data.Proxyless` module, which works in the opposite direction. That is, one can take functions which take `Proxy` (or `undefined`) as an argument and convert them to functions which take no arguments. This trick relies on the `-XTypeApplications` extension, so it is only available with GHC 8.0 or later. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/proxied.cabal new/proxied-0.3/proxied.cabal --- old/proxied-0.2/proxied.cabal 2016-04-17 00:57:59.000000000 +0200 +++ new/proxied-0.3/proxied.cabal 2017-04-04 16:04:59.000000000 +0200 @@ -1,5 +1,5 @@ name: proxied -version: 0.2 +version: 0.3 synopsis: Make functions consume Proxy instead of undefined description: @proxied@ is a simple library that exports a function to convert constant functions to ones that take a @proxy@ @@ -34,7 +34,7 @@ author: Ryan Scott maintainer: Ryan Scott <[email protected]> stability: Provisional -copyright: (C) 2016 Ryan Scott +copyright: (C) 2016-2017 Ryan Scott category: Data build-type: Simple tested-with: GHC == 7.0.4 @@ -43,7 +43,8 @@ , GHC == 7.6.3 , GHC == 7.8.4 , GHC == 7.10.3 - , GHC == 8.0.1 + , GHC == 8.0.2 + , GHC == 8.2.1 extra-source-files: CHANGELOG.md, README.md cabal-version: >=1.10 @@ -56,8 +57,10 @@ if impl(ghc >= 8.0) exposed-modules: Data.Proxyless build-depends: base >= 4.3 && < 5 - , generic-deriving >= 1.10.1 && < 2 - , tagged >= 0.4.4 && < 1 + if !impl(ghc >= 7.6) + build-depends: generic-deriving >= 1.10.1 && < 2 + if !impl(ghc >= 7.8) + build-depends: tagged >= 0.4.4 && < 1 hs-source-dirs: src default-language: Haskell2010 ghc-options: -Wall diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/src/Data/Proxied.hs new/proxied-0.3/src/Data/Proxied.hs --- old/proxied-0.2/src/Data/Proxied.hs 2016-04-17 00:57:59.000000000 +0200 +++ new/proxied-0.3/src/Data/Proxied.hs 2017-04-04 16:04:59.000000000 +0200 @@ -1,6 +1,7 @@ {-# LANGUAGE CPP #-} {-# LANGUAGE KindSignatures #-} {-# LANGUAGE MagicHash #-} +{-# LANGUAGE ScopedTypeVariables #-} #if __GLASGOW_HASKELL__ >= 702 {-# LANGUAGE Trustworthy #-} @@ -14,7 +15,7 @@ {-| Module: Data.Proxied -Copyright: (C) 2016 Ryan Scott +Copyright: (C) 2016-2017 Ryan Scott License: BSD-style (see the file LICENSE) Maintainer: Ryan Scott Stability: Provisional @@ -81,8 +82,12 @@ import Foreign.Storable (Storable(..)) +#if MIN_VERSION_base(4,6,0) +import GHC.Generics +#else import Generics.Deriving.Base import Generics.Deriving.Instances () +#endif #if MIN_VERSION_base(4,7,0) import Data.Bits (FiniteBits(..)) @@ -93,7 +98,7 @@ -- | Converts a constant function to one that takes a @proxy@ argument. -- -- /Since: 0.1/ -proxied :: (a -> b) -> proxy a -> b +proxied :: forall proxy a b. (a -> b) -> proxy a -> b proxied f _ = f undefined #if MIN_VERSION_base(4,7,0) @@ -101,7 +106,7 @@ -- This function is only available with @base-4.7@ or later. -- -- /Since: 0.2/ -proxyHashed :: (a -> b) -> Proxy# a -> b +proxyHashed :: forall a b. (a -> b) -> Proxy# a -> b proxyHashed f _ = f undefined #endif @@ -110,7 +115,7 @@ -- but it's here for symmetry.) -- -- /Since: 0.1/ -unproxied :: (Proxy a -> b) -> a -> b +unproxied :: forall a b. (Proxy a -> b) -> a -> b unproxied f _ = f Proxy ------------------------------------------------------------------------------- @@ -120,13 +125,13 @@ -- | @'bitSizeProxied' = 'proxied' 'bitSize'@ -- -- /Since: 0.1/ -bitSizeProxied :: Bits a => proxy a -> Int +bitSizeProxied :: forall proxy a. Bits a => proxy a -> Int bitSizeProxied = proxied bitSize -- | @'isSignedProxied' = 'proxied' 'isSigned'@ -- -- /Since: 0.1/ -isSignedProxied :: Bits a => proxy a -> Bool +isSignedProxied :: forall proxy a. Bits a => proxy a -> Bool isSignedProxied = proxied isSigned #if MIN_VERSION_base(4,7,0) @@ -135,7 +140,7 @@ -- This function is only available with @base-4.7@ or later. -- -- /Since: 0.1/ -bitSizeMaybeProxied :: Bits a => proxy a -> Maybe Int +bitSizeMaybeProxied :: forall proxy a. Bits a => proxy a -> Maybe Int bitSizeMaybeProxied = proxied bitSizeMaybe -- | @'finiteBitSizeProxied' = 'proxied' 'finiteBitSize'@ @@ -143,7 +148,7 @@ -- This function is only available with @base-4.7@ or later. -- -- /Since: 0.1/ -finiteBitSizeProxied :: FiniteBits a => proxy a -> Int +finiteBitSizeProxied :: forall proxy a. FiniteBits a => proxy a -> Int finiteBitSizeProxied = proxied finiteBitSize #endif @@ -154,7 +159,7 @@ -- | @'dataTypeOfProxied' = 'proxied' 'dataTypeOf'@ -- -- /Since: 0.1/ -dataTypeOfProxied :: Data a => proxy a -> DataType +dataTypeOfProxied :: forall proxy a. Data a => proxy a -> DataType dataTypeOfProxied = proxied dataTypeOf ------------------------------------------------------------------------------- @@ -166,7 +171,13 @@ -- On @base-4.7@ and later, this is identical to 'typeRep'. -- -- /Since: 0.1/ -typeOfProxied :: Typeable a => proxy a -> TypeRep +typeOfProxied :: forall proxy +#if MIN_VERSION_base(4,7,0) + (a :: k) +#else + a +#endif + . Typeable a => proxy a -> TypeRep #if MIN_VERSION_base(4,7,0) typeOfProxied = typeRep #else @@ -180,29 +191,33 @@ -- | @'sizeOfProxied' = 'proxied' 'sizeOf'@ -- -- /Since: 0.1/ -sizeOfProxied :: Storable a => proxy a -> Int +sizeOfProxied :: forall proxy a. Storable a => proxy a -> Int sizeOfProxied = proxied sizeOf -- | @'alignmentProxied' = 'proxied' 'alignment'@ -- -- /Since: 0.1/ -alignmentProxied :: Storable a => proxy a -> Int +alignmentProxied :: forall proxy a. Storable a => proxy a -> Int alignmentProxied = proxied alignment ------------------------------------------------------------------------------- -- GHC.Generics ------------------------------------------------------------------------------- -#if MIN_VERSION_base(4,9,0) -# define T_TYPE(t) (t :: k -> (* -> *) -> * -> *) +#define GENERIC_FORALL(t,letter) forall proxy T_TYPE(t) letter f a + +#if MIN_VERSION_base(4,10,0) +# define T_TYPE(t) (t :: k1 -> (k2 -> *) -> k2 -> *) +#elif MIN_VERSION_base(4,9,0) +# define T_TYPE(t) (t :: k1 -> (* -> *) -> k2 -> *) #else -# define T_TYPE(t) (t :: * -> (* -> *) -> * -> *) +# define T_TYPE(t) (t :: * -> (* -> *) -> * -> *) #endif -- | @'datatypeNameProxied' = 'proxied' 'datatypeName'@ -- -- /Since: 0.1/ -datatypeNameProxied :: Datatype d +datatypeNameProxied :: GENERIC_FORALL(t,d). Datatype d => proxy (T_TYPE(t) d f a) -> [Char] datatypeNameProxied = proxied datatypeName @@ -210,7 +225,7 @@ -- | @'moduleNameProxied' = 'proxied' 'moduleName'@ -- -- /Since: 0.1/ -moduleNameProxied :: Datatype d +moduleNameProxied :: GENERIC_FORALL(t,d). Datatype d => proxy (T_TYPE(t) d f a) -> [Char] moduleNameProxied = proxied moduleName @@ -221,7 +236,7 @@ -- This function is only available with @base-4.7@ or later. -- -- /Since: 0.1/ -isNewtypeProxied :: Datatype d +isNewtypeProxied :: GENERIC_FORALL(t,d). Datatype d => proxy (T_TYPE(t) d f a) -> Bool isNewtypeProxied = proxied isNewtype @@ -233,7 +248,7 @@ -- This function is only avaiable with @base-4.9@ or later. -- -- /Since: 0.1/ -packageNameProxied :: Datatype d +packageNameProxied :: GENERIC_FORALL(t,d). Datatype d => proxy (T_TYPE(t) d f a) -> [Char] packageNameProxied = proxied packageName @@ -242,7 +257,7 @@ -- | @'conNameProxied' = 'proxied' 'conName'@ -- -- /Since: 0.1/ -conNameProxied :: Constructor c +conNameProxied :: GENERIC_FORALL(t,c). Constructor c => proxy (T_TYPE(t) c f a) -> [Char] conNameProxied = proxied conName @@ -250,7 +265,7 @@ -- | @'conFixityProxied' = 'proxied' 'conFixity'@ -- -- /Since: 0.1/ -conFixityProxied :: Constructor c +conFixityProxied :: GENERIC_FORALL(t,c). Constructor c => proxy (T_TYPE(t) c f a) -> Fixity conFixityProxied = proxied conFixity @@ -258,7 +273,7 @@ -- | @'conIsRecordProxied' = 'proxied' 'conIsRecord'@ -- -- /Since: 0.1/ -conIsRecordProxied :: Constructor c +conIsRecordProxied :: GENERIC_FORALL(t,c). Constructor c => proxy (T_TYPE(t) c f a) -> Bool conIsRecordProxied = proxied conIsRecord @@ -266,7 +281,7 @@ -- | @'selNameProxied' = 'proxied' 'selName'@ -- -- /Since: 0.1/ -selNameProxied :: Selector s +selNameProxied :: GENERIC_FORALL(t,s). Selector s => proxy (T_TYPE(t) s f a) -> [Char] selNameProxied = proxied selName @@ -277,7 +292,7 @@ -- This function is only available with @base-4.9@ or later. -- -- /Since: 0.1/ -selSourceUnpackednessProxied :: Selector s +selSourceUnpackednessProxied :: GENERIC_FORALL(t,s). Selector s => proxy (T_TYPE(t) s f a) -> SourceUnpackedness selSourceUnpackednessProxied = proxied selSourceUnpackedness @@ -287,7 +302,7 @@ -- This function is only available with @base-4.9@ or later. -- -- /Since: 0.1/ -selSourceStrictnessProxied :: Selector s +selSourceStrictnessProxied :: GENERIC_FORALL(t,s). Selector s => proxy (T_TYPE(t) s f a) -> SourceStrictness selSourceStrictnessProxied = proxied selSourceStrictness @@ -297,7 +312,7 @@ -- This function is only available with @base-4.9@ or later. -- -- /Since: 0.1/ -selDecidedStrictnessProxied :: Selector s +selDecidedStrictnessProxied :: GENERIC_FORALL(t,s). Selector s => proxy (T_TYPE(t) s f a) -> DecidedStrictness selDecidedStrictnessProxied = proxied selDecidedStrictness @@ -310,19 +325,19 @@ -- | @'floatRadixProxied' = 'proxied' 'floatRadix'@ -- -- /Since: 0.1/ -floatRadixProxied :: RealFloat a => proxy a -> Integer +floatRadixProxied :: forall proxy a. RealFloat a => proxy a -> Integer floatRadixProxied = proxied floatRadix -- | @'floatDigitsProxied' = 'proxied' 'floatDigits'@ -- -- /Since: 0.1/ -floatDigitsProxied :: RealFloat a => proxy a -> Int +floatDigitsProxied :: forall proxy a. RealFloat a => proxy a -> Int floatDigitsProxied = proxied floatDigits -- | @'floatRangeProxied' = 'proxied' 'floatRange'@ -- -- /Since: 0.1/ -floatRangeProxied :: RealFloat a => proxy a -> (Int, Int) +floatRangeProxied :: forall proxy a. RealFloat a => proxy a -> (Int, Int) floatRangeProxied = proxied floatRange ------------------------------------------------------------------------------- @@ -335,6 +350,6 @@ -- This function is only available with @base-4.7@ or later. -- -- /Since: 0.1/ -parseFormatProxied :: PrintfArg a => proxy a -> ModifierParser +parseFormatProxied :: forall proxy a. PrintfArg a => proxy a -> ModifierParser parseFormatProxied = proxied parseFormat #endif diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/proxied-0.2/src/Data/Proxyless.hs new/proxied-0.3/src/Data/Proxyless.hs --- old/proxied-0.2/src/Data/Proxyless.hs 2016-04-17 00:57:59.000000000 +0200 +++ new/proxied-0.3/src/Data/Proxyless.hs 2017-04-04 16:04:59.000000000 +0200 @@ -1,19 +1,23 @@ {-# LANGUAGE AllowAmbiguousTypes #-} +{-# LANGUAGE CPP #-} {-# LANGUAGE MagicHash #-} {-# LANGUAGE PolyKinds #-} {-# LANGUAGE Trustworthy #-} {-# LANGUAGE ScopedTypeVariables #-} {-# LANGUAGE TypeApplications #-} +{-# LANGUAGE TypeInType #-} {-# LANGUAGE TypeOperators #-} -{-# LANGUAGE ViewPatterns #-} - {-# OPTIONS_GHC -Wno-deprecations #-} + +#if __GLASGOW_HASKELL__ == 800 \ + && __GLASGOW_HASKELL_PATCHLEVEL1__ == 1 {-# OPTIONS_GHC -Wno-type-defaults #-} -- Needed due to GHC Trac #11947 +#endif {-| Module: Data.Proxyless -Copyright: (C) 2016 Ryan Scott +Copyright: (C) 2016-2017 Ryan Scott License: BSD-style (see the file LICENSE) Maintainer: Ryan Scott Stability: Provisional @@ -80,10 +84,13 @@ ) where import Data.Bits (Bits(..), FiniteBits(..)) -import Data.Data hiding (Fixity) +import Data.Data (Data(dataTypeOf), DataType) import Data.Proxy (Proxy(..)) import Data.Type.Equality ((:~:)) -import Data.Typeable.Internal (Typeable(..), typeNatTypeRep, typeSymbolTypeRep) +import Data.Typeable (Typeable, TypeRep, typeRep) +#if !(MIN_VERSION_base(4,10,0)) +import Data.Typeable.Internal (typeRep#, typeNatTypeRep, typeSymbolTypeRep) +#endif import Foreign.Storable (Storable(..)) @@ -98,14 +105,14 @@ -- doesn't require an argument. -- -- /Since: 0.2/ -proxyless :: forall a b. (Proxy a -> b) -> b +proxyless :: forall k (a :: k) b. (Proxy a -> b) -> b proxyless f = f Proxy -- | Converts a constant function that takes a 'Proxy#' argument to one that -- doesn't require an argument. -- -- /Since: 0.2/ -proxyHashless :: forall a b. (Proxy# a -> b) -> b +proxyHashless :: forall k (a :: k) b. (Proxy# a -> b) -> b proxyHashless f = f proxy# -- | Converts a constant function that takes an 'undefined' argument to one that @@ -159,27 +166,48 @@ -- | @'theTypeNatTypeRep' = 'proxyHashless' 'typeNatTypeRep'@ -- +-- Note that in @base-4.10@ and later, 'theTypeNatTypeRep' is simply a synonym +-- for 'theTypeRep', as 'typeNatTypeRep' is no longer exported. +-- -- /Since: 0.2/ theTypeNatTypeRep :: forall a. KnownNat a => TypeRep -theTypeNatTypeRep = proxyHashless @a typeNatTypeRep +#if MIN_VERSION_base(4,10,0) +theTypeNatTypeRep = theTypeRep @_ @a +#else +theTypeNatTypeRep = proxyHashless @_ @a typeNatTypeRep +#endif -- | @'theTypeRep' = 'proxyless' 'typeRep'@ -- -- /Since: 0.2/ -theTypeRep :: forall a. Typeable a => TypeRep -theTypeRep = proxyless @a typeRep +theTypeRep :: forall k (a :: k). Typeable a => TypeRep +theTypeRep = proxyless @_ @a typeRep -- | @'theTypeRep#' = 'proxyHashless' 'typeRep#'@ -- +-- Note that in @base-4.10@ and later, 'theTypeRep#' is simply a synonym for +-- 'theTypeRep', as 'typeRep#' is no longer exported. +-- -- /Since: 0.2/ -theTypeRep# :: forall a. Typeable a => TypeRep -theTypeRep# = proxyHashless @a typeRep# +theTypeRep# :: forall k (a :: k). Typeable a => TypeRep +#if MIN_VERSION_base(4,10,0) +theTypeRep# = theTypeRep @k @a +#else +theTypeRep# = proxyHashless @_ @a typeRep# +#endif -- | @'theTypeSymbolTypeRep' = 'proxyHashless' 'typeSymbolTypeRep'@ -- +-- Note that in @base-4.10@ and later, 'theTypeSymbolTypeRep' is simply a +-- synonym for 'theTypeRep', as 'typeSymbolTypeRep' is no longer exported. +-- -- /Since: 0.2/ theTypeSymbolTypeRep :: forall a. KnownSymbol a => TypeRep -theTypeSymbolTypeRep = proxyHashless @a typeSymbolTypeRep +#if MIN_VERSION_base(4,10,0) +theTypeSymbolTypeRep = theTypeRep @_ @a +#else +theTypeSymbolTypeRep = proxyHashless @_ @a typeSymbolTypeRep +#endif ------------------------------------------------------------------------------- -- Foreign.Storable @@ -204,78 +232,85 @@ -- | @'theDatatypeName' = 'datatypeName' 'undefined'@ -- -- /Since: 0.2/ -theDatatypeName :: forall d. Datatype d => [Char] +theDatatypeName :: forall k (d :: k). Datatype d => [Char] theDatatypeName = datatypeName @d undefined -- | @'theModuleName' = 'moduleName' 'undefined'@ -- -- /Since: 0.2/ -theModuleName :: forall d. Datatype d => [Char] +theModuleName :: forall k (d :: k). Datatype d => [Char] theModuleName = moduleName @d undefined -- | @'theIsNewtype' = 'isNewtype' 'undefined'@ -- -- /Since: 0.2/ -theIsNewtype :: forall d. Datatype d => Bool +theIsNewtype :: forall k (d :: k). Datatype d => Bool theIsNewtype = isNewtype @d undefined -- | @'thePackageName' = 'packageName' 'undefined'@ -- -- /Since: 0.2/ -thePackageName :: forall d. Datatype d => [Char] +thePackageName :: forall k (d :: k). Datatype d => [Char] thePackageName = packageName @d undefined -- | @'theConName' = 'conName' 'undefined'@ -- -- /Since: 0.2/ -theConName :: forall c. Constructor c => [Char] +theConName :: forall k (c :: k). Constructor c => [Char] theConName = conName @c undefined -- | @'theConFixity' = 'conFixity' 'undefined'@ -- -- /Since: 0.2/ -theConFixity :: forall c. Constructor c => Fixity +theConFixity :: forall k (c :: k). Constructor c => Fixity theConFixity = conFixity @c undefined -- | @'theConIsRecord' = 'conIsRecord' 'undefined'@ -- -- /Since: 0.2/ -theConIsRecord :: forall c. Constructor c => Bool +theConIsRecord :: forall k (c :: k). Constructor c => Bool theConIsRecord = conIsRecord @c undefined -- | @'theSelName' = 'selName' 'undefined'@ -- -- /Since: 0.2/ -theSelName :: forall s. Selector s => [Char] +theSelName :: forall k (s :: k). Selector s => [Char] theSelName = selName @s undefined -- | @'theSelSourceUnpackedness' = 'selSourceUnpackedness' 'undefined'@ -- -- /Since: 0.2/ -theSelSourceUnpackedness :: forall s. Selector s => SourceUnpackedness +theSelSourceUnpackedness :: forall k (s :: k). Selector s => SourceUnpackedness theSelSourceUnpackedness = selSourceUnpackedness @s undefined -- | @'theSelSourceStrictness' = 'selSourceStrictness' 'undefined'@ -- -- /Since: 0.2/ -theSelSourceStrictness :: forall s. Selector s => SourceStrictness +theSelSourceStrictness :: forall k (s :: k). Selector s => SourceStrictness theSelSourceStrictness = selSourceStrictness @s undefined -- | @'theSelDecidedStrictness' = 'selDecidedStrictness' 'undefined'@ -- -- /Since: 0.2/ -theSelDecidedStrictness :: forall s. Selector s => DecidedStrictness +theSelDecidedStrictness :: forall k (s :: k). Selector s => DecidedStrictness theSelDecidedStrictness = selDecidedStrictness @s undefined ------------------------------------------------------------------------------- -- GHC.Generics ------------------------------------------------------------------------------- --- | @'theFromLabel' = 'proxyHashless' 'fromLabel'@ +-- | In @base-4.10@ and later, this is simply a synonym for 'fromLabel'. +-- In @base-4.9@, 'theFromLabel' is defined as: +-- +-- @'theFromLabel' = 'proxyHashless' 'fromLabel'@ -- -- /Since: 0.2/ theFromLabel :: forall x a. IsLabel x a => a -theFromLabel = proxyHashless @x fromLabel +#if MIN_VERSION_base(4,10,0) +theFromLabel = fromLabel @x +#else +theFromLabel = proxyHashless @_ @x fromLabel +#endif ------------------------------------------------------------------------------- -- GHC.TypeLits @@ -285,13 +320,13 @@ -- -- /Since: 0.2/ theNatVal :: forall n. KnownNat n => Integer -theNatVal = proxyless @n natVal +theNatVal = proxyless @_ @n natVal -- | @`theNatVal'` = 'proxyHashless' `natVal'`@ -- -- /Since: 0.2/ theNatVal' :: forall n. KnownNat n => Integer -theNatVal' = proxyHashless @n natVal' +theNatVal' = proxyHashless @_ @n natVal' -- | @'theSameNat' = 'sameNat' 'Proxy' 'Proxy'@ -- @@ -309,25 +344,25 @@ -- -- /Since: 0.2/ theSomeNat :: forall n. KnownNat n => SomeNat -theSomeNat = proxyless @n SomeNat +theSomeNat = proxyless @_ @n SomeNat -- | @'theSomeSymbol' = 'proxyless' 'SomeSymbol'@ -- -- /Since: 0.2/ theSomeSymbol :: forall n. KnownSymbol n => SomeSymbol -theSomeSymbol = proxyless @n SomeSymbol +theSomeSymbol = proxyless @_ @n SomeSymbol -- | @'theSymbolVal' = 'proxyless' 'symbolVal'@ -- -- /Since: 0.2/ theSymbolVal :: forall n. KnownSymbol n => String -theSymbolVal = proxyless @n symbolVal +theSymbolVal = proxyless @_ @n symbolVal -- | @`theSymbolVal'` = 'proxyHashless' `symbolVal'`@ -- -- /Since: 0.2/ theSymbolVal' :: forall n. KnownSymbol n => String -theSymbolVal' = proxyHashless @n symbolVal' +theSymbolVal' = proxyHashless @_ @n symbolVal' ------------------------------------------------------------------------------- -- Prelude
