bytestring-trie-0.1.1: An efficient finite map from (byte)strings to values.

Portabilityportable
Stabilitybeta
Maintainerwren@community.haskell.org

Data.Trie.Convenience

Contents

Description

Additional convenience versions of the generic functions.

Synopsis

lookupBy variants

lookupWithDefault :: a -> KeyString -> Trie a -> aSource

Lookup a key, returning a default value if it's not found.

alterBy variants

insertIfAbsent :: KeyString -> a -> Trie a -> Trie aSource

Insert a new key, retaining old value on conflict.

insertWith :: (a -> a -> a) -> KeyString -> a -> Trie a -> Trie aSource

Insert a new key, with a function to resolve conflicts.

insertWithKey :: (KeyString -> a -> a -> a) -> KeyString -> a -> Trie a -> Trie aSource

adjustWithKey :: (KeyString -> a -> a) -> KeyString -> Trie a -> Trie aSource

Apply a function to change the value at a key.

update :: (a -> Maybe a) -> KeyString -> Trie a -> Trie aSource

Apply a function to the value at a key, possibly removing it.

mergeBy variants

disunion :: Trie a -> Trie a -> Trie aSource

Combine two tries. If they define the same key, it is removed.

unionWith :: (a -> a -> a) -> Trie a -> Trie a -> Trie aSource

Combine two tries, using a function to resolve conflicts