From 836f3e395260106a7dd76657f00707e1c348b43e Mon Sep 17 00:00:00 2001 From: Ziyang Hu Date: Tue, 5 Jul 2022 00:35:18 +0800 Subject: [PATCH] fix some warnings --- cozorocks/CMakeLists.txt | 5 +++-- cozorocks/bridge/db.h | 24 +++++++++++++----------- cozorocks/bridge/iter.h | 6 +++--- cozorocks/bridge/slice.h | 6 +++--- cozorocks/bridge/tx.h | 6 +++--- 5 files changed, 25 insertions(+), 22 deletions(-) diff --git a/cozorocks/CMakeLists.txt b/cozorocks/CMakeLists.txt index a2351d83..915ad650 100644 --- a/cozorocks/CMakeLists.txt +++ b/cozorocks/CMakeLists.txt @@ -4,7 +4,8 @@ project(cozorocks) set(CMAKE_CXX_STANDARD 17) include_directories("bridge") -include_directories("deps/include") +include_directories("rocksdb/include") include_directories("../target/cxxbridge") -add_library(cozorocks "bridge/cozorocks.cc" "bridge/cozorocks.h") \ No newline at end of file +add_library(cozorocks "bridge/bridge.h" "bridge/common.h" "bridge/db.cpp" "bridge/db.h" "bridge/iter.h" "bridge/opts.h" + "bridge/slice.h" "bridge/status.cpp" "bridge/status.h" "bridge/tx.cpp" "bridge/tx.h") \ No newline at end of file diff --git a/cozorocks/bridge/db.h b/cozorocks/bridge/db.h index 2d00d559..8c857bd0 100644 --- a/cozorocks/bridge/db.h +++ b/cozorocks/bridge/db.h @@ -5,6 +5,8 @@ #ifndef COZOROCKS_DB_H #define COZOROCKS_DB_H +#include + #include "iostream" #include "common.h" #include "tx.h" @@ -16,9 +18,9 @@ struct RocksDbBridge { bool destroy_on_exit; string db_path; - virtual unique_ptr transact() const = 0; + [[nodiscard]] virtual unique_ptr transact() const = 0; - inline const string &get_db_path() const { + [[nodiscard]] inline const string &get_db_path() const { return db_path; } }; @@ -26,7 +28,7 @@ struct RocksDbBridge { struct OptimisticRocksDb : public RocksDbBridge { unique_ptr db; - inline virtual unique_ptr transact() const { + [[nodiscard]] inline unique_ptr transact() const override { auto ret = make_unique(&*this->db); ret->o_tx_opts->cmp = &*comparator; return ret; @@ -39,7 +41,7 @@ struct PessimisticRocksDb : public RocksDbBridge { unique_ptr tdb_opts; unique_ptr db; - inline virtual unique_ptr transact() const { + [[nodiscard]] inline unique_ptr transact() const override { auto ret = make_unique(&*this->db); return ret; } @@ -52,27 +54,27 @@ typedef int8_t (*CmpFn)(RustBytes a, RustBytes b); class RustComparator : public Comparator { public: inline RustComparator(string name_, bool can_different_bytes_be_equal_, uint8_t const *const f) : - name(name_), + name(std::move(name_)), can_different_bytes_be_equal(can_different_bytes_be_equal_) { - CmpFn f_ = CmpFn(f); + auto f_ = CmpFn(f); ext_cmp = f_; } - inline int Compare(const Slice &a, const Slice &b) const { + [[nodiscard]] inline int Compare(const Slice &a, const Slice &b) const override { return ext_cmp(convert_slice_back(a), convert_slice_back(b)); } - inline const char *Name() const { + [[nodiscard]] inline const char *Name() const override { return name.c_str(); } - inline virtual bool CanKeysWithDifferentByteContentsBeEqual() const { + [[nodiscard]] inline bool CanKeysWithDifferentByteContentsBeEqual() const override { return can_different_bytes_be_equal; } - inline void FindShortestSeparator(string *, const Slice &) const {} + inline void FindShortestSeparator(string *, const Slice &) const override {} - inline void FindShortSuccessor(string *) const {} + inline void FindShortSuccessor(string *) const override {} string name; CmpFn ext_cmp; diff --git a/cozorocks/bridge/iter.h b/cozorocks/bridge/iter.h index 62a8a181..e5eae079 100644 --- a/cozorocks/bridge/iter.h +++ b/cozorocks/bridge/iter.h @@ -16,7 +16,7 @@ struct IterBridge { Slice upper_bound; unique_ptr r_opts; - IterBridge(Transaction *tx_) : tx(tx_), iter(nullptr), lower_bound(), upper_bound(), r_opts(new ReadOptions) { + explicit IterBridge(Transaction *tx_) : tx(tx_), iter(nullptr), lower_bound(), upper_bound(), r_opts(new ReadOptions) { r_opts->ignore_range_deletions = true; r_opts->auto_prefix_mode = true; } @@ -111,11 +111,11 @@ struct IterBridge { write_status(iter->status(), status); } - inline RustBytes key() const { + [[nodiscard]] inline RustBytes key() const { return convert_slice_back(iter->key()); } - inline RustBytes val() const { + [[nodiscard]] inline RustBytes val() const { return convert_slice_back(iter->value()); } }; diff --git a/cozorocks/bridge/slice.h b/cozorocks/bridge/slice.h index 79ccea35..deaf855b 100644 --- a/cozorocks/bridge/slice.h +++ b/cozorocks/bridge/slice.h @@ -8,15 +8,15 @@ #include "common.h" inline Slice convert_slice(RustBytes d) { - return Slice(reinterpret_cast(d.data()), d.size()); + return {reinterpret_cast(d.data()), d.size()}; } inline RustBytes convert_slice_back(const Slice &s) { - return rust::Slice(reinterpret_cast(s.data()), s.size()); + return {reinterpret_cast(s.data()), s.size()}; } inline RustBytes convert_pinnable_slice_back(const PinnableSlice &s) { - return rust::Slice(reinterpret_cast(s.data()), s.size()); + return {reinterpret_cast(s.data()), s.size()}; } #endif //COZOROCKS_SLICE_H diff --git a/cozorocks/bridge/tx.h b/cozorocks/bridge/tx.h index 9126b571..ff5b90e5 100644 --- a/cozorocks/bridge/tx.h +++ b/cozorocks/bridge/tx.h @@ -19,7 +19,7 @@ struct TxBridge { unique_ptr o_tx_opts; unique_ptr p_tx_opts; - TxBridge(OptimisticTransactionDB *odb_) : + explicit TxBridge(OptimisticTransactionDB *odb_) : odb(odb_), tdb(nullptr), tx(), @@ -30,7 +30,7 @@ struct TxBridge { r_opts->ignore_range_deletions = true; } - TxBridge(TransactionDB *tdb_) : + explicit TxBridge(TransactionDB *tdb_) : odb(nullptr), tdb(tdb_), tx(), @@ -77,7 +77,7 @@ struct TxBridge { tx->ClearSnapshot(); } - inline DB *get_db() const { + [[nodiscard]] inline DB *get_db() const { if (tdb != nullptr) { return tdb; } else {