Safe Haskell | None |
---|---|
Language | Haskell2010 |
Memory units.
Synopsis
- class Integral unit => MemoryUnit unit where
- data Byte
- data Kilobyte
- data Megabyte
- data Gigabyte
- data Terabyte
- unitBuilder :: MemoryUnit unit => unit -> Builder
- memory :: MemoryUnit unit => Format r (unit -> r)
- toBytes :: forall unit. MemoryUnit unit => unit -> Integer
- fromBytes :: forall unit. MemoryUnit unit => Integer -> unit
- convertUnit :: (MemoryUnit a, MemoryUnit b) => a -> b
Documentation
Type class
class Integral unit => MemoryUnit unit where Source #
bytesMultiplier :: Proxy unit -> Integer Source #
This value is n iff (1 :: unit) is n bytes.
Instances
MemoryUnit Terabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Gigabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Megabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Kilobyte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Byte Source # | |
Defined in Serokell.Data.Memory.Units |
Concrete types
Instances
Enum Byte Source # | |
Eq Byte Source # | |
Integral Byte Source # | |
Num Byte Source # | |
Ord Byte Source # | |
Real Byte Source # | |
Defined in Serokell.Data.Memory.Units toRational :: Byte -> Rational # | |
Show Byte Source # | |
Generic Byte Source # | |
Arbitrary Byte Source # | |
NFData Byte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Byte Source # | |
Defined in Serokell.Data.Memory.Units | |
type Rep Byte Source # | |
Defined in Serokell.Data.Memory.Units |
Instances
Enum Kilobyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Eq Kilobyte Source # | |
Integral Kilobyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Num Kilobyte Source # | |
Ord Kilobyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Real Kilobyte Source # | |
Defined in Serokell.Data.Memory.Units toRational :: Kilobyte -> Rational # | |
Show Kilobyte Source # | |
Generic Kilobyte Source # | |
Arbitrary Kilobyte Source # | |
NFData Kilobyte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Kilobyte Source # | |
Defined in Serokell.Data.Memory.Units | |
type Rep Kilobyte Source # | |
Defined in Serokell.Data.Memory.Units |
Instances
Enum Megabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Eq Megabyte Source # | |
Integral Megabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Num Megabyte Source # | |
Ord Megabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Real Megabyte Source # | |
Defined in Serokell.Data.Memory.Units toRational :: Megabyte -> Rational # | |
Show Megabyte Source # | |
Generic Megabyte Source # | |
Arbitrary Megabyte Source # | |
NFData Megabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Megabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
type Rep Megabyte Source # | |
Defined in Serokell.Data.Memory.Units |
Instances
Enum Gigabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Eq Gigabyte Source # | |
Integral Gigabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Num Gigabyte Source # | |
Ord Gigabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Real Gigabyte Source # | |
Defined in Serokell.Data.Memory.Units toRational :: Gigabyte -> Rational # | |
Show Gigabyte Source # | |
Generic Gigabyte Source # | |
Arbitrary Gigabyte Source # | |
NFData Gigabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Gigabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
type Rep Gigabyte Source # | |
Defined in Serokell.Data.Memory.Units |
Instances
Enum Terabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Eq Terabyte Source # | |
Integral Terabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Num Terabyte Source # | |
Ord Terabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
Real Terabyte Source # | |
Defined in Serokell.Data.Memory.Units toRational :: Terabyte -> Rational # | |
Show Terabyte Source # | |
Generic Terabyte Source # | |
Arbitrary Terabyte Source # | |
NFData Terabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
MemoryUnit Terabyte Source # | |
Defined in Serokell.Data.Memory.Units | |
type Rep Terabyte Source # | |
Defined in Serokell.Data.Memory.Units |
Pretty printing
unitBuilder :: MemoryUnit unit => unit -> Builder Source #
Construct Text Builder.
memory :: MemoryUnit unit => Format r (unit -> r) Source #
Formatter for formatting
library.
Helpers
toBytes :: forall unit. MemoryUnit unit => unit -> Integer Source #
Convert given memory unit into integer representing bytes.
fromBytes :: forall unit. MemoryUnit unit => Integer -> unit Source #
Convert given number of bytes into memory unit, flooring value if necessary.
convertUnit :: (MemoryUnit a, MemoryUnit b) => a -> b Source #
Conversion between memory units.