This is a range defined by the Input Iterators returned from its begin() and end() members. Callers may directly iterate the RowStream instance, which will return a sequence of StatusOr<Row> objects.
For convenience, callers may wrap instances in a StreamOf<std::tuple<...>> object, which will automatically parse each Row into a std::tuple with the specified types.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-04-09 UTC."],[[["This webpage details the `RowStream` class, which represents a stream of `Rows` returned from `spanner::Client::Read()` or `spanner::Client::ExecuteQuery()` in the Google Cloud Spanner C++ library."],["The `RowStream` class can be directly iterated to access a sequence of `StatusOr\u003cRow\u003e` objects, or it can be wrapped in a `StreamOf\u003cstd::tuple\u003c...\u003e\u003e` object for automatic parsing of each `Row` into a `std::tuple`."],["The `begin()` and `end()` functions of `RowStream` return `RowStreamIterator` objects, defining the start and end of the range, respectively, which is consistent with C++ input iterators."],["`RowsModified()` provides the count of rows altered by a DML statement, and `ReadTimestamp()` reveals the time of the read operation, but is limited to read-only transactions."],["This page provides documentation on different versions of RowStream from 2.11.0 to 2.37.0-rc."]]],[]]