hsdev-0.1.8.1: Haskell development library and tool with support of autocompletion, symbol info, go to declaration, find references etc.

Safe HaskellNone
LanguageHaskell98

Data.Deps

Synopsis

Documentation

data Deps a Source

Dependency map

Constructors

Deps 

Fields

_depsMap :: Map a [a]
 

Instances

Ord a => Monoid (Deps a) Source 
Ord a => Ixed (Deps a) Source 
Ord a => At (Deps a) Source 
type Index (Deps a) = a Source 
type IxValue (Deps a) = [a] Source 

depsMap :: (Ord a, Ord b) => Lens (Deps a) (Deps b) (Map a [a]) (Map b [b]) Source

mapDeps :: (Ord a, Ord b) => (a -> b) -> Deps a -> Deps b Source

dep :: Ord a => a -> a -> Deps a Source

Make single dependency

deps :: Ord a => a -> [a] -> Deps a Source

Make dependency for one target, note that order of dependencies is matter

inverse :: Ord a => Deps a -> Deps a Source

Inverse dependencies, i.e. make map where keys are dependencies and elements are targets depends on it

flatten :: Ord a => Deps a -> Deps a Source

Flatten dependencies so that there will be no indirect dependencies