Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- module Darcs.UI.Options.Core
- type DarcsOption = OptSpec DarcsOptDescr Flag
- type PrimDarcsOption v = forall a. PrimOptSpec DarcsOptDescr Flag a v
- type DarcsOptDescr = Compose OptDescr ((->) AbsolutePath)
- optDescr :: AbsolutePath -> DarcsOptDescr f -> OptDescr f
- type Config = [Flag]
Documentation
module Darcs.UI.Options.Core
type DarcsOption = OptSpec DarcsOptDescr Flag Source #
DarcsOption
instantiates the first two type parameters of OptSpec
to
what we need in darcs. The first parameter is instantiated to
The flag type is instantiate to Flag
.
type PrimDarcsOption v = forall a. PrimOptSpec DarcsOptDescr Flag a v Source #
This is PrimOptSpec
instantiated with DarcsOptDescr
and Flag
.
type DarcsOptDescr = Compose OptDescr ((->) AbsolutePath) Source #
We do not instantiate the d
in
directly with
OptSpec
d fOptDescr
. Instead we (post-) compose it with (->)
. Modulo newtype noise, this is the same asAbsolutePath
typeDarcsOptDescr
f =OptDescr
(AbsolutePath
-> f)
This is so we can pass a directory relative to which an option argument is interpreted (if it has the form of a relative path).
optDescr :: AbsolutePath -> DarcsOptDescr f -> OptDescr f Source #
Instantiate a DarcsOptDescr
with an AbsolutePath