data-memocombinators-0.5.1: Combinators for building memo tables.

Safe HaskellSafe-Inferred

Data.MemoCombinators.Class

Synopsis

Documentation

class MemoTable a whereSource

The class of types which have complete memo tables.

Methods

table :: Memo aSource

Instances

MemoTable Bool 
MemoTable Char 
MemoTable Int 
MemoTable Int8 
MemoTable Int16 
MemoTable Int32 
MemoTable Int64 
MemoTable Integer 
MemoTable Ordering 
MemoTable Word 
MemoTable Word8 
MemoTable Word16 
MemoTable Word32 
MemoTable Word64 
MemoTable () 
MemoTable a => MemoTable [a] 
(Integral a, MemoTable a) => MemoTable (Ratio a) 
MemoTable a => MemoTable (Maybe a) 
(MemoTable a, MemoTable b) => MemoTable (Either a b) 
(MemoTable a, MemoTable b) => MemoTable (a, b) 
(MemoTable a, MemoTable b, MemoTable c) => MemoTable (a, b, c) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d) => MemoTable (a, b, c, d) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e) => MemoTable (a, b, c, d, e) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f) => MemoTable (a, b, c, d, e, f) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g) => MemoTable (a, b, c, d, e, f, g) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g, MemoTable h) => MemoTable (a, b, c, d, e, f, g, h) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g, MemoTable h, MemoTable i) => MemoTable (a, b, c, d, e, f, g, h, i) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g, MemoTable h, MemoTable i, MemoTable j) => MemoTable (a, b, c, d, e, f, g, h, i, j) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g, MemoTable h, MemoTable i, MemoTable j, MemoTable k) => MemoTable (a, b, c, d, e, f, g, h, i, j, k) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g, MemoTable h, MemoTable i, MemoTable j, MemoTable k, MemoTable l) => MemoTable (a, b, c, d, e, f, g, h, i, j, k, l) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g, MemoTable h, MemoTable i, MemoTable j, MemoTable k, MemoTable l, MemoTable m) => MemoTable (a, b, c, d, e, f, g, h, i, j, k, l, m) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g, MemoTable h, MemoTable i, MemoTable j, MemoTable k, MemoTable l, MemoTable m, MemoTable n) => MemoTable (a, b, c, d, e, f, g, h, i, j, k, l, m, n) 
(MemoTable a, MemoTable b, MemoTable c, MemoTable d, MemoTable e, MemoTable f, MemoTable g, MemoTable h, MemoTable i, MemoTable j, MemoTable k, MemoTable l, MemoTable m, MemoTable n, MemoTable o) => MemoTable (a, b, c, d, e, f, g, h, i, j, k, l, m, n, o) 

class Memoizable a whereSource

The class of functions which can be completely memoized.

Methods

memoize :: a -> aSource

Instances

MemoTable a => Memoizable (a -> b)