|
Text.Regex.TDFA.IntArrTrieSet |
|
|
Description |
This creates a lazy Trie based on a finite range of Ints and is used to
memorize a function over the subsets of this range.
To create a Trie you need two supply 2 things
* Range of keys to bound
* A function or functions used to construct the value for a subset of keys
The Trie uses the Array type internally.
|
|
Synopsis |
|
|
|
Documentation |
|
data TrieSet v |
|
|
lookupAsc :: TrieSet v -> [Int] -> v |
This is the accessor for the Trie. The list of keys should be
sorted.
|
|
fromBounds |
:: | | => (Int, Int) | (lower,upper) range of keys, lower<=upper
| -> [Int] -> v | Function from list of keys to its value.
It must work for distinct ascending lists.
| -> TrieSet v | The constructed Trie
| This is a Trie constructor for a complete range of keys.
|
|
|
fromSinglesMerge |
:: | | => v | value for (lookupAsc trie [])
| -> v -> v -> v | merge operation on values
| -> (Int, Int) | (lower,upper) range of keys, lower<=upper
| -> Int -> v | Function from a single key to its value
| -> TrieSet v | The constructed Trie
| This is a Trie constructor for a complete range of keys that uses
a function from single values and a merge operation on values to
fill the Trie.
|
|
|
fromSinglesSum |
:: | | => [v] -> v | summation operation for values
| -> (Int, Int) | (lower,upper) range of keys, lower <= upper
| -> Int -> v | Function from a single key to its value
| -> TrieSet v | The constructed Trie
| This is a Trie constructor for a complete range of keys that uses
a function from single values and a sum operation of values to fill
the Trie.
|
|
|
Produced by Haddock version 2.3.0 |