Fixed echo in parser for ReadClass.cxx.

Works with testcase "raw".

git-svn-id: svn://136.177.114.72/svn_GW/phreeqcpp/trunk@1607 1feff8c3-07ed-0310-ac33-dd36852eb9cd
This commit is contained in:
David L Parkhurst 2007-01-10 23:19:56 +00:00
parent 2dc33fb7ae
commit 07f03ea2e5
3 changed files with 49 additions and 21 deletions

View File

@ -86,6 +86,14 @@ CParser::LINE_TYPE CParser::check_line(const std::string& str, bool allow_empty,
get_output() << msg;
}
break;
case EO_NOKEYWORDS:
if (i != LT_KEYWORD && i != LT_EOF)
{
std::ostringstream msg;
msg << "\t" << m_line_save << "\n";
get_output() << msg;
}
break;
}
// output for file
switch (this->echo_file)
@ -108,6 +116,15 @@ CParser::LINE_TYPE CParser::check_line(const std::string& str, bool allow_empty,
output_msg(OUTPUT_MESSAGE, "%s", msg.str().c_str());
}
break;
case EO_NOKEYWORDS:
if (i != LT_KEYWORD && i != LT_EOF)
{
std::ostringstream msg;
msg << "\t" << m_line_save << "\n";
output_msg(OUTPUT_MESSAGE, "%s", msg.str().c_str());
}
break;
}
} while (i == LT_EMPTY && allow_empty == false);

View File

@ -69,7 +69,8 @@ public:
enum ECHO_OPTION {
EO_NONE = 0,
EO_ALL = 1,
EO_KEYWORDS = 2
EO_KEYWORDS = 2,
EO_NOKEYWORDS = 3,
};
enum STATUS_TYPE {

View File

@ -68,12 +68,13 @@ int read_solution_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -150,12 +151,13 @@ int read_exchange_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -233,12 +235,13 @@ int read_surface_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -316,12 +319,13 @@ int read_equilibrium_phases_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -399,12 +403,13 @@ int read_kinetics_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -482,12 +487,13 @@ int read_solid_solutions_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -565,12 +571,13 @@ int read_gas_phase_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -648,12 +655,13 @@ int read_reaction_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -730,12 +738,13 @@ int read_mix_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;
@ -812,12 +821,13 @@ int read_temperature_raw (void)
std::ostringstream oss_err;
CParser parser(iss_in, oss_out, oss_err);
assert (!reading_database ());
if (pr.echo_input == FALSE)
{
parser.set_echo_file(CParser::EO_NONE);
} else if (reading_database ())
} else
{
parser.set_echo_file(CParser::EO_KEYWORDS);
parser.set_echo_file(CParser::EO_NOKEYWORDS);
}
//For testing, need to read line to get started
std::vector<std::string> vopts;