mirror of
https://github.com/scylladb/scylladb.git
synced 2026-06-04 22:13:19 +00:00
The exression type cannot be a member of a struct that is an element of the expression variant. This is because it would then be required to contain itself. So introduce a nested_expression type to indirectly hold an expression, but keep the value semantics we expect from expressions: it is copyable and a copy has separate identity and storage. In fact binary_operator had to resort to this trick, so it's converted to nested_expression in the next patch.