FREE(pstCommand);
}
+bool Parser::stopOnFirstError(void)
+{
+ return ParserSingleInstance::stopOnFirstError();
+}
+void Parser::enableStopOnFirstError(void)
+{
+ ParserSingleInstance::enableStopOnFirstError();
+}
+void Parser::disableStopOnFirstError(void)
+{
+ ParserSingleInstance::disableStopOnFirstError();
+}
+
/** \brief parse the given file command */
void ParserSingleInstance::parse(const char *command)
{
void ParserSingleInstance::appendErrorMessage(const std::wstring& message)
{
+ if (ParserSingleInstance::stopOnFirstError() && _error_message.empty() == false)
+ {
+ return;
+ }
+
_error_message += message;
}
std::wstring ParserSingleInstance::_prog_name;
std::wstring ParserSingleInstance::_error_message;
bool ParserSingleInstance::_strict_mode = false;
-bool ParserSingleInstance::_stop_on_first_error = false;
+bool ParserSingleInstance::_stop_on_first_error = true;
ast::Exp* ParserSingleInstance::_the_program = nullptr;
Parser::ParserStatus ParserSingleInstance::_exit_status = Parser::Succeded;
std::list<Parser::ControlStatus> ParserSingleInstance::_control_status;