optparse-applicative-0.14.2.0: Utilities and combinators for parsing command line options

Safe HaskellSafe
LanguageHaskell98

Options.Applicative.Builder.Internal

Contents

Synopsis

Internals

data Mod f a Source #

An option modifier.

Option modifiers are values that represent a modification of the properties of an option.

The type parameter a is the return type of the option, while f is a record containing its properties (e.g. OptionFields for regular options, FlagFields for flags, etc...).

An option modifier consists of 3 elements:

  • A field modifier, of the form f a -> f a. These are essentially (compositions of) setters for some of the properties supported by f.
  • An optional default value and function to display it.
  • A property modifier, of the form OptProperties -> OptProperties. This is just like the field modifier, but for properties applicable to any option.

Modifiers are instances of Monoid, and can be composed as such.

One rarely needs to deal with modifiers directly, as most of the times it is sufficient to pass them to builders (such as strOption or flag) to create options (see Builder).

Constructors

Mod (f a -> f a) (DefaultProp a) (OptProperties -> OptProperties) 
Instances
Semigroup (Mod f a) Source #

Since: 0.13.0.0

Instance details

Methods

(<>) :: Mod f a -> Mod f a -> Mod f a #

sconcat :: NonEmpty (Mod f a) -> Mod f a #

stimes :: Integral b => b -> Mod f a -> Mod f a #

Monoid (Mod f a) Source # 
Instance details

Methods

mempty :: Mod f a #

mappend :: Mod f a -> Mod f a -> Mod f a #

mconcat :: [Mod f a] -> Mod f a #

class HasName f where Source #

Minimal complete definition

name

Methods

name :: OptName -> f a -> f a Source #

Instances
HasName FlagFields Source # 
Instance details
HasName OptionFields Source # 
Instance details

class HasCompleter f where Source #

Minimal complete definition

modCompleter

Methods

modCompleter :: (Completer -> Completer) -> f a -> f a Source #

class HasValue f where Source #

Minimal complete definition

hasValueDummy

Methods

hasValueDummy :: f a -> () Source #

Instances
HasValue ArgumentFields Source # 
Instance details
HasValue OptionFields Source # 
Instance details

class HasMetavar f where Source #

Minimal complete definition

hasMetavarDummy

Methods

hasMetavarDummy :: f a -> () Source #

Instances
HasMetavar ArgumentFields Source # 
Instance details
HasMetavar CommandFields Source # 
Instance details
HasMetavar OptionFields Source # 
Instance details

data FlagFields a Source #

Constructors

FlagFields 

Fields

Instances
HasName FlagFields Source # 
Instance details

data CommandFields a Source #

Constructors

CommandFields 
Instances
HasMetavar CommandFields Source # 
Instance details

data DefaultProp a Source #

Constructors

DefaultProp (Maybe a) (Maybe (a -> String)) 
Instances
Semigroup (DefaultProp a) Source # 
Instance details
Monoid (DefaultProp a) Source # 
Instance details

fieldMod :: (f a -> f a) -> Mod f a Source #

baseProps :: OptProperties Source #

Base default properties.

internal :: Mod f a Source #

Hide this option from the help text