From 46bbfc0c53535c712a490190990ac955aaeed3e2 Mon Sep 17 00:00:00 2001 From: Pavel Emelyanov Date: Mon, 1 Apr 2024 13:42:57 +0300 Subject: [PATCH] expression: Shorten making raw_value from FragmetedView The read_field is std::optional. The raw_value::make_value() accepts managed_bytes_opt which is std::optional. Finally, there's std::optional::optional(std::optional&&) move constructor (and its copy-constructor peer). Signed-off-by: Pavel Emelyanov Closes scylladb/scylladb#18128 --- cql3/expr/expression.cc | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/cql3/expr/expression.cc b/cql3/expr/expression.cc index 29c5746a26..8c3114379b 100644 --- a/cql3/expr/expression.cc +++ b/cql3/expr/expression.cc @@ -1723,11 +1723,7 @@ cql3::raw_value do_evaluate(const field_selection& field_select, const evaluatio // std::optional read_field auto read_field = read_nth_user_type_field(udt_serialized_bytes, field_select.field_idx); - if (read_field.has_value()) { - return cql3::raw_value::make_value(managed_bytes(*read_field)); - } else { - return cql3::raw_value::make_null(); - } + return cql3::raw_value::make_value(managed_bytes_opt(read_field)); }); return field_value;