Metadata revisions for base-feature-macros-0.1

Package maintainers and Hackage trustees are allowed to edit certain bits of package metadata after a release, without uploading a new tarball. Note that the tarball itself is never changed, just the metadata that is stored separately. For more information about metadata revisions, please refer to the Hackage Metadata Revisions FAQ.

No. Time User SHA256
-r1 2017-05-13T08:39:39Z HerbertValerioRiedel d92172580179ae9338cb58504d1b05c058ce0d593ef4f67a88dbef842f693ae6
  • Changed description from

    This provides a set of feature macros describing features of @base@ in a semantic way.
    
    See <src/base-feature-macros.h base-feature-macros.h> for set of currently provided macros.
    
    In order to use the CPP header provided by this package, add this package as a dependency to your @.cabal@ file, i.e.
    
    > build-depends: base-feature-macros: >= 0.1 && < 0.2
    
    while making sure that the version specified as lower bound defines the feature-macros your code tests for. This is particularly important as CPP will implicitly treat undefined CPP macros as having the value @0@. See also GNU CPP/CC's @-Wundef@ warning to detect such errors.
    
    Then in your code, you can include and use the @\<base-feature-macros.h\>@ header like so
    
    > module M where
    >
    > #include <base-feature-macros.h>
    >
    > #if !HAVE_FOLDABLE_TRAVERSABLE_IN_PRELUDE
    > import Data.Foldable (Foldable (..))
    > import Prelude       hiding (foldr, foldr1)
    > #endif
    > #if !HAVE_MONOID_IN_PRELUDE
    > import Data.Monoid hiding ((<>))
    > #endif
    
    This package is inspired by the blogpost
    <https://github.com/quchen/articles/blob/master/haskell-cpp-compatibility.md "Make macros mean something – readable backwards compatibility with CPP">.
    to
    This provides a set of feature macros describing features of @base@ in a semantic way.
    
    See <base-feature-macros/src/base-feature-macros.h base-feature-macros.h> for set of currently provided macros.
    
    In order to use the CPP header provided by this package, add this package as a dependency to your @.cabal@ file, i.e.
    
    > build-depends: base-feature-macros: >= 0.1 && < 0.2
    
    while making sure that the version specified as lower bound defines the feature-macros your code tests for. This is particularly important as CPP will implicitly treat undefined CPP macros as having the value @0@. See also GNU CPP/CC's @-Wundef@ warning to detect such errors.
    
    Then in your code, you can include and use the @\<base-feature-macros.h\>@ header like so
    
    > module M where
    >
    > #include <base-feature-macros.h>
    >
    > #if !HAVE_FOLDABLE_TRAVERSABLE_IN_PRELUDE
    > import Data.Foldable (Foldable (..))
    > import Prelude       hiding (foldr, foldr1)
    > #endif
    > #if !HAVE_MONOID_IN_PRELUDE
    > import Data.Monoid hiding ((<>))
    > #endif
    
    This package is inspired by the blogpost
    <https://github.com/quchen/articles/blob/master/haskell-cpp-compatibility.md "Make macros mean something – readable backwards compatibility with CPP">.

-r0 2017-05-13T08:38:44Z HerbertValerioRiedel 0caa11c2380414556663ebf85a284549a75f3306eed071ca9d4833b50fc46558