ganeti-htoolsSource codeContentsIndex
Ganeti.HTools.Container
Description

Module abstracting the node and instance container implementation.

This is currently implemented on top of an IntMap, which seems to give the best performance for our workload.

Synopsis
type Key = Key
type Container = IntMap
find :: Key -> Container a -> a
add :: Key -> a -> Container a -> Container a
addTwo :: Key -> a -> Key -> a -> Container a -> Container a
nameOf :: Element a => Container a -> Key -> String
findByName :: (Element a, Monad m) => Container a -> String -> m a
Documentation
type Key = KeySource
Our key type.
type Container = IntMapSource
Our container type.
find :: Key -> Container a -> aSource
Locate a key in the map (must exist).
add :: Key -> a -> Container a -> Container aSource
Add or update one element to the map.
addTwo :: Key -> a -> Key -> a -> Container a -> Container aSource
Add or update two elements of the map.
nameOf :: Element a => Container a -> Key -> StringSource
Compute the name of an element in a container.
findByName :: (Element a, Monad m) => Container a -> String -> m aSource
Find an element by name in a Container; this is a very slow function.
Produced by Haddock version 2.6.0