diff --git a/configure.py b/configure.py index e2cca06cf9..75c6b96336 100755 --- a/configure.py +++ b/configure.py @@ -652,7 +652,6 @@ scylla_core = (['database.cc', 'service/paxos/prepare_response.cc', 'service/paxos/paxos_state.cc', 'service/paxos/prepare_summary.cc', - 'cql3/operator.cc', 'cql3/relation.cc', 'cql3/column_identifier.cc', 'cql3/column_specification.cc', diff --git a/cql3/expr/expression.hh b/cql3/expr/expression.hh index a3b19af196..be07dfbcff 100644 --- a/cql3/expr/expression.hh +++ b/cql3/expr/expression.hh @@ -27,7 +27,6 @@ #include #include "bytes.hh" -#include "cql3/operator.hh" #include "cql3/query_options.hh" #include "cql3/selection/selection.hh" #include "cql3/statements/bound.hh" diff --git a/cql3/operator.cc b/cql3/operator.cc deleted file mode 100644 index 2d7e69bcaf..0000000000 --- a/cql3/operator.cc +++ /dev/null @@ -1,58 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* - * Copyright (C) 2015 ScyllaDB - * - * Modified by ScyllaDB - */ - -/* - * This file is part of Scylla. - * - * Scylla is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Scylla is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Scylla. If not, see . - */ - -#include "operator.hh" - -namespace cql3 { - -const operator_type operator_type::EQ(0, operator_type::EQ, "="); -const operator_type operator_type::LT(4, operator_type::GT, "<"); -const operator_type operator_type::LTE(3, operator_type::GTE, "<="); -const operator_type operator_type::GTE(1, operator_type::LTE, ">="); -const operator_type operator_type::GT(2, operator_type::LT, ">"); -const operator_type operator_type::IN(7, operator_type::IN, "IN"); -const operator_type operator_type::CONTAINS(5, operator_type::CONTAINS, "CONTAINS"); -const operator_type operator_type::CONTAINS_KEY(6, operator_type::CONTAINS_KEY, "CONTAINS_KEY"); -const operator_type operator_type::NEQ(8, operator_type::NEQ, "!="); -const operator_type operator_type::IS_NOT(9, operator_type::IS_NOT, "IS NOT"); -const operator_type operator_type::LIKE(10, operator_type::LIKE, "LIKE"); - -} diff --git a/cql3/operator.hh b/cql3/operator.hh deleted file mode 100644 index f4b4771e2d..0000000000 --- a/cql3/operator.hh +++ /dev/null @@ -1,128 +0,0 @@ -/* - * Licensed to the Apache Software Foundation (ASF) under one - * or more contributor license agreements. See the NOTICE file - * distributed with this work for additional information - * regarding copyright ownership. The ASF licenses this file - * to you under the Apache License, Version 2.0 (the - * "License"); you may not use this file except in compliance - * with the License. You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -/* - * Copyright (C) 2015 ScyllaDB - * - * Modified by ScyllaDB - */ - -/* - * This file is part of Scylla. - * - * Scylla is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Scylla is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Scylla. If not, see . - */ - -#pragma once - -#include -#include -#include -#include "seastarx.hh" - -namespace cql3 { - -class operator_type { -public: - static const operator_type EQ; - static const operator_type LT; - static const operator_type LTE; - static const operator_type GTE; - static const operator_type GT; - static const operator_type IN; - static const operator_type CONTAINS; - static const operator_type CONTAINS_KEY; - static const operator_type NEQ; - static const operator_type IS_NOT; - static const operator_type LIKE; -private: - int32_t _b; - const operator_type& _reverse; - sstring _text; -private: - operator_type(int32_t b, const operator_type& reverse, sstring text) - : _b(b) - , _reverse(reverse) - , _text(std::move(text)) - {} -public: - operator_type(const operator_type&) = delete; - operator_type& operator=(const operator_type&) = delete; - const operator_type& reverse() const { return _reverse; } - bool is_slice() const { - return (*this == LT) || (*this == LTE) || (*this == GT) || (*this == GTE); - } - bool is_compare() const { - // EQ, LT, LTE, GT, GTE, NEQ - return _b < 5 || _b == 8; - } - bool needs_filtering() const { - return (*this == CONTAINS) || (*this == CONTAINS_KEY) || (*this == LIKE); - } - sstring to_string() const { return _text; } - bool operator==(const operator_type& other) const { return this == &other; } - bool operator!=(const operator_type& other) const { return this != &other; } -#if 0 - - /** - * Write the serialized version of this Operator to the specified output. - * - * @param output the output to write to - * @throws IOException if an I/O problem occurs while writing to the specified output - */ - public void writeTo(DataOutput output) throws IOException - { - output.writeInt(b); - } - - /** - * Deserializes a Operator instance from the specified input. - * - * @param input the input to read from - * @return the Operator instance deserialized - * @throws IOException if a problem occurs while deserializing the Type instance. - */ - public static Operator readFrom(DataInput input) throws IOException - { - int b = input.readInt(); - for (Operator operator : values()) - if (operator.b == b) - return operator; - - throw new IOException(String.format("Cannot resolve Relation.Type from binary representation: %s", b)); - } -#endif -}; - -static inline -std::ostream& operator<<(std::ostream& out, const operator_type& op) { - return out << op.to_string(); -} - -} diff --git a/cql3/relation.hh b/cql3/relation.hh index 4ebca45810..c979751181 100644 --- a/cql3/relation.hh +++ b/cql3/relation.hh @@ -41,7 +41,6 @@ #pragma once -#include "operator.hh" #include "schema_fwd.hh" #include "column_identifier.hh" #include "variable_specifications.hh" diff --git a/index/secondary_index_manager.hh b/index/secondary_index_manager.hh index c674dd9aeb..1d9befb89f 100644 --- a/index/secondary_index_manager.hh +++ b/index/secondary_index_manager.hh @@ -44,7 +44,6 @@ #include "schema.hh" #include "cql3/expr/expression.hh" -#include "cql3/operator.hh" #include "database_fwd.hh" #include