code: public Type next(boolean is_in_expression) throws IOException {
          inQuotedContent = false;
          int c = this.readIgnoreWhitespace();
          return next(c, is_in_expression);
      }
docs: Java handles the tail optimization)