-- | Possible formats for printer output.
module Language.Drasil.Format where

-- | Document types include Software Requirements Specification and Website.
-- Choosing SRS will generate both TeX and HTML files, while Website generates only as HTML.
-- This also determines what folders the generated files will be placed into.
data DocType = SRS | Website | Lesson

-- | Possible formats for printer output.
data Format = TeX | Plain | HTML | Jupyter | MDBook

instance Show Format where
  show :: Format -> String
show Format
TeX     = String
"PDF"
  show Format
Plain   = String
"Plain"
  show Format
HTML    = String
"HTML"
  show Format
Jupyter = String
"Jupyter"
  show Format
MDBook  = String
"mdBook"

-- | Shows the different types of documents.
instance Show DocType where
  show :: DocType -> String
show DocType
Lesson  = String
"Lesson"
  show DocType
SRS     = String
"SRS"
  show DocType
Website = String
"Website"