code: private void parseFunctionCall() throws TTXPathException {
  
          final String funcName = parseQName();
  
          consume(TokenType.OPEN_BR, true);
  
          int num = 0;
          if (!(mToken.getType() == TokenType.CLOSE_BR)) {
  
              do {
  
                  parseExprSingle();
                  num++;
  
              } while (is(TokenType.COMMA, true));
          }
  
          consume(TokenType.CLOSE_BR, true);
          mPipeBuilder.addFunction(getTransaction(), funcName, num);
  
      }
docs: Parses the the rule FunctionCall according to the following production
  rule:
  <p>
  [47] FunctionCall ::= < QName "(" > (ExprSingle ("," ExprSingle)*)? ")" .
  </p>
  
  @throws TTXPathException