-- | Defines QuantityDicts needed in the code generation stage.
module Language.Drasil.Code.CodeQuantityDicts where

import Language.Drasil

-- | Variable for the input file's name.
inFileName :: DefinedQuantityDict
inFileName :: DefinedQuantityDict
inFileName = String -> NP -> Sentence -> Space -> Symbol -> DefinedQuantityDict
implVar' String
"inFileName"
  (String -> String -> NP
nounPhrase String
"name of the input file" String
"names of the input files")
  (String -> Sentence
S String
"a filepath, absolute or relative, to the file containing the program's inputs")
  Space
String (String -> Symbol
label String
"filename")

-- | Variable for an object of the InputParameters class.
inParams :: DefinedQuantityDict
inParams :: DefinedQuantityDict
inParams = String -> NP -> Sentence -> Space -> Symbol -> DefinedQuantityDict
implVar' String
"inParams" (String -> String -> NP
nounPhrase
  String
"structure holding the input values" String
"structures holding the input values")
  (String -> Sentence
S String
"the structure holding the input values")
  (String -> Space
Actor String
"InputParameters") (String -> Symbol
label String
"inParams")

-- | Variable for an object of the Constants class.
consts :: DefinedQuantityDict
consts :: DefinedQuantityDict
consts = String -> NP -> Sentence -> Space -> Symbol -> DefinedQuantityDict
implVar' String
"consts" (String -> String -> NP
nounPhrase
  String
"structure holding the constant values"
  String
"structures holding the constant values")
  (String -> Sentence
S String
"the structure holding the constant values")
  (String -> Space
Actor String
"Constants") (String -> Symbol
label String
"consts")


codeDQDs :: [DefinedQuantityDict]
codeDQDs :: [DefinedQuantityDict]
codeDQDs = [DefinedQuantityDict
inFileName, DefinedQuantityDict
inParams, DefinedQuantityDict
consts]