| Copyright | (c) 2020 berberman |
|---|---|
| License | MIT |
| Maintainer | berberman <1793913507@qq.com> |
| Safe Haskell | None |
| Language | Haskell2010 |
Distribution.ArchHs.Types
Description
Types used in this project.
Synopsis
- type PkgList = [PackageName]
- type ComponentPkgList = [(UnqualComponentName, PkgList)]
- type CommunityDB = Set String
- type HackageEnv = Reader HackageDB
- type CommunityEnv = Reader CommunityDB
- type FlagAssignments = Map PackageName FlagAssignment
- type FlagAssignmentsEnv = Reader FlagAssignments
- type DependencyRecord = State (Map PackageName [(PackageName, VersionRange)])
- type WithMyErr = Error MyException
- data MyException
- data DependencyType
- data DependencyKind
- data DependencyProvider
- = ByCommunity
- | ByAur
- data SolvedDependency = SolvedDependency {}
- data SolvedPackage
- = ProvidedPackage { }
- | SolvedPackage { }
- depType :: Lens' SolvedDependency [DependencyType]
- depProvider :: Lens' SolvedDependency (Maybe DependencyProvider)
- depName :: Lens' SolvedDependency PackageName
- pkgProvider :: Traversal' SolvedPackage DependencyProvider
- pkgName :: Lens' SolvedPackage PackageName
- pkgDeps :: Traversal' SolvedPackage [SolvedDependency]
Documentation
type PkgList = [PackageName] Source #
A list of PackageName.
type ComponentPkgList = [(UnqualComponentName, PkgList)] Source #
A list of component represented by UnqualComponentName and its dependencies collected in a PkgList.
type CommunityDB = Set String Source #
Representation of cummunity.db.
type CommunityEnv = Reader CommunityDB Source #
Reader effect of CommunityDB.
type FlagAssignments = Map PackageName FlagAssignment Source #
A map of packages with their FlagAssignment.
type FlagAssignmentsEnv = Reader FlagAssignments Source #
Reader effect of a map, associating PackageName with its FlagAssignment.
type DependencyRecord = State (Map PackageName [(PackageName, VersionRange)]) Source #
Unused state effect.
type WithMyErr = Error MyException Source #
Error effect of MyException.
data MyException Source #
Custom exception used in this project.
Constructors
| PkgNotFound PackageName | |
| VersionError PackageName Version | |
| TargetExist PackageName DependencyProvider | |
| LicenseError PackageName |
Instances
| Eq MyException Source # | |
Defined in Distribution.ArchHs.Types | |
| Show MyException Source # | |
Defined in Distribution.ArchHs.Types Methods showsPrec :: Int -> MyException -> ShowS # show :: MyException -> String # showList :: [MyException] -> ShowS # | |
data DependencyType Source #
The type of a dependency. Who requires this?
Constructors
| CExe UnqualComponentName | By a executable. |
| CExeBuildTools UnqualComponentName | By the build tools of a executable. |
| CLib | By a library. |
| CTest UnqualComponentName | By a test suit. |
| CBenchmark UnqualComponentName | By a benchmark. |
| CLibBuildTools | By the build tools of a library. |
| CTestBuildTools UnqualComponentName | By the build tools of a test suit. |
| CBenchmarkBuildTools UnqualComponentName | By the build tools of a benchmark. |
Instances
data DependencyKind Source #
Tags of data constructors of DependencyType.
Instances
| Eq DependencyKind Source # | |
Defined in Distribution.ArchHs.Types Methods (==) :: DependencyKind -> DependencyKind -> Bool # (/=) :: DependencyKind -> DependencyKind -> Bool # | |
data DependencyProvider Source #
Provider of a dependency.
Constructors
| ByCommunity | |
| ByAur |
Instances
| Eq DependencyProvider Source # | |
Defined in Distribution.ArchHs.Types Methods (==) :: DependencyProvider -> DependencyProvider -> Bool # (/=) :: DependencyProvider -> DependencyProvider -> Bool # | |
| Show DependencyProvider Source # | |
Defined in Distribution.ArchHs.Types Methods showsPrec :: Int -> DependencyProvider -> ShowS # show :: DependencyProvider -> String # showList :: [DependencyProvider] -> ShowS # | |
| Generic DependencyProvider Source # | |
Defined in Distribution.ArchHs.Types Associated Types type Rep DependencyProvider :: Type -> Type # Methods from :: DependencyProvider -> Rep DependencyProvider x # to :: Rep DependencyProvider x -> DependencyProvider # | |
| NFData DependencyProvider Source # | |
Defined in Distribution.ArchHs.Types Methods rnf :: DependencyProvider -> () # | |
| type Rep DependencyProvider Source # | |
data SolvedDependency Source #
A solved dependency, holden by SolvedPackage.
Constructors
| SolvedDependency | |
Fields
| |
Instances
data SolvedPackage Source #
A solved package collected from dgraph. This data type is not designed to be recursively,
thus the element type of _pkgDeps is SolvedDependency, rather than another SolvedPackage.
Constructors
| ProvidedPackage | A package which has been provided by somebody, so there is no need to expand its dependencies. |
Fields
| |
| SolvedPackage | A package with its dependencies. |
Fields
| |