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

Safe HaskellNone
LanguageHaskell2010

WeekDaze.Aggregate.LocationCatalogue

Contents

Description

AUTHOR
Dr. Alistair Ward
DESCRIPTION
Defines the names & attributes of all locations available to be booked in the timetable.
Synopsis

Types

Type-synonyms

type LocationCatalogue locationId campus = ResourceMap locationId (Profile campus) Source #

The complete set of locations, indexed by their locationId.

Constants

tag :: String Source #

Used to qualify XML.

Functions

countDaysByFacilityName :: LocationCatalogue locationId campus -> Map FacilityName NDays Source #

Count the total available days, of those locations offering each type of facility.

extractDistinctFacilityNames :: LocationCatalogue locationId campus -> FacilityNames Source #

Extracts the set of distinct facilities, from the catalogue.

findSuitableLocations :: NStudents -> FacilityNames -> LocationCatalogue locationId campus -> LocationCatalogue locationId campus Source #

Find those locations which meet or exceed, the specified criteria.

Accessors

getLocationIds :: LocationCatalogue locationId campus -> [locationId] Source #

Accessor.

Predicates

hasAnyFacilities :: LocationCatalogue locationId campus -> Bool Source #

True if any location offers any facilities.

isSingleCampus :: Ord campus => LocationCatalogue locationId campus -> Bool Source #

Whether all locations exist on the same campus.