drasil-printers-0.1.10.0: A framework for code and document generation for scientific software - Printers SubPackage
Safe HaskellSafe-Inferred
LanguageHaskell2010

Language.Drasil.Debug.Print

Synopsis

Main Function

printAllDebugInfo :: PrintingInformation -> [Doc] Source #

Gathers all printing functions and creates the debugging tables from them.

Helpers

Separators

cdbSection :: Doc -> Doc Source #

Debugging table separator.

header :: Doc -> Doc Source #

Header for debugging tables.

Table Generators

mkTableFromLenses :: IsChunk a => PrintingInformation -> Proxy a -> String -> [PrintingInformation -> (String, a -> Doc)] -> Doc Source #

General function to make the debugging tables. Takes in printing information, a function that extracts a certain field from the printing information, a title, three column headers, and three functions that sort the data from the printing information field into the required display formats (often UIDs, terms, shortnames, definitions, etc.).

openRef :: HasRefAddress a => p -> (String, a -> Doc) Source #

mkTableSymb :: PrintingInformation -> Doc Source #

Makes a table with all symbolic quantities in the SRS.

mkTableOfTerms :: PrintingInformation -> Doc Source #

Makes a table with terms in the SRS.

mkTableConcepts :: PrintingInformation -> Doc Source #

Makes a table with all concepts in the SRS.

mkTableUnitDefn :: PrintingInformation -> Doc Source #

Makes a table with all units used in the SRS.

mkTableDataDef :: PrintingInformation -> Doc Source #

Makes a table with all data definitions in the SRS.

mkTableGenDef :: PrintingInformation -> Doc Source #

Makes a table with all general definitions in the SRS.

mkTableTMod :: PrintingInformation -> Doc Source #

Makes a table with all theoretical models in the SRS.

mkTableIMod :: PrintingInformation -> Doc Source #

Makes a table with all instance models in the SRS.

mkTableCI :: PrintingInformation -> Doc Source #

Makes a table with all concept instances in the SRS.

mkTableLC :: PrintingInformation -> Doc Source #

Makes a table with all labelled content in the SRS.

mkTableRef :: PrintingInformation -> Doc Source #

Makes a table with all references in the SRS.

mkTableDepChunks :: PrintingInformation -> Doc Source #

Chunks that depend on other chunks. An empty list means the chunks do not depend on anything.

mkTableReferencedChunks :: PrintingInformation -> Doc Source #

Chunks that are referenced and used by other chunks. Those chunks build on top of the ones listed here.

UID Manipulation

renderUsedUIDs :: [(UID, String)] -> Doc Source #

Creates a table of all UIDs and their "highest" recorded level of information. See mkListShowUsedUIDs for more details.