cql3: Use optional for cf_name

Suggested by Avi.

Signed-off-by: Pekka Enberg <penberg@cloudius-systems.com>
This commit is contained in:
Pekka Enberg
2015-01-02 14:08:08 +02:00
committed by Avi Kivity
parent 9292815bd9
commit 3368d44af7
3 changed files with 9 additions and 7 deletions

View File

@@ -28,7 +28,7 @@
#include "cql3/statements/parsed_statement.hh"
#include "cql3/cf_name.hh"
#include <memory>
#include <experimental/optional>
namespace cql3 {
@@ -39,9 +39,9 @@ namespace statements {
*/
class cf_statement : public parsed_statement {
protected:
std::unique_ptr<cf_name> _cf_name;
std::experimental::optional<cf_name> _cf_name;
cf_statement(std::unique_ptr<cf_name>&& cf_name)
cf_statement(std::experimental::optional<cf_name>&& cf_name)
: _cf_name(std::move(cf_name))
{ }

View File

@@ -28,6 +28,8 @@
#include "cql3/statements/cf_statement.hh"
#include "cql3/cql_statement.hh"
#include <experimental/optional>
namespace cql3 {
namespace statements {
@@ -41,11 +43,11 @@ private:
protected:
schema_altering_statement()
: cf_statement{nullptr}
: cf_statement{std::experimental::optional<cf_name>{}}
, _is_column_family_level{false}
{ }
schema_altering_statement(std::unique_ptr<cf_name>&& name)
schema_altering_statement(std::experimental::optional<cf_name>&& name)
: cf_statement{std::move(name)}
, _is_column_family_level{true}
{ }

View File

@@ -28,7 +28,7 @@
#include "cql3/statements/cf_statement.hh"
#include "cql3/cql_statement.hh"
#include <memory>
#include <experimental/optional>
namespace cql3 {
@@ -36,7 +36,7 @@ namespace statements {
class truncate_statement : public cf_statement, public virtual cql_statement {
public:
truncate_statement(std::unique_ptr<cf_name>&& name)
truncate_statement(std::experimental::optional<cf_name>&& name)
: cf_statement{std::move(name)}
{ }