flex-tasks-0.0.0
Safe HaskellNone
LanguageHaskell2010

FlexTask.Types

Description

FlexTask configuration and task instance types.

Synopsis

Documentation

type HtmlDict = Map Lang String Source #

A map of language code and internationalized HTML value pairs.

data CommonModules Source #

Modules present in both FlexConf and FlexInst. They are propagated to the generated task instance.

Constructors

CommonModules 

Fields

Instances

Instances details
Generic CommonModules Source # 
Instance details

Defined in FlexTask.Types

Associated Types

type Rep CommonModules 
Instance details

Defined in FlexTask.Types

type Rep CommonModules = D1 ('MetaData "CommonModules" "FlexTask.Types" "flex-tasks-0.0.0-6jZXaKzOMKF6n8h63PhO69" 'False) (C1 ('MetaCons "CommonModules" 'PrefixI 'True) ((S1 ('MetaSel ('Just "globalModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "settingsModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :*: (S1 ('MetaSel ('Just "descriptionModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Just "parseModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "extraModules") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(String, String)])))))
Show CommonModules Source # 
Instance details

Defined in FlexTask.Types

Eq CommonModules Source # 
Instance details

Defined in FlexTask.Types

Ord CommonModules Source # 
Instance details

Defined in FlexTask.Types

type Rep CommonModules Source # 
Instance details

Defined in FlexTask.Types

type Rep CommonModules = D1 ('MetaData "CommonModules" "FlexTask.Types" "flex-tasks-0.0.0-6jZXaKzOMKF6n8h63PhO69" 'False) (C1 ('MetaCons "CommonModules" 'PrefixI 'True) ((S1 ('MetaSel ('Just "globalModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "settingsModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :*: (S1 ('MetaSel ('Just "descriptionModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: (S1 ('MetaSel ('Just "parseModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "extraModules") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 [(String, String)])))))

data FlexInst Source #

Concrete Task instance. Contained Haskell code is runtime interpreted to produce needed components of a task.

Constructors

FlexInst 

Fields

Instances

Instances details
Generic FlexInst Source # 
Instance details

Defined in FlexTask.Types

Associated Types

type Rep FlexInst 
Instance details

Defined in FlexTask.Types

type Rep FlexInst = D1 ('MetaData "FlexInst" "FlexTask.Types" "flex-tasks-0.0.0-6jZXaKzOMKF6n8h63PhO69" 'False) (C1 ('MetaCons "FlexInst" 'PrefixI 'True) ((S1 ('MetaSel ('Just "form") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ([Text], HtmlDict)) :*: S1 ('MetaSel ('Just "taskData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :*: (S1 ('MetaSel ('Just "commonModules") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CommonModules) :*: S1 ('MetaSel ('Just "checkModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))

Methods

from :: FlexInst -> Rep FlexInst x #

to :: Rep FlexInst x -> FlexInst #

type Rep FlexInst Source # 
Instance details

Defined in FlexTask.Types

type Rep FlexInst = D1 ('MetaData "FlexInst" "FlexTask.Types" "flex-tasks-0.0.0-6jZXaKzOMKF6n8h63PhO69" 'False) (C1 ('MetaCons "FlexInst" 'PrefixI 'True) ((S1 ('MetaSel ('Just "form") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ([Text], HtmlDict)) :*: S1 ('MetaSel ('Just "taskData") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String)) :*: (S1 ('MetaSel ('Just "commonModules") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CommonModules) :*: S1 ('MetaSel ('Just "checkModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String))))

data FlexConf Source #

Configuration to use for random generation of concrete FlexInst. taskDataModule is interpreted upon generating an instance to produce static form data. The other Haskell modules are propagated to the generated task instance.

Constructors

FlexConf 

Fields

Instances

Instances details
Generic FlexConf Source # 
Instance details

Defined in FlexTask.Types

Associated Types

type Rep FlexConf 
Instance details

Defined in FlexTask.Types

type Rep FlexConf = D1 ('MetaData "FlexConf" "FlexTask.Types" "flex-tasks-0.0.0-6jZXaKzOMKF6n8h63PhO69" 'False) (C1 ('MetaCons "FlexConf" 'PrefixI 'True) (S1 ('MetaSel ('Just "taskDataModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "commonModules") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CommonModules)))

Methods

from :: FlexConf -> Rep FlexConf x #

to :: Rep FlexConf x -> FlexConf #

Show FlexConf Source # 
Instance details

Defined in FlexTask.Types

Eq FlexConf Source # 
Instance details

Defined in FlexTask.Types

Ord FlexConf Source # 
Instance details

Defined in FlexTask.Types

type Rep FlexConf Source # 
Instance details

Defined in FlexTask.Types

type Rep FlexConf = D1 ('MetaData "FlexConf" "FlexTask.Types" "flex-tasks-0.0.0-6jZXaKzOMKF6n8h63PhO69" 'False) (C1 ('MetaCons "FlexConf" 'PrefixI 'True) (S1 ('MetaSel ('Just "taskDataModule") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 String) :*: S1 ('MetaSel ('Just "commonModules") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 CommonModules)))

delimiter :: String Source #

Visual module separator for configuration display.

parseFlexConfig :: Parser FlexConf Source #

Parser for FlexTask configurations. Reads five or more code modules each separated by at least three equals signs (=).

Modules starting from the sixth will be added to extraModules.

showFlexConfig :: FlexConf -> String Source #

Convert a configuration into a String. The modules are separated by lines of at least three consecutive equals signs (=). e.g.

Module1 where
...

====================

Module2 where
...

validateFlexConfig :: forall (m :: Type -> Type). OutputCapable m => FlexConf -> LangM m Source #

Check a configuration for inconsistencies