MissingH-1.4.3.1: Large utility library
CopyrightCopyright (C) 2004-2011 John Goerzen
LicenseBSD-3-Clause
Stabilitystable
Portabilityportable
Safe HaskellSafe
LanguageHaskell2010

Data.Map.Utils

Description

This module provides various helpful utilities for dealing with Data.Maps.

Written by John Goerzen, jgoerzen@complete.org

Synopsis

Basic Utilities

flipM :: (Ord key, Ord val) => Map key val -> Map val [key] Source #

Flips a Map. See flipAL for more on the similar function for lists.

flippedLookupM :: (Ord val, Ord key) => val -> Map key val -> [key] Source #

Returns a list of all keys in the Map whose value matches the parameter. If the value does not occur in the Map, the empty list is returned.

forceLookupM :: (Show key, Ord key) => String -> key -> Map key elt -> elt Source #

Performs a lookup, and raises an exception (with an error message prepended with the given string) if the key could not be found.

Conversions

strToM :: (Read a, Read b, Ord a) => String -> Map a b Source #

Converts a String into a String, String Map. See strToAL for more on the similar function for association lists.

This implementation is simple:

strToM = Data.Map.fromList . strToAL

This function is designed to work with Map String String objects, but may work with other key/value combinations if they have simple representations.

strFromM :: (Show a, Show b, Ord a) => Map a b -> String Source #

Converts a String, String Map into a string representation. See strFromAL for more on the similar function for association lists. This implementation is simple:

strFromM = strFromAL . Data.Map.toList

This function is designed to work with Map String String objects, but may also work with other objects with simple representations.