mirror of
https://github.com/scylladb/scylladb.git
synced 2026-05-29 19:21:01 +00:00
cql3: convert aggregate functions to serialization_format
This commit is contained in:
@@ -41,10 +41,10 @@ public:
|
||||
virtual void reset() override {
|
||||
_count = 0;
|
||||
}
|
||||
virtual opt_bytes compute(int protocol_version) override {
|
||||
virtual opt_bytes compute(serialization_format sf) override {
|
||||
return long_type->decompose(_count);
|
||||
}
|
||||
virtual void add_input(int protocol_version, const std::vector<opt_bytes>& values) override {
|
||||
virtual void add_input(serialization_format sf, const std::vector<opt_bytes>& values) override {
|
||||
++_count;
|
||||
}
|
||||
};
|
||||
@@ -66,10 +66,10 @@ public:
|
||||
virtual void reset() override {
|
||||
_sum = {};
|
||||
}
|
||||
virtual opt_bytes compute(int protocol_version) override {
|
||||
virtual opt_bytes compute(serialization_format sf) override {
|
||||
return data_type_for<Type>()->decompose(_sum);
|
||||
}
|
||||
virtual void add_input(int protocol_version, const std::vector<opt_bytes>& values) override {
|
||||
virtual void add_input(serialization_format sf, const std::vector<opt_bytes>& values) override {
|
||||
if (!values[0]) {
|
||||
return;
|
||||
}
|
||||
@@ -103,14 +103,14 @@ public:
|
||||
_sum = {};
|
||||
_count = 0;
|
||||
}
|
||||
virtual opt_bytes compute(int protocol_version) override {
|
||||
virtual opt_bytes compute(serialization_format sf) override {
|
||||
Type ret = 0;
|
||||
if (_count) {
|
||||
ret = _sum / _count;
|
||||
}
|
||||
return data_type_for<Type>()->decompose(ret);
|
||||
}
|
||||
virtual void add_input(int protocol_version, const std::vector<opt_bytes>& values) override {
|
||||
virtual void add_input(serialization_format sf, const std::vector<opt_bytes>& values) override {
|
||||
if (!values[0]) {
|
||||
return;
|
||||
}
|
||||
@@ -142,13 +142,13 @@ public:
|
||||
virtual void reset() override {
|
||||
_max = {};
|
||||
}
|
||||
virtual opt_bytes compute(int protocol_version) override {
|
||||
virtual opt_bytes compute(serialization_format sf) override {
|
||||
if (!_max) {
|
||||
return {};
|
||||
}
|
||||
return data_type_for<Type>()->decompose(*_max);
|
||||
}
|
||||
virtual void add_input(int protocol_version, const std::vector<opt_bytes>& values) override {
|
||||
virtual void add_input(serialization_format sf, const std::vector<opt_bytes>& values) override {
|
||||
if (!values[0]) {
|
||||
return;
|
||||
}
|
||||
@@ -189,13 +189,13 @@ public:
|
||||
virtual void reset() override {
|
||||
_min = {};
|
||||
}
|
||||
virtual opt_bytes compute(int protocol_version) override {
|
||||
virtual opt_bytes compute(serialization_format sf) override {
|
||||
if (!_min) {
|
||||
return {};
|
||||
}
|
||||
return data_type_for<Type>()->decompose(*_min);
|
||||
}
|
||||
virtual void add_input(int protocol_version, const std::vector<opt_bytes>& values) override {
|
||||
virtual void add_input(serialization_format sf, const std::vector<opt_bytes>& values) override {
|
||||
if (!values[0]) {
|
||||
return;
|
||||
}
|
||||
@@ -238,10 +238,10 @@ public:
|
||||
virtual void reset() override {
|
||||
_count = 0;
|
||||
}
|
||||
virtual opt_bytes compute(int protocol_version) override {
|
||||
virtual opt_bytes compute(serialization_format sf) override {
|
||||
return long_type->decompose(_count);
|
||||
}
|
||||
virtual void add_input(int protocol_version, const std::vector<opt_bytes>& values) override {
|
||||
virtual void add_input(serialization_format sf, const std::vector<opt_bytes>& values) override {
|
||||
if (!values[0]) {
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -61,7 +61,7 @@ public:
|
||||
* @param protocol_version native protocol version
|
||||
* @param values the values to add to the aggregate.
|
||||
*/
|
||||
virtual void add_input(int protocol_version, const std::vector<opt_bytes>& values) = 0;
|
||||
virtual void add_input(serialization_format sf, const std::vector<opt_bytes>& values) = 0;
|
||||
|
||||
/**
|
||||
* Computes and returns the aggregate current value.
|
||||
@@ -69,7 +69,7 @@ public:
|
||||
* @param protocol_version native protocol version
|
||||
* @return the aggregate current value.
|
||||
*/
|
||||
virtual opt_bytes compute(int protocol_version) = 0;
|
||||
virtual opt_bytes compute(serialization_format sf) = 0;
|
||||
|
||||
/**
|
||||
* Reset this aggregate.
|
||||
|
||||
Reference in New Issue
Block a user