tk::FileParser class

FileParser.

Derived classes

class inciter::InputDeckParser
Control file parser for Inciter.
class rngtest::InputDeckParser
Control file parser for RNGTest.
class walker::InputDeckParser
InputDeckParser : FileParser.

Constructors, destructors, conversion operators

FileParser(const std::string& filename) protected explicit
Constructor.

Protected functions

void diagnostics(const tk::Print& print, const std::vector<std::string>& messages)
Echo errors accumulated during parsing.

Protected variables

const std::string m_filename
Name of file to parse.

Function documentation

tk::FileParser::FileParser(const std::string& filename) explicit protected

Constructor.

Parameters
filename in File to be parsed by the parser

This constructor does basic tests in an attempt to determine if the file to be parsed exists and is in good shape and does associated error handling. This file stream is local, only used for error checking, and thus is not part of the object state here since the parser, inheriting from FileParser, e.g., walker::InputDeckParser, parses by completely outsourcing the parsing (to PEGTL), so there is no need to store the file stream handle here.

void tk::FileParser::diagnostics(const tk::Print& print, const std::vector<std::string>& messages) protected

Echo errors accumulated during parsing.

Parameters
print in Pretty printer
messages in Vector of strings of errors and warnings

< number of digits of line num

< original line parsed

< underline

< error or warning messages