NAME

SampleProblemParser - Parse the documentation in a sample problem in the /doc directory.

parseSampleProblem

Parse a PG file with extra documentation comments. The input is the file and a hash of global variables:

metadata: A reference to a hash which has information (name, directory, types, subjects, categories) of every sample problem file.
macro_locations: A reference to a hash of macros to include as links within a problem.
pod_root: The root directory of the POD.
pg_doc_home: The url of the pg_doc home.
url_extension: The html url extension (including the dot) to use for pg doc links. The default is the empty string.

generateMetadata

Build a hash of metadata for all PG files in the given directory. A reference to the hash that is built is returned.

getSampleProblemCode

Parse a PG file with extra documentation comments and strip that all out returning the clean problem code. This returns the same code that the parseSampleProblem returns, except at much less expense as it does not parse the documentation, it does not require that the metadata be parsed first, and it does not need macro POD information.