std::string intermediateOutput
Строка, содержащая результат промежуточной обработки файла
void afterSlashParser(char ch, std::string &str)
Обработчик символа в режиме парсера выражения после слэша
void inStringParser(char ch, std::string &str)
Обработчик символа в режиме парсера строки (внутри двойных кавычек).
void(Preprocessor::* currentParser)(char ch, std::string &str)
Опредедение currentParser как указателя на функцию-члена класса
void inMultilineCommentParser(char ch, std::string &str)
Обработчик символа в режиме парсера многострочного комментария
std::string initialInput
Строка, содержащая исходный файл в первоначальном виде
bool inInlineLastEscape
Признак встречи слэша внутри однострочного комментария (после //).
void normalParser(char ch, std::string &str)
Обработчик символа в режиме обычного состояния парcера
~Preprocessor()
Деструктор
bool inMultilineLastStar
Признак встречи звездочки внутри многострочного комментария (после '/*').
char processSymbol(char ch)
Базовая функция обработки символа В зависимости от входого символа возвращает на выход:
bool inCharLastEscape
Признак встречи слэша внутри символа (внутри одинарных кавычек).
void inInlineCommentParser(char ch, std::string &str)
Обработчик символа в режиме парсера однострочного комментария (после //).
std::string resultString
Строка, содержащая окончательный результат обработки файла
bool inStringLastEscape
Признак встречи слэша внутри строки (внутри двойных кавычек).
std::stringstream resultStream
void inCharParser(char ch, std::string &str)
Обработчик символа в режиме парсера символа (внутри одинарных кавычек).
Preprocessor(const std::string &fileName)
Конструктор, принимающий на вход имя обрабатываемого файла