heapwords-0.1.0.2: Heapwords
Safe HaskellSafe-Inferred
LanguageHaskell2010

Cardano.HeapWords

Synopsis

Documentation

class HeapWords a where Source #

Size in the heap of values, in words (to get the size in bytes multiply by 4 on a 32-bit machine or 8 on a 64-bit machine)

Methods

heapWords ∷ a → Int Source #

Instances

Instances details
HeapWords Word32 Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsWord32Int Source #

HeapWords Word64 Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsWord64Int Source #

HeapWords Word8 Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsWord8Int Source #

HeapWords ByteString Source # 
Instance details

Defined in Cardano.HeapWords

HeapWords ByteString Source # 
Instance details

Defined in Cardano.HeapWords

HeapWords ShortByteString Source # 
Instance details

Defined in Cardano.HeapWords

HeapWords IntSet Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsIntSetInt Source #

HeapWords BigNat Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsBigNatInt Source #

HeapWords Text Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsTextInt Source #

HeapWords Day Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsDayInt Source #

HeapWords UTCTime Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsUTCTimeInt Source #

HeapWords Integer Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsIntegerInt Source #

HeapWords Natural Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsNaturalInt Source #

HeapWords Bool Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsBoolInt Source #

HeapWords Char Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsCharInt Source #

HeapWords Float Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsFloatInt Source #

HeapWords Int Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsIntInt Source #

HeapWords Word Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsWordInt Source #

HeapWords a ⇒ HeapWords (IntMap a) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsIntMap a → Int Source #

HeapWords a ⇒ HeapWords (Seq a) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsSeq a → Int Source #

HeapWords a ⇒ HeapWords (Set a) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsSet a → Int Source #

HeapWords e ⇒ HeapWords (Vector e) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsVector e → Int Source #

HeapWords a ⇒ HeapWords (Maybe a) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsMaybe a → Int Source #

HeapWords a ⇒ HeapWords [a] Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWords ∷ [a] → Int Source #

(HeapWords a, HeapWords b) ⇒ HeapWords (Either a b) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsEither a b → Int Source #

(HeapWords a, HeapWords b) ⇒ HeapWords (Map a b) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWordsMap a b → Int Source #

HeapWords (a → b) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWords ∷ (a → b) → Int Source #

(HeapWords a, HeapWords b) ⇒ HeapWords (a, b) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWords ∷ (a, b) → Int Source #

(HeapWords a, HeapWords b, HeapWords c) ⇒ HeapWords (a, b, c) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWords ∷ (a, b, c) → Int Source #

(HeapWords a, HeapWords b, HeapWords c, HeapWords d) ⇒ HeapWords (a, b, c, d) Source # 
Instance details

Defined in Cardano.HeapWords

Methods

heapWords ∷ (a, b, c, d) → Int Source #

heapSizeMbIntInt Source #

These functions assume a 64-bit architecture

heapSizeKbIntInt Source #

These functions assume a 64-bit architecture

heapWords1HeapWords a ⇒ a → Int Source #

heapWords2 ∷ (HeapWords a1, HeapWords a) ⇒ a → a1 → Int Source #

heapWords3 ∷ (HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → Int Source #

heapWords4 ∷ (HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → Int Source #

heapWords5 ∷ (HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → Int Source #

heapWords6 ∷ (HeapWords a5, HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → a5 → Int Source #

heapWords7 ∷ (HeapWords a6, HeapWords a5, HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → a5 → a6 → Int Source #

heapWords8 ∷ (HeapWords a7, HeapWords a6, HeapWords a5, HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → a5 → a6 → a7 → Int Source #

heapWords9 ∷ (HeapWords a8, HeapWords a7, HeapWords a6, HeapWords a5, HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → a5 → a6 → a7 → a8 → Int Source #

heapWords10 ∷ (HeapWords a9, HeapWords a8, HeapWords a7, HeapWords a6, HeapWords a5, HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → a5 → a6 → a7 → a8 → a9 → Int Source #

heapWords11 ∷ (HeapWords a10, HeapWords a9, HeapWords a8, HeapWords a7, HeapWords a6, HeapWords a5, HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → a5 → a6 → a7 → a8 → a9 → a10 → Int Source #

heapWords12 ∷ (HeapWords a11, HeapWords a10, HeapWords a9, HeapWords a8, HeapWords a7, HeapWords a6, HeapWords a5, HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → a5 → a6 → a7 → a8 → a9 → a10 → a11 → Int Source #

heapWords13 ∷ (HeapWords a12, HeapWords a11, HeapWords a10, HeapWords a9, HeapWords a8, HeapWords a7, HeapWords a6, HeapWords a5, HeapWords a4, HeapWords a3, HeapWords a2, HeapWords a1, HeapWords a) ⇒ a → a1 → a2 → a3 → a4 → a5 → a6 → a7 → a8 → a9 → a10 → a11 → a12 → Int Source #

heapWordsUArray ∷ (Ix i, IArray a e) ⇒ Int → a i e → Int Source #

heapWordsUnpackedHeapWords a ⇒ a → Int Source #

Calculate the number of heap words used by a field unpacked within another constructor.

This function simply subtracts 2 from the heapWords result of its parameter, since in the case of an unpacked field we _do not_ have to use:

  • a word for the pointer to the inner structure.
  • a word for the constructor that is being unpacked.