private void getExpressions(ExpressionBuilder expBuilder, ref int openedParanthesis)
 {
     while (expBuilder.ThereAreMoreChars())
     {
         char currentChar = expBuilder.GetCurrentChar();
         if (currentChar == OPEN_SUBEXPRESSION)
         {
             openedParanthesis++;
             getExpressions(expBuilder.ProcessNewSubExpression(),
                            ref openedParanthesis);
         }
         else if (currentChar == CLOSE_SUBEXPRESSION)
         {
             expBuilder.SubExpressionEndFound();
             openedParanthesis--;
             return;
         }
         else
             expBuilder.AddSubExpressionChar();
     }
     expBuilder.SubExpressionEndFound();
 }
Exemple #2
0
 private void getExpressions(ExpressionBuilder expBuilder, ref int openedParenthesis)
 {
     while (expBuilder.ThereAreMoreChars())
     {
         char currentChar = expBuilder.GetCurrentChar();
         if (currentChar == OPEN_SUBEXPRESSION)
         {
             openedParenthesis++;
             getExpressions(expBuilder.ProcessNewSubExpression(), ref openedParenthesis);
         }
         else if (currentChar == CLOSE_SUBEXPRESSION)
         {
             expBuilder.SubExpressionEndFound();
             openedParenthesis--;
             return;
         }
         else
         {
             expBuilder.AddSubExpressionChar();
         }
     }
     expBuilder.SubExpressionEndFound();
 }