Safe Haskell | None |
---|---|
Language | Haskell2010 |
- unPackageName :: PackageName -> Text
- unFlagName :: FlagName -> Text
- mkPackageName :: Text -> PackageName
- mkFlagName :: Text -> FlagName
- display :: Text a => a -> Text
- simpleParse :: (MonadThrow m, Text a, Typeable a) => Text -> m a
- data ParseFailedException = ParseFailedException TypeRep Text
- newtype Maintainer = Maintainer {
- unMaintainer :: Text
- newtype ExeName = ExeName {
- unExeName :: Text
- intersectVersionRanges :: VersionRange -> VersionRange -> VersionRange
- simplifyVersionRange :: VersionRange -> VersionRange
- topologicalSort :: (Ord key, Show key, MonadThrow m, Typeable key) => (value -> finalValue) -> (value -> Set key) -> Map key value -> m (Vector (key, finalValue))
- data TopologicalSortException key = NoEmptyDeps (Map key (Set key))
Documentation
unPackageName :: PackageName -> Text Source
unFlagName :: FlagName -> Text Source
mkPackageName :: Text -> PackageName Source
mkFlagName :: Text -> FlagName Source
simpleParse :: (MonadThrow m, Text a, Typeable a) => Text -> m a Source
newtype Maintainer Source
Maintainer | |
|
Eq Maintainer | |
Ord Maintainer | |
Show Maintainer | |
IsString Maintainer | |
Hashable Maintainer | |
ToJSON Maintainer | |
FromJSON Maintainer |
Name of an executable.
simplifyVersionRange :: VersionRange -> VersionRange Source
There seems to be a bug in Cabal where serializing and deserializing version ranges winds up with different representations. So we have a super-simplifier to deal with that.
:: (Ord key, Show key, MonadThrow m, Typeable key) | |
=> (value -> finalValue) | |
-> (value -> Set key) | deps |
-> Map key value | |
-> m (Vector (key, finalValue)) |
Topologically sort so that items with dependencies occur after those dependencies.
data TopologicalSortException key Source
NoEmptyDeps (Map key (Set key)) |
Show key => Show (TopologicalSortException key) | |
(Show key, Typeable * key) => Exception (TopologicalSortException key) | |
Typeable (* -> *) TopologicalSortException |