cql3: add maybe_set_paging_state function
set_paging_state is split into its unconditional variant and a maybe_ one in order to avoid double checks.
This commit is contained in:
@@ -75,14 +75,17 @@ bool metadata::all_in_same_cf() const {
|
||||
}
|
||||
|
||||
void metadata::set_paging_state(::shared_ptr<const service::pager::paging_state> paging_state) {
|
||||
if (!paging_state) {
|
||||
return;
|
||||
}
|
||||
|
||||
_flags.set<flag::HAS_MORE_PAGES>();
|
||||
_paging_state = std::move(paging_state);
|
||||
}
|
||||
|
||||
void metadata::maybe_set_paging_state(::shared_ptr<const service::pager::paging_state> paging_state) {
|
||||
assert(paging_state);
|
||||
if (paging_state->get_remaining() > 0) {
|
||||
set_paging_state(std::move(paging_state));
|
||||
}
|
||||
}
|
||||
|
||||
void metadata::set_skip_metadata() {
|
||||
_flags.set<flag::NO_METADATA>();
|
||||
}
|
||||
|
||||
@@ -111,6 +111,7 @@ private:
|
||||
|
||||
public:
|
||||
void set_paging_state(::shared_ptr<const service::pager::paging_state> paging_state);
|
||||
void maybe_set_paging_state(::shared_ptr<const service::pager::paging_state> paging_state);
|
||||
|
||||
void set_skip_metadata();
|
||||
|
||||
|
||||
Reference in New Issue
Block a user