code: function RowStatementPostExec(
      statementOptions, context, services, connectionConfig)
  {
    // call super
    BaseStatement.apply(this, arguments);
  
    // add the result request headers to the context
    context.resultRequestHeaders = buildResultRequestHeadersRow();
  
    /**
     * Called when the statement request is successful.
     *
     * @param {Object} body
     */
    context.onStatementRequestSucc =
        createOnStatementRequestSuccRow(this, context);
  
    /**
     * Fetches the rows in this statement's result and invokes the each()
     * callback on each row. If startIndex and endIndex values are specified, the
     * each() callback will only be invoked on rows in the requested range. The
     * end() callback will be invoked when either all the requested rows have been
     * successfully processed, or if an error was encountered while trying to
     * fetch the requested rows.
     *
     * @param {Object} options
     */
    this.fetchRows = createFnFetchRows(this, context);
  
    /**
     * Streams the rows in this statement's result. If start and end values are
     * specified, only rows in the specified range are streamed.
     *
     * @param {Object} options
     */
    this.streamRows = createFnStreamRows(this, context);
  
    // send a request to fetch the result
    sendRequestPostExec(context, context.onStatementRequestComp);
  }
docs: Creates a new RowStatementPostExec instance.
  
  @param {Object} statementOptions
  @param {Object} context
  @param {Object} services
  @param {Object} connectionConfig
  @constructor