weekdaze-0.0.0.1: A school-timetable problem-solver.

Safe HaskellNone
LanguageHaskell2010

WeekDaze.Model.Lesson

Contents

Description

AUTHOR
Dr. Alistair Ward
DESCRIPTION
Defines a lesson, suitable for any time-slot in the generic timetable.
Synopsis

Types

Type-synonyms

type GeneralisedLesson resourceIds level = Maybe (Lesson resourceIds level) Source #

A potentially undefined lesson.

Data-types

data Lesson resourceIds level Source #

  • Defines a potential booking of the resources required to teach a subject.
  • It doesn't specify the time-slot at which it's to be booked, because that's defined by it's position within a timetable.
  • A timetable composed from these lessons, can be viewed by either a location, student or teacher, so getResourceIds is polymorphic.

Constructors

MkLesson 

Fields

  • getResourceIds :: resourceIds

    The concrete type depends on whether viewed from the perspective of the location, student or teacher.

  • getSubject :: Subject level

    The subject to be taught.

Instances
(Eq resourceIds, Eq level) => Eq (Lesson resourceIds level) Source # 
Instance details

Defined in WeekDaze.Model.Lesson

Methods

(==) :: Lesson resourceIds level -> Lesson resourceIds level -> Bool #

(/=) :: Lesson resourceIds level -> Lesson resourceIds level -> Bool #

(Ord resourceIds, Ord level) => Ord (Lesson resourceIds level) Source # 
Instance details

Defined in WeekDaze.Model.Lesson

Methods

compare :: Lesson resourceIds level -> Lesson resourceIds level -> Ordering #

(<) :: Lesson resourceIds level -> Lesson resourceIds level -> Bool #

(<=) :: Lesson resourceIds level -> Lesson resourceIds level -> Bool #

(>) :: Lesson resourceIds level -> Lesson resourceIds level -> Bool #

(>=) :: Lesson resourceIds level -> Lesson resourceIds level -> Bool #

max :: Lesson resourceIds level -> Lesson resourceIds level -> Lesson resourceIds level #

min :: Lesson resourceIds level -> Lesson resourceIds level -> Lesson resourceIds level #

(Show resourceIds, Show level) => Show (Lesson resourceIds level) Source # 
Instance details

Defined in WeekDaze.Model.Lesson

Methods

showsPrec :: Int -> Lesson resourceIds level -> ShowS #

show :: Lesson resourceIds level -> String #

showList :: [Lesson resourceIds level] -> ShowS #

(NFData level, NFData resourceIds) => NFData (Lesson resourceIds level) Source # 
Instance details

Defined in WeekDaze.Model.Lesson

Methods

rnf :: Lesson resourceIds level -> () #

(XmlPickler level, XmlPickler resourceIds, Show level) => XmlPickler (Lesson resourceIds level) Source # 
Instance details

Defined in WeekDaze.Model.Lesson

Methods

xpickle :: PU (Lesson resourceIds level) #

(HTML level, HTML resourceIds) => HTML (Lesson resourceIds level) Source # 
Instance details

Defined in WeekDaze.Model.Lesson

Methods

toHtml :: Lesson resourceIds level -> Html #

toHtmlFromList :: [Lesson resourceIds level] -> Html #

Constants