lrucaching-0.2.0: LRU cache

Copyright(c) Moritz Kiefer, 2016 (c) Jasper Van der Jeugt, 2015
LicenseBSD3
Maintainermoritz.kiefer@purelyfunctional.org
Safe HaskellNone
LanguageHaskell2010

Data.LruCache.Internal

Description

This module contains internal datastructures. No guarantees are made as to the stability of this module and violating invariants can result in unspecified behavior.

Synopsis

Documentation

data LruCache k v Source #

LRU cache based on hashing.

Constructors

LruCache 

Fields

Instances

Functor (LruCache k) Source # 

Methods

fmap :: (a -> b) -> LruCache k a -> LruCache k b #

(<$) :: a -> LruCache k b -> LruCache k a #

Foldable (LruCache k) Source # 

Methods

fold :: Monoid m => LruCache k m -> m #

foldMap :: Monoid m => (a -> m) -> LruCache k a -> m #

foldr :: (a -> b -> b) -> b -> LruCache k a -> b #

foldr' :: (a -> b -> b) -> b -> LruCache k a -> b #

foldl :: (b -> a -> b) -> b -> LruCache k a -> b #

foldl' :: (b -> a -> b) -> b -> LruCache k a -> b #

foldr1 :: (a -> a -> a) -> LruCache k a -> a #

foldl1 :: (a -> a -> a) -> LruCache k a -> a #

toList :: LruCache k a -> [a] #

null :: LruCache k a -> Bool #

length :: LruCache k a -> Int #

elem :: Eq a => a -> LruCache k a -> Bool #

maximum :: Ord a => LruCache k a -> a #

minimum :: Ord a => LruCache k a -> a #

sum :: Num a => LruCache k a -> a #

product :: Num a => LruCache k a -> a #

Traversable (LruCache k) Source # 

Methods

traverse :: Applicative f => (a -> f b) -> LruCache k a -> f (LruCache k b) #

sequenceA :: Applicative f => LruCache k (f a) -> f (LruCache k a) #

mapM :: Monad m => (a -> m b) -> LruCache k a -> m (LruCache k b) #

sequence :: Monad m => LruCache k (m a) -> m (LruCache k a) #

(Eq v, Ord k, Hashable k) => Eq (LruCache k v) Source # 

Methods

(==) :: LruCache k v -> LruCache k v -> Bool #

(/=) :: LruCache k v -> LruCache k v -> Bool #

(Show k, Show v) => Show (LruCache k v) Source # 

Methods

showsPrec :: Int -> LruCache k v -> ShowS #

show :: LruCache k v -> String #

showList :: [LruCache k v] -> ShowS #

(NFData k, NFData v) => NFData (LruCache k v) Source # 

Methods

rnf :: LruCache k v -> () #

type Priority = Int64 Source #

Logical time at which an element was last accessed.