protocol/RangeArg: add IsAll()

This commit is contained in:
Max Kellermann 2018-09-02 07:57:08 +02:00
parent 590687fdea
commit 2915d2dd0f
2 changed files with 13 additions and 2 deletions

View File

@ -200,8 +200,7 @@ db_selection_print(Response &r, Partition &partition,
: VisitPlaylist();
if (sort == TAG_NUM_OF_ITEM_TYPES) {
if (window.start > 0 ||
window.end < (unsigned)std::numeric_limits<int>::max())
if (!window.IsAll())
s = [s, window, &i](const LightSong &song){
const bool in_window = i >= window.start && i < window.end;
++i;

View File

@ -30,6 +30,18 @@ struct RangeArg {
static constexpr RangeArg All() {
return { 0, std::numeric_limits<unsigned>::max() };
}
constexpr bool operator==(RangeArg other) const noexcept {
return start == other.start && end == other.end;
}
constexpr bool operator!=(RangeArg other) const noexcept {
return !(*this == other);
}
constexpr bool IsAll() const noexcept {
return *this == All();
}
};
#endif