some work on a 'program mode'

git-svn-id: svn://ttmath.org/publicrep/ezc/trunk@1136 e52654a7-88a9-db11-a3e9-0013d4bc506e
This commit is contained in:
2018-10-30 20:59:17 +00:00
parent c825c85878
commit a6b767a223
4 changed files with 34 additions and 28 deletions

View File

@@ -1448,13 +1448,13 @@ void Generator<StreamType>::EvaluateProgramNode(Item & item)
if( output_stream )
{
if( item.type == Item::item_function )
*output_stream << " expression: " << item.text << "\n";
*output_stream << " expression: " << item.text;
if( item.type == Item::item_if )
*output_stream << " if: " << item.text << "\n";
*output_stream << " if: " << item.text;
if( item.type == Item::item_for )
*output_stream << " for: " << item.text << "\n";
*output_stream << " for: " << item.text;
}
last_res = false;
@@ -1464,16 +1464,25 @@ void Generator<StreamType>::EvaluateProgramNode(Item & item)
if( expression_parser->Parse(item.text) )
{
last_res = expression_parser->LastResultToBool();
if( output_stream )
{
*output_stream << " -> " << expression_parser->LastResult();
}
}
else
{
if( output_stream )
{
*output_stream << " syntax error when evaluating expression\n";
*output_stream << " -> syntax error when evaluating expression: error code: " << (int)expression_parser->LastError();
}
}
}
if( output_stream )
{
*output_stream << "\n";
}
}