-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Hydrogen Version Type
--
-- A sane replacement for Data.Version from the base
-- package.
--
-- Hydrogen.Version is also exported by Hydrogen.Prelude
-- where it comes with a few more instances (e.g. for
-- Data.Serialize).
--
--
-- >>> Differences to Data.Version
--
--
--
-- - Sane Ord instance Data.Version
-- relies on Ord for lists, which will consider 1.0 to be
-- less than 1.0.0. Hydrogen.Version considers these to
-- be equal.
-- - Sane Read and Show instances With
-- Hydrogen.Version you can just do read "1.0.0" ::
-- Version, whereas the Read and Show instances for
-- Data.Version do not give a concise representation:
--
--
--
-- show hydrogenVersion == "1.0.0"
-- show dataVersion == "Version versionBranch = [1,0,0], versionTags = []"
--
--
--
-- - Stricter API In Hydrogen.Version you can
-- create a Version only via mkVersion, whereas in
-- Data.Version the constructor is exported, thus you could so
-- such nonsense as Data.Version.Version [] [] (which is not a
-- proper version at all).
-- - No Tags Hydrogen.Version does not support
-- tags. This is intentional, since there is no agreed upon definition
-- for Ord in the presence of tags (consider alpha vs
-- beta vs snapshot vs ga vs ...).
--
@package hydrogen-version
@version 1.3
module Hydrogen.Version
data Version
mkVersion :: Integer -> Integer -> Integer -> Version
refineVersion :: Version -> Integer -> Version
majorVersion :: Version -> Integer
minorVersion :: Version -> Integer
patchVersion :: Version -> Integer
tailVersion :: Version -> [Integer]
fromDataVersion :: Version -> Version
toDataVersion :: Version -> Version
instance Typeable Version
instance Generic Version
instance Datatype D1Version
instance Constructor C1_0Version
instance Read Version
instance Show Version
instance Ord Version
instance Eq Version