License | BSD3 |
---|---|
Maintainer | Alexey Karakulov <ankarakulov@gmail.com> |
Safe Haskell | Safe |
Language | Haskell2010 |
Data.Hashable.Time
Contents
Description
Synopsis
- class Hashable a where
- hashWithSalt :: Int -> a -> Int
- hash :: a -> Int
Documentation
class Hashable a where Source #
The class of types that can be converted to a hash value.
Minimal implementation: hashWithSalt
.
Minimal complete definition
Nothing
Methods
hashWithSalt :: Int -> a -> Int infixl 0 Source #
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 thehashWithSalt
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 thehashWithSalt
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.
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.
Instances
Hashable Bool | |
Defined in Data.Hashable.Class | |
Hashable Char | |
Defined in Data.Hashable.Class | |
Hashable Double | Note: prior to The Since: hashable-1.3.0.0 |
Defined in Data.Hashable.Class | |
Hashable Float | Note: prior to The Since: hashable-1.3.0.0 |
Defined in Data.Hashable.Class | |
Hashable Int | |
Defined in Data.Hashable.Class | |
Hashable Int8 | |
Defined in Data.Hashable.Class | |
Hashable Int16 | |
Defined in Data.Hashable.Class | |
Hashable Int32 | |
Defined in Data.Hashable.Class | |
Hashable Int64 | |
Defined in Data.Hashable.Class | |
Hashable Integer | |
Defined in Data.Hashable.Class | |
Hashable Natural | |
Defined in Data.Hashable.Class | |
Hashable Ordering | |
Defined in Data.Hashable.Class | |
Hashable Word | |
Defined in Data.Hashable.Class | |
Hashable Word8 | |
Defined in Data.Hashable.Class | |
Hashable Word16 | |
Defined in Data.Hashable.Class | |
Hashable Word32 | |
Defined in Data.Hashable.Class | |
Hashable Word64 | |
Defined in Data.Hashable.Class | |
Hashable SomeTypeRep | |
Defined in Data.Hashable.Class | |
Hashable () | |
Defined in Data.Hashable.Class | |
Hashable Day Source # | |
Defined in Data.Hashable.Time | |
Hashable DiffTime Source # | |
Defined in Data.Hashable.Time | |
Hashable NominalDiffTime Source # | |
Defined in Data.Hashable.Time | |
Hashable UTCTime Source # | |
Defined in Data.Hashable.Time | |
Hashable UniversalTime Source # | |
Defined in Data.Hashable.Time | |
Hashable TimeLocale Source # | |
Defined in Data.Hashable.Time | |
Hashable LocalTime Source # | |
Defined in Data.Hashable.Time | |
Hashable TimeOfDay Source # | |
Defined in Data.Hashable.Time | |
Hashable TimeZone Source # | |
Defined in Data.Hashable.Time | |
Hashable ZonedTime Source # | |
Defined in Data.Hashable.Time | |
Hashable Text | |
Defined in Data.Hashable.Class | |
Hashable ByteString | |
Defined in Data.Hashable.Class | |
Hashable ByteString | |
Defined in Data.Hashable.Class | |
Hashable Text | |
Defined in Data.Hashable.Class | |
Hashable BigNat | |
Defined in Data.Hashable.Class | |
Hashable Fingerprint | Since: hashable-1.3.0.0 |
Defined in Data.Hashable.Class | |
Hashable IntPtr | |
Defined in Data.Hashable.Class | |
Hashable ShortByteString | |
Defined in Data.Hashable.Class | |
Hashable ThreadId | |
Defined in Data.Hashable.Class | |
Hashable Unique | |
Defined in Data.Hashable.Class | |
Hashable Version | |
Defined in Data.Hashable.Class | |
Hashable Void | |
Defined in Data.Hashable.Class | |
Hashable WordPtr | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable [a] | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Maybe a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Ratio a) | |
Defined in Data.Hashable.Class | |
Hashable (Ptr a) | |
Defined in Data.Hashable.Class | |
Hashable (FunPtr a) | |
Defined in Data.Hashable.Class | |
Hashable (Hashed a) | |
Defined in Data.Hashable.Class | |
Hashable (Fixed a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (NonEmpty a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Identity a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Complex a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (First a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Last a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Max a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Min a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Option a) | |
Defined in Data.Hashable.Class | |
Hashable (StableName a) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (WrappedMonoid a) | |
Defined in Data.Hashable.Class | |
(Hashable a, Hashable b) => Hashable (Either a b) | |
Defined in Data.Hashable.Class | |
Hashable (TypeRep a) | |
Defined in Data.Hashable.Class | |
(Hashable a1, Hashable a2) => Hashable (a1, a2) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Arg a b) | Note: Prior to Since: hashable-1.3.0.0 |
Defined in Data.Hashable.Class | |
Hashable (Proxy a) | |
Defined in Data.Hashable.Class | |
(Hashable a1, Hashable a2, Hashable a3) => Hashable (a1, a2, a3) | |
Defined in Data.Hashable.Class | |
Hashable a => Hashable (Const a b) | |
Defined in Data.Hashable.Class | |
(Hashable a1, Hashable a2, Hashable a3, Hashable a4) => Hashable (a1, a2, a3, a4) | |
Defined in Data.Hashable.Class | |
(Hashable1 f, Hashable1 g, Hashable a) => Hashable (Product f g a) | |
Defined in Data.Hashable.Class | |
(Hashable1 f, Hashable1 g, Hashable a) => Hashable (Sum f g a) | |
Defined in Data.Hashable.Class | |
(Hashable a1, Hashable a2, Hashable a3, Hashable a4, Hashable a5) => Hashable (a1, a2, a3, a4, a5) | |
Defined in Data.Hashable.Class | |
(Hashable1 f, Hashable1 g, Hashable a) => Hashable (Compose f g a) | In general, |
Defined in Data.Hashable.Class | |
(Hashable a1, Hashable a2, Hashable a3, Hashable a4, Hashable a5, Hashable a6) => Hashable (a1, a2, a3, a4, a5, a6) | |
Defined in Data.Hashable.Class | |
(Hashable a1, Hashable a2, Hashable a3, Hashable a4, Hashable a5, Hashable a6, Hashable a7) => Hashable (a1, a2, a3, a4, a5, a6, a7) | |
Defined in Data.Hashable.Class |