-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/
-- | Hashable instances for Data.Time
--
-- Hashable instances for types in Data.Time
@package hashable-time
@version 0.2.1
module Data.Hashable.Time
-- | The class of types that can be converted to a hash value.
--
-- Minimal implementation: hashWithSalt.
class Hashable a
-- | 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 :: Hashable a => Int -> a -> Int
-- | 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.
hash :: Hashable a => a -> Int
infixl 0 `hashWithSalt`
instance Data.Hashable.Class.Hashable Data.Time.Clock.Internal.UniversalTime.UniversalTime
instance Data.Hashable.Class.Hashable Data.Time.Clock.Internal.DiffTime.DiffTime
instance Data.Hashable.Class.Hashable Data.Time.Clock.Internal.UTCTime.UTCTime
instance Data.Hashable.Class.Hashable Data.Time.Clock.Internal.NominalDiffTime.NominalDiffTime
instance Data.Hashable.Class.Hashable Data.Time.Calendar.Days.Day
instance Data.Hashable.Class.Hashable Data.Time.Calendar.Month.Compat.Month
instance Data.Hashable.Class.Hashable Data.Time.Calendar.Quarter.Compat.Quarter
instance Data.Hashable.Class.Hashable Data.Time.Calendar.Week.DayOfWeek
instance Data.Hashable.Class.Hashable Data.Time.Calendar.Quarter.Compat.QuarterOfYear
instance Data.Hashable.Class.Hashable Data.Time.LocalTime.Internal.TimeZone.TimeZone
instance Data.Hashable.Class.Hashable Data.Time.LocalTime.Internal.TimeOfDay.TimeOfDay
instance Data.Hashable.Class.Hashable Data.Time.LocalTime.Internal.LocalTime.LocalTime
instance Data.Hashable.Class.Hashable Data.Time.LocalTime.Internal.ZonedTime.ZonedTime
instance Data.Hashable.Class.Hashable Data.Time.Format.Locale.TimeLocale