diff --git a/cql3/operation.hh b/cql3/operation.hh index da95f339ad..b5fb0039dc 100644 --- a/cql3/operation.hh +++ b/cql3/operation.hh @@ -67,16 +67,16 @@ public: protected: // Term involved in the operation. In theory this should not be here since some operation // may require none of more than one term, but most need 1 so it simplify things a bit. - const std::experimental::optional<::shared_ptr> _t; + const ::shared_ptr _t; - operation(::shared_ptr column_, std::experimental::optional<::shared_ptr> t) + operation(::shared_ptr column_, ::shared_ptr t) : column{column_} , _t{t} { } public: virtual bool uses_function(sstring ks_name, sstring function_name) const { - return _t && _t.value()->uses_function(ks_name, function_name); + return _t && _t->uses_function(ks_name, function_name); } #if 0 diff --git a/cql3/statements/modification_statement.hh b/cql3/statements/modification_statement.hh index 79ab931d0a..5eb5d2a8ef 100644 --- a/cql3/statements/modification_statement.hh +++ b/cql3/statements/modification_statement.hh @@ -137,15 +137,15 @@ public: return true; #endif for (auto&& operation : _column_operations) { - if (operation && operation.value()->uses_function(ks_name, function_name)) + if (operation && operation->uses_function(ks_name, function_name)) return true; } for (auto&& condition : _column_conditions) { - if (condition && condition.value()->uses_function(ks_name, function_name)) + if (condition && condition->uses_function(ks_name, function_name)) return true; } for (auto&& condition : _static_conditions) { - if (condition && condition.value()->uses_function(ks_name, function_name)) + if (condition && condition->uses_function(ks_name, function_name)) return true; } return false;