UniHs-0.0.1.0: Maintain and create assessment template directories from templates
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Configuration

Synopsis

Type Alias

Data Types

Text Replacement Action

data TextReplacementAction #

A text replacement action to perform on the contents of a file, as read from a configuration file.

Constructors

TextReplacementAction 

Fields

  • _replacementActionName :: ReplacementActionName

    The unique name for the replacement action

  • _replacementActionSearchString :: ReplacementSearchString

    The String to find and replace with a file

  • _replacementText :: Text

    The value to substitute in place of the found search string. There are some special values that can be used based on the current directory:

    _replacementText ValueSubstituted Value
    %%THECOURSE%%The course code found in the current directory.
    %%THEASSESSNO%%The numeric value of the current assessment folder.
    %%THEAUTHOR%% The author as specified in the used template. If no author is given, no replacement will be made.

    Any other values will be substituted as is.

Instances

Instances details
FromJSON TextReplacementAction # 
Instance details

Defined in Data.Configuration

ToJSON TextReplacementAction # 
Instance details

Defined in Data.Configuration

Generic TextReplacementAction # 
Instance details

Defined in Data.Configuration

Associated Types

type Rep TextReplacementAction :: Type -> Type #

Show TextReplacementAction # 
Instance details

Defined in Data.Configuration

Eq TextReplacementAction # 
Instance details

Defined in Data.Configuration

type Rep TextReplacementAction # 
Instance details

Defined in Data.Configuration

type Rep TextReplacementAction = D1 ('MetaData "TextReplacementAction" "Data.Configuration" "UniHs-0.0.1.0-inplace" 'False) (C1 ('MetaCons "TextReplacementAction" 'PrefixI 'True) (S1 ('MetaSel ('Just "_replacementActionName") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ReplacementActionName) :*: (S1 ('MetaSel ('Just "_replacementActionSearchString") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 ReplacementSearchString) :*: S1 ('MetaSel ('Just "_replacementText") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text))))

Template Configuration

data AuthorInfo #

Information about authors for TemplateConfigurations.

Constructors

SingularAuthor Text

A single author

MultipleAuthors (NonEmpty Text)

A non-empty collection of authors

Instances

Instances details
FromJSON AuthorInfo # 
Instance details

Defined in Data.Configuration

ToJSON AuthorInfo # 
Instance details

Defined in Data.Configuration

Generic AuthorInfo # 
Instance details

Defined in Data.Configuration

Associated Types

type Rep AuthorInfo :: Type -> Type #

Show AuthorInfo # 
Instance details

Defined in Data.Configuration

Eq AuthorInfo # 
Instance details

Defined in Data.Configuration

type Rep AuthorInfo # 
Instance details

Defined in Data.Configuration

type Rep AuthorInfo = D1 ('MetaData "AuthorInfo" "Data.Configuration" "UniHs-0.0.1.0-inplace" 'False) (C1 ('MetaCons "SingularAuthor" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 Text)) :+: C1 ('MetaCons "MultipleAuthors" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (NonEmpty Text))))

data TemplateConfiguration #

A template to specify a directory of files to copy to a new location.

Constructors

TemplateConfiguration 

Fields

Instances

Instances details
FromJSON TemplateConfiguration # 
Instance details

Defined in Data.Configuration

ToJSON TemplateConfiguration # 
Instance details

Defined in Data.Configuration

Generic TemplateConfiguration # 
Instance details

Defined in Data.Configuration

Associated Types

type Rep TemplateConfiguration :: Type -> Type #

Show TemplateConfiguration # 
Instance details

Defined in Data.Configuration

Eq TemplateConfiguration # 
Instance details

Defined in Data.Configuration

type Rep TemplateConfiguration # 
Instance details

Defined in Data.Configuration

type Rep TemplateConfiguration = D1 ('MetaData "TemplateConfiguration" "Data.Configuration" "UniHs-0.0.1.0-inplace" 'False) (C1 ('MetaCons "TemplateConfiguration" 'PrefixI 'True) ((S1 ('MetaSel ('Just "_authorInfo") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Maybe AuthorInfo)) :*: S1 ('MetaSel ('Just "_templateDirectoryPath") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Path Abs Dir))) :*: (S1 ('MetaSel ('Just "_relativeOutputPath") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Path Rel Dir)) :*: S1 ('MetaSel ('Just "_fileContentReplacementMap") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map (Path Rel File) (Seq Text))))))

Configuration

data Configuration #

A template configuration used to copy a directory when creating a new assessment.

Constructors

Configuration 

Fields

Instances

Instances details
FromJSON Configuration # 
Instance details

Defined in Data.Configuration

ToJSON Configuration # 
Instance details

Defined in Data.Configuration

Generic Configuration # 
Instance details

Defined in Data.Configuration

Associated Types

type Rep Configuration :: Type -> Type #

Show Configuration # 
Instance details

Defined in Data.Configuration

Eq Configuration # 
Instance details

Defined in Data.Configuration

type Rep Configuration # 
Instance details

Defined in Data.Configuration

type Rep Configuration = D1 ('MetaData "Configuration" "Data.Configuration" "UniHs-0.0.1.0-inplace" 'False) (C1 ('MetaCons "Configuration" 'PrefixI 'True) (S1 ('MetaSel ('Just "_contentReplacementActions") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Seq TextReplacementAction)) :*: S1 ('MetaSel ('Just "_templateConfigurations") 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Map TemplateName TemplateConfiguration))))

Other datatypes

data ConfigurationPath #

Instances

Instances details
FromJSON ConfigurationPath # 
Instance details

Defined in Data.Configuration

ToJSON ConfigurationPath # 
Instance details

Defined in Data.Configuration

Generic ConfigurationPath # 
Instance details

Defined in Data.Configuration

Associated Types

type Rep ConfigurationPath :: Type -> Type #

Show ConfigurationPath # 
Instance details

Defined in Data.Configuration

Eq ConfigurationPath # 
Instance details

Defined in Data.Configuration

type Rep ConfigurationPath # 
Instance details

Defined in Data.Configuration

type Rep ConfigurationPath = D1 ('MetaData "ConfigurationPath" "Data.Configuration" "UniHs-0.0.1.0-inplace" 'False) (C1 ('MetaCons "NewConfiguration" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Path Abs File))) :+: C1 ('MetaCons "ExistingConfiguration" 'PrefixI 'False) (S1 ('MetaSel ('Nothing :: Maybe Symbol) 'NoSourceUnpackedness 'NoSourceStrictness 'DecidedLazy) (Rec0 (Path Abs File))))