TParserNode *TParser::Expr(void) { TParserNode *temp = Expr1(); while(1) { if(typToken==PARSER_PLUS) { GetToken(); temp = CreateNode(OP_PLUS, temp, Expr1()); } else if(typToken==PARSER_MINUS) { GetToken(); temp = CreateNode(OP_MINUS, temp, Expr1()); } else break; } return temp; }
TParserNode *TParser::Expr(NSGuidesOdp::CFormulaManager& pFManager) { TParserNode *temp = Expr1(pFManager); while(1) { if(typToken==PARSER_PLUS) { GetToken(); temp = CreateNode(OP_PLUS, temp, Expr1(pFManager)); } else if(typToken==PARSER_MINUS) { GetToken(); temp = CreateNode(OP_MINUS, temp, Expr1(pFManager)); } else break; } return temp; }