Copyright | (c) 2020 berberman |
---|---|
License | MIT |
Maintainer | berberman <1793913507@qq.com> |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Types used in this project.
Synopsis
- type PkgList = [PackageName]
- type ComponentPkgList = [(UnqualComponentName, PkgList)]
- newtype CommunityName = CommunityName {}
- type CommunityVersion = String
- type CommunityDB = Map CommunityName CommunityVersion
- type HackageEnv = Reader HackageDB
- type CommunityEnv = Reader CommunityDB
- type FlagAssignmentsEnv = Reader FlagAssignments
- data DependencyType
- data DependencyKind
- data DependencyProvider
- = ByCommunity
- | ByAur
- data SolvedPackage
- = ProvidedPackage { }
- | SolvedPackage { }
- data SolvedDependency = SolvedDependency {}
- type FlagAssignments = Map PackageName FlagAssignment
- depProvider :: Lens' SolvedDependency (Maybe DependencyProvider)
- pkgProvider :: Traversal' SolvedPackage DependencyProvider
- pkgName :: Lens' SolvedPackage PackageName
- pkgDeps :: Traversal' SolvedPackage [SolvedDependency]
- depName :: Lens' SolvedDependency PackageName
- depType :: Lens' SolvedDependency [DependencyType]
- type DependencyRecord = State (Map PackageName [VersionRange])
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
newtype CommunityName Source #
Name of packages in archlinux community repo, a wrapper of String
.
CommunityName | |
|
Instances
type CommunityVersion = String Source #
Version of packages in archlinux community repo
type CommunityDB = Map CommunityName CommunityVersion Source #
Representation of cummunity.db
type CommunityEnv = Reader CommunityDB Source #
Reader effect of CommunityDB
type FlagAssignmentsEnv = Reader FlagAssignments Source #
Reader effect of a map, associating PackageName
with its FlagAssignment
data DependencyType Source #
The type of a dependency. Who requires this?
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 |
CSubLibs UnqualComponentName | By a sub-library |
CSubLibsBuildTools UnqualComponentName | By the build tools of a sub-library |
Instances
data DependencyKind Source #
Tags of data constructors of DependencyType
Exe | |
ExeBuildTools | |
Lib | |
Test | |
Benchmark | |
LibBuildTools | |
TestBuildTools | |
BenchmarkBuildTools | |
SubLibs | |
SubLibsBuildTools |
Instances
Eq DependencyKind Source # | |
Defined in Distribution.ArchHs.Types (==) :: DependencyKind -> DependencyKind -> Bool # (/=) :: DependencyKind -> DependencyKind -> Bool # |
data DependencyProvider Source #
Provider of a dependency.
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
.
ProvidedPackage | A package which has been provided by somebody, so there is no need to expand its dependencies |
| |
SolvedPackage | A package with its dependencies |
|
Instances
data SolvedDependency Source #
A solved dependency, holden by SolvedPackage
SolvedDependency | |
|
Instances
type FlagAssignments = Map PackageName FlagAssignment Source #
A map of packages with their FlagAssignment
type DependencyRecord = State (Map PackageName [VersionRange]) Source #
Unused state effect