GenI-0.22: A natural language generator (specifically, an FB-LTAG surface realiser)

Safe HaskellSafe-Infered

NLP.GenI.Flag

Synopsis

Documentation

data GrammarType Source

Constructors

GeniHand

geni's text format

PreCompiled

built into geni, no parsing needed

PreAnchored

lexical selection already done

data Flag Source

Flags are GenI's internal representation of command line arguments. We use phantom existential types (?) for representing GenI flags. This makes it simpler to do things such as ``get the value of the MacrosFlg'' whilst preserving type safety (we always know that MacrosFlg is associated with String). The alternative would be writing getters and setters for each flag, and that gets really boring after a while.

Constructors

forall f x . (Eq f, Typeable f, Typeable x) => Flag (x -> f) x 

Instances

isFlag :: (Typeable f, Typeable x) => (x -> f) -> Flag -> BoolSource

hasFlag :: (Typeable f, Typeable x) => (x -> f) -> [Flag] -> BoolSource

deleteFlag :: (Typeable f, Typeable x) => (x -> f) -> [Flag] -> [Flag]Source

modifyFlag :: (Eq f, Typeable f, Typeable x) => (x -> f) -> (x -> x) -> [Flag] -> [Flag]Source

This only has an effect if the flag is set

setFlag :: (Eq f, Typeable f, Typeable x) => (x -> f) -> x -> [Flag] -> [Flag]Source

getFlag :: (Typeable f, Typeable x) => (x -> f) -> [Flag] -> Maybe xSource

getAllFlags :: (Typeable f, Typeable x) => (x -> f) -> [Flag] -> [x]Source

newtype HelpFlg Source

Constructors

HelpFlg () 

newtype PartialFlg Source

Constructors

PartialFlg () 

newtype VersionFlg Source

Constructors

VersionFlg () 

newtype WeirdFlg Source

Constructors

WeirdFlg String