drasil-website-0.1.0.0: Using the Drasil generators to create Drasil's website
Safe HaskellNone
LanguageHaskell2010

Drasil.Website.Body

Description

Gathers and organizes all the information for the Drasil website.

Synopsis

Functions to Generate the Website Through Drasil

printSetting :: FolderLocation -> PrintingInformation Source #

Printing info to get document to generate. Takes in the FolderLocation.

mkWebsite :: FolderLocation -> Document Source #

Instead of being an SRSDecl, this takes the folder locations and generates the document from there.

data FolderLocation Source #

Folder locations based on environment variables (using getEnv in Drasil.Website.Main).

Constructors

Folder 

Fields

  • depL :: FilePath

    Deploy location. Currently unused, but may be needed in the future.

  • docsRt :: FilePath

    Haddock documentation root file path. After using make deploy, this should be deploy/docs.

  • exRt :: FilePath

    Example root file path. After using make deploy, this should be deploy/examples.

  • graphRt :: FilePath

    Package dependency graph root file path. After using make deploy, this should be deploy/graphs.

  • analysisRt :: FilePath

    Analysis root file path. After using make deploy, this should be deploy/analysis.

  • typeGraphFolder :: FilePath

    Type graphs root file path. After using make deploy, this should be deploy/analysis/TypeDependencyGraphs.

  • classInstFolder :: FilePath

    Class-instance graphs root file path. After using make deploy, this should be deploy/analysis/DataTable/packagegraphs.

  • repoRt :: FilePath

    Repository root, used for linking to generated code in GitHub.

  • buildNum :: FilePath

    Deploy build number. Currently unused.

  • buildPth :: FilePath

    Deploy build path. Currently unused.

  • packages :: [String]

    List of Drasil packages taken from the Makefile.

si :: FolderLocation -> SystemInformation Source #

System information.

sections :: FolderLocation -> [Section] Source #

Puts all the sections in order. Basically the website version of the SRS declaration.

symbMap :: FolderLocation -> ChunkDB Source #

Needed for references and terms to work.

getSysName :: SystemInformation -> IdeaDict Source #

Helper to get the system name as an IdeaDict from SystemInformation.

usedDB :: ChunkDB Source #

Empty database needed for si to work.

allRefs :: FolderLocation -> [Reference] Source #

Holds all references and links used in the website.

webName :: CI Source #

Used for system name and kind inside of si.

web :: CI Source #

Used for system name and kind inside of si.

Header Section

headerSec :: Section Source #

Header section creator.

imageContent :: LabelledContent Source #

For the drasil tree image on the website.

gitHubRef :: Reference Source #

Used for the repository link.

websiteTitle :: String Source #

Hardcoded info for the title, URL, and image path.

Footer Section

footer :: FolderLocation -> Section Source #

Create the footer section.