Copyright | (c) 2020-2021 berberman |
---|---|
License | MIT |
Maintainer | berberman <berberman@yandex.com> |
Stability | experimental |
Portability | portable |
Safe Haskell | None |
Language | Haskell2010 |
Types used by the library.
Synopsis
- data ComponentialPackage = ComponentialPackage {}
- data VersionedPackage = VersionedPackage {}
- type Op a = a -> a
- type Uusis = [Uusi]
- type Uusi = Action Text
- data Action tag
- = Remove tag (PackageName -> Bool)
- | SetVersion tag (PackageName -> Bool) VersionRange
- | Replace tag (PackageName -> Bool) [VersionedPackage]
- | SetBuildable tag (UnqualComponentName -> Bool) Bool
- | ModifyBuiltOptions tag (UnqualComponentName -> Bool) (Op [String])
Documentation
data ComponentialPackage Source #
Sub type of VersionedPackage
, with UnqualComponentName
.
Similar to VersionedPackage
, for defining lenses.
See HasComponentialPackage
.
Instances
data VersionedPackage Source #
Super type of three kinds of dependency.
Because cabal doesn't define lenses of Dependency
, ExeDependency
, and LegacyExeDependency
,
here comes out a general data type to define overloaded lenses.
See HasVersionedPackage
.
Instances
Show VersionedPackage Source # | |
Defined in Distribution.Uusi.Types showsPrec :: Int -> VersionedPackage -> ShowS # show :: VersionedPackage -> String # showList :: [VersionedPackage] -> ShowS # | |
HasVersionedPackage VersionedPackage Source # | |
Action acting on cabal dependencies.
Remove tag (PackageName -> Bool) | For a dependency x, if P(x) then remove x |
SetVersion tag (PackageName -> Bool) VersionRange | For a dependency x, if P(x) then set x's version range |
Replace tag (PackageName -> Bool) [VersionedPackage] | For a dependency x, if P(x) then replace x with a set of packages |
SetBuildable tag (UnqualComponentName -> Bool) Bool | For a component x, if P(x) then set the buildable of x |
ModifyBuiltOptions tag (UnqualComponentName -> Bool) (Op [String]) | For a component or library x, if P(x) then modify build options of x |