Represent a (possibly non-continuous) set of row keys.
Cloud Bigtable can scan non-continuous sets of rows, these sets can include a mix of specific row keys and ranges as defined by bigtable::RowRange.
Constructors
RowSet()
Create an empty set.
RowSet(RowSet &&)
Parameter
Name
Description
RowSet &&
RowSet(RowSet const &)
Parameter
Name
Description
RowSet const &
RowSet(Arg &&...)
Parameters
Name
Description
a
Arg &&...
typename...
Operators
operator=(RowSet &&)
Parameter
Name
Description
RowSet &&
Returns
Type
Description
RowSet &
operator=(RowSet const &)
Parameter
Name
Description
RowSet const &
Returns
Type
Description
RowSet &
Functions
Append(RowRange)
Add range to the set.
Parameter
Name
Description
range
RowRange
Returns
Type
Description
void
Append(T &&)
Add row_key to the set, minimize copies when possible.
Parameters
Name
Description
row_key
T &&
typename T
Returns
Type
Description
void
Intersect(bigtable::RowRange const &) const
Modify this object to contain the ranges and keys inside range.
This function removes any rowkeys outside range, it removes any row ranges that do not intersect with range, and keeps only the intersection for those ranges that do intersect range.
Parameter
Name
Description
range
bigtable::RowRange const &
Returns
Type
Description
RowSet
IsEmpty() const
Returns true if the set is empty.
A row set is empty iff passing it to a ReadRows call would never cause it to return rows. This is true if the set consists of only empty ranges.
Note that a default constructed RowSet is not empty, since it matches all rows in the table.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-14 UTC."],[[["\u003cp\u003eThe provided content outlines the \u003ccode\u003eRowSet\u003c/code\u003e class within the Google Cloud Bigtable C++ library, specifically focusing on version 2.12.0, and provides access to the latest version as well as older ones.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eRowSet\u003c/code\u003e represents a potentially non-continuous collection of row keys, allowing for the scanning of both specific keys and ranges within Cloud Bigtable.\u003c/p\u003e\n"],["\u003cp\u003eThe \u003ccode\u003eRowSet\u003c/code\u003e class offers constructors to create empty sets, handle copy/move operations, and initialize with arguments, as well as operators to assign from copy/move.\u003c/p\u003e\n"],["\u003cp\u003eKey functions of \u003ccode\u003eRowSet\u003c/code\u003e include \u003ccode\u003eAppend\u003c/code\u003e for adding row keys or ranges, \u003ccode\u003eIntersect\u003c/code\u003e for modifying the set based on another \u003ccode\u003eRowRange\u003c/code\u003e, and \u003ccode\u003eIsEmpty\u003c/code\u003e for checking if the set is devoid of rows.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003eas_proto()\u003c/code\u003e is a function that can retrieve the contents of the rowset as a \u003ccode\u003egoogle::bigtable::v2::RowSet\u003c/code\u003e object.\u003c/p\u003e\n"]]],[],null,["# Class RowSet (2.12.0)\n\nVersion 2.12.0keyboard_arrow_down\n\n- [2.42.0-rc (latest)](/cpp/docs/reference/bigtable/latest/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.41.0](/cpp/docs/reference/bigtable/2.41.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.40.0](/cpp/docs/reference/bigtable/2.40.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.39.0](/cpp/docs/reference/bigtable/2.39.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.38.0](/cpp/docs/reference/bigtable/2.38.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.37.0](/cpp/docs/reference/bigtable/2.37.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.36.0](/cpp/docs/reference/bigtable/2.36.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.35.0](/cpp/docs/reference/bigtable/2.35.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.34.0](/cpp/docs/reference/bigtable/2.34.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.33.0](/cpp/docs/reference/bigtable/2.33.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.32.0](/cpp/docs/reference/bigtable/2.32.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.31.0](/cpp/docs/reference/bigtable/2.31.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.30.0](/cpp/docs/reference/bigtable/2.30.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.29.0](/cpp/docs/reference/bigtable/2.29.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.28.0](/cpp/docs/reference/bigtable/2.28.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.27.0](/cpp/docs/reference/bigtable/2.27.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.26.0](/cpp/docs/reference/bigtable/2.26.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.25.1](/cpp/docs/reference/bigtable/2.25.1/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.24.0](/cpp/docs/reference/bigtable/2.24.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.23.0](/cpp/docs/reference/bigtable/2.23.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.22.1](/cpp/docs/reference/bigtable/2.22.1/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.21.0](/cpp/docs/reference/bigtable/2.21.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.20.0](/cpp/docs/reference/bigtable/2.20.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.19.0](/cpp/docs/reference/bigtable/2.19.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.18.0](/cpp/docs/reference/bigtable/2.18.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.17.0](/cpp/docs/reference/bigtable/2.17.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.16.0](/cpp/docs/reference/bigtable/2.16.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.15.1](/cpp/docs/reference/bigtable/2.15.1/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.14.0](/cpp/docs/reference/bigtable/2.14.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.13.0](/cpp/docs/reference/bigtable/2.13.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.12.0](/cpp/docs/reference/bigtable/2.12.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet)\n- [2.11.0](/cpp/docs/reference/bigtable/2.11.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet) \nRepresent a (possibly non-continuous) set of row keys. \nCloud Bigtable can scan non-continuous sets of rows, these sets can include a mix of specific row keys and ranges as defined by [`bigtable::RowRange`](/cpp/docs/reference/bigtable/2.12.0/classgoogle_1_1cloud_1_1bigtable_1_1RowRange).\n\nConstructors\n------------\n\n### RowSet()\n\nCreate an empty set.\n\n### RowSet(RowSet \\&\\&)\n\n### RowSet(RowSet const \\&)\n\n### RowSet(Arg \\&\\&...)\n\nOperators\n---------\n\n### operator=(RowSet \\&\\&)\n\n### operator=(RowSet const \\&)\n\nFunctions\n---------\n\n### Append(RowRange)\n\nAdd `range` to the set.\n\n### Append(T \\&\\&)\n\nAdd `row_key` to the set, minimize copies when possible.\n\n### Intersect(bigtable::RowRange const \\&) const\n\nModify this object to contain the ranges and keys inside `range`. \nThis function removes any rowkeys outside `range`, it removes any row ranges that do not intersect with `range`, and keeps only the intersection for those ranges that do intersect `range`.\n\n### IsEmpty() const\n\nReturns true if the set is empty. \nA row set is empty iff passing it to a ReadRows call would never cause it to return rows. This is true if the set consists of only empty ranges.\n\nNote that a default constructed [RowSet](/cpp/docs/reference/bigtable/2.12.0/classgoogle_1_1cloud_1_1bigtable_1_1RowSet) is not empty, since it matches all rows in the table.\n\n### as_proto() const \\&\n\n### as_proto() \\&\\&"]]