Skip to content

Commit ad7b18b

Browse files
authored
refactor(string_view): Use std::string_view instead of absl::string_view (#2091)
1 parent af3677e commit ad7b18b

113 files changed

Lines changed: 427 additions & 432 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

src/base/pegasus_utils.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
#include <string>
2929
#include <vector>
3030

31-
#include "absl/strings/string_view.h"
31+
#include <string_view>
3232
#include "utils/flags.h"
3333

3434
DSN_DECLARE_bool(encrypt_data_at_rest);
@@ -122,9 +122,9 @@ const std::string &redact_sensitive_string(const T &src)
122122
}
123123
}
124124

125-
inline absl::string_view to_string_view(rocksdb::Slice s) { return {s.data(), s.size()}; }
125+
inline std::string_view to_string_view(rocksdb::Slice s) { return {s.data(), s.size()}; }
126126

127-
inline rocksdb::Slice to_rocksdb_slice(absl::string_view s) { return {s.data(), s.size()}; }
127+
inline rocksdb::Slice to_rocksdb_slice(std::string_view s) { return {s.data(), s.size()}; }
128128

129129
} // namespace utils
130130
} // namespace pegasus

src/base/pegasus_value_schema.h

Lines changed: 9 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@
3232
#include "utils/blob.h"
3333
#include "utils/endians.h"
3434
#include "utils/fmt_logging.h"
35-
#include "absl/strings/string_view.h"
35+
#include <string_view>
3636
#include "value_field.h"
3737

3838
namespace pegasus {
@@ -55,7 +55,7 @@ inline uint64_t extract_timestamp_from_timetag(uint64_t timetag)
5555
/// Extracts expire_ts from rocksdb value with given version.
5656
/// The value schema must be in v0 or v1.
5757
/// \return expire_ts in host endian
58-
inline uint32_t pegasus_extract_expire_ts(uint32_t version, absl::string_view value)
58+
inline uint32_t pegasus_extract_expire_ts(uint32_t version, std::string_view value)
5959
{
6060
CHECK_LE(version, PEGASUS_DATA_VERSION_MAX);
6161
return dsn::data_input(value).read_u32();
@@ -76,15 +76,15 @@ pegasus_extract_user_data(uint32_t version, std::string &&raw_value, ::dsn::blob
7676
if (version == 1) {
7777
input.skip(sizeof(uint64_t));
7878
}
79-
absl::string_view view = input.read_str();
79+
std::string_view view = input.read_str();
8080

8181
// tricky code to avoid memory copy
8282
std::shared_ptr<char> buf(const_cast<char *>(view.data()), [s](char *) { delete s; });
8383
user_data.assign(std::move(buf), 0, static_cast<unsigned int>(view.length()));
8484
}
8585

8686
/// Extracts timetag from a v1 value.
87-
inline uint64_t pegasus_extract_timetag(int version, absl::string_view value)
87+
inline uint64_t pegasus_extract_timetag(int version, std::string_view value)
8888
{
8989
CHECK_EQ(version, 1);
9090

@@ -118,7 +118,7 @@ inline bool check_if_ts_expired(uint32_t epoch_now, uint32_t expire_ts)
118118
/// \return true if expired
119119
inline bool check_if_record_expired(uint32_t value_schema_version,
120120
uint32_t epoch_now,
121-
absl::string_view raw_value)
121+
std::string_view raw_value)
122122
{
123123
return check_if_ts_expired(epoch_now,
124124
pegasus_extract_expire_ts(value_schema_version, raw_value));
@@ -136,7 +136,7 @@ class pegasus_value_generator
136136
/// A higher level utility for generating value with given version.
137137
/// The value schema must be in v0 or v1.
138138
rocksdb::SliceParts generate_value(uint32_t value_schema_version,
139-
absl::string_view user_data,
139+
std::string_view user_data,
140140
uint32_t expire_ts,
141141
uint64_t timetag)
142142
{
@@ -157,7 +157,7 @@ class pegasus_value_generator
157157
///
158158
/// rocksdb value (ver 0) = [expire_ts(uint32_t)] [user_data(bytes)]
159159
/// \internal
160-
rocksdb::SliceParts generate_value_v0(uint32_t expire_ts, absl::string_view user_data)
160+
rocksdb::SliceParts generate_value_v0(uint32_t expire_ts, std::string_view user_data)
161161
{
162162
_write_buf.resize(sizeof(uint32_t));
163163
_write_slices.clear();
@@ -210,7 +210,7 @@ class pegasus_value_generator
210210
///
211211
/// \internal
212212
rocksdb::SliceParts
213-
generate_value_v1(uint32_t expire_ts, uint64_t timetag, absl::string_view user_data)
213+
generate_value_v1(uint32_t expire_ts, uint64_t timetag, std::string_view user_data)
214214
{
215215
_write_buf.resize(sizeof(uint32_t) + sizeof(uint64_t));
216216
_write_slices.clear();
@@ -258,7 +258,7 @@ class value_schema
258258
public:
259259
virtual ~value_schema() = default;
260260

261-
virtual std::unique_ptr<value_field> extract_field(absl::string_view value,
261+
virtual std::unique_ptr<value_field> extract_field(std::string_view value,
262262
value_field_type type) = 0;
263263
/// Extracts user value from the raw rocksdb value.
264264
/// In order to avoid data copy, the ownership of `raw_value` will be transferred

src/base/test/value_manager_test.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,15 +23,15 @@
2323
#include "base/value_schema_manager.h"
2424
#include "gtest/gtest.h"
2525
#include "pegasus_value_schema.h"
26-
#include "absl/strings/string_view.h"
26+
#include <string_view>
2727
#include "value_field.h"
2828

2929
using namespace pegasus;
3030

3131
extern std::string generate_value(value_schema *schema,
3232
uint32_t expire_ts,
3333
uint64_t time_tag,
34-
absl::string_view user_data);
34+
std::string_view user_data);
3535

3636
TEST(value_schema_manager, get_latest_value_schema)
3737
{

src/base/test/value_schema_test.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030
#include "base/value_schema_manager.h"
3131
#include "gtest/gtest.h"
3232
#include "utils/blob.h"
33-
#include "absl/strings/string_view.h"
33+
#include <string_view>
3434
#include "value_field.h"
3535

3636
using namespace pegasus;
@@ -52,7 +52,7 @@ uint64_t extract_time_tag(value_schema *schema, const std::string &raw_value)
5252
std::string generate_value(value_schema *schema,
5353
uint32_t expire_ts,
5454
uint64_t time_tag,
55-
absl::string_view user_data)
55+
std::string_view user_data)
5656
{
5757
std::string write_buf;
5858
std::vector<rocksdb::Slice> write_slices;

src/base/value_field.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,9 +56,9 @@ struct time_tag_field : public value_field
5656

5757
struct user_data_field : public value_field
5858
{
59-
explicit user_data_field(absl::string_view data) : user_data(data) {}
59+
explicit user_data_field(std::string_view data) : user_data(data) {}
6060
value_field_type type() { return value_field_type::USER_DATA; }
6161

62-
absl::string_view user_data;
62+
std::string_view user_data;
6363
};
6464
} // namespace pegasus

src/base/value_schema_manager.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
#include "value_schema_manager.h"
2121

22-
#include <absl/strings/string_view.h>
22+
#include <string_view>
2323
#include <iterator>
2424
#include <utility>
2525

@@ -47,7 +47,7 @@ void value_schema_manager::register_schema(std::unique_ptr<value_schema> schema)
4747
}
4848

4949
value_schema *value_schema_manager::get_value_schema(uint32_t meta_cf_data_version,
50-
absl::string_view value) const
50+
std::string_view value) const
5151
{
5252
dsn::data_input input(value);
5353
uint8_t first_byte = input.read_u8();

src/base/value_schema_manager.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626
#include "pegasus_value_schema.h"
2727
#include "utils/singleton.h"
28-
#include "absl/strings/string_view.h"
28+
#include <string_view>
2929

3030
namespace pegasus {
3131

@@ -35,7 +35,7 @@ class value_schema_manager : public dsn::utils::singleton<value_schema_manager>
3535
void register_schema(std::unique_ptr<value_schema> schema);
3636
/// using the raw value in rocksdb and data version stored in meta column family to get data
3737
/// version
38-
value_schema *get_value_schema(uint32_t meta_cf_data_version, absl::string_view value) const;
38+
value_schema *get_value_schema(uint32_t meta_cf_data_version, std::string_view value) const;
3939
value_schema *get_value_schema(uint32_t version) const;
4040
value_schema *get_latest_value_schema() const;
4141

src/base/value_schema_v0.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
#include "value_schema_v0.h"
2121

22-
#include <absl/strings/string_view.h>
22+
#include <string_view>
2323
#include <stdint.h>
2424
#include <string.h>
2525
#include <algorithm>
@@ -32,7 +32,7 @@
3232
#include "utils/ports.h"
3333

3434
namespace pegasus {
35-
std::unique_ptr<value_field> value_schema_v0::extract_field(absl::string_view value,
35+
std::unique_ptr<value_field> value_schema_v0::extract_field(std::string_view value,
3636
value_field_type type)
3737
{
3838
std::unique_ptr<value_field> field = nullptr;
@@ -80,14 +80,14 @@ rocksdb::SliceParts value_schema_v0::generate_value(const value_params &params)
8080
params.write_slices.clear();
8181
params.write_slices.emplace_back(params.write_buf.data(), params.write_buf.size());
8282

83-
absl::string_view user_data = data_field->user_data;
83+
std::string_view user_data = data_field->user_data;
8484
if (user_data.length() > 0) {
8585
params.write_slices.emplace_back(user_data.data(), user_data.length());
8686
}
8787
return {&params.write_slices[0], static_cast<int>(params.write_slices.size())};
8888
}
8989

90-
std::unique_ptr<value_field> value_schema_v0::extract_timestamp(absl::string_view value)
90+
std::unique_ptr<value_field> value_schema_v0::extract_timestamp(std::string_view value)
9191
{
9292
uint32_t expire_ts = dsn::data_input(value).read_u32();
9393
return std::make_unique<expire_timestamp_field>(expire_ts);

src/base/value_schema_v0.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525

2626
#include "pegasus_value_schema.h"
2727
#include "utils/blob.h"
28-
#include "absl/strings/string_view.h"
28+
#include <string_view>
2929
#include "value_field.h"
3030

3131
namespace pegasus {
@@ -37,15 +37,15 @@ class value_schema_v0 : public value_schema
3737
public:
3838
value_schema_v0() = default;
3939

40-
std::unique_ptr<value_field> extract_field(absl::string_view value,
40+
std::unique_ptr<value_field> extract_field(std::string_view value,
4141
value_field_type type) override;
4242
dsn::blob extract_user_data(std::string &&value) override;
4343
void update_field(std::string &value, std::unique_ptr<value_field> field) override;
4444
rocksdb::SliceParts generate_value(const value_params &params) override;
4545
data_version version() const override { return data_version::VERSION_0; }
4646

4747
private:
48-
std::unique_ptr<value_field> extract_timestamp(absl::string_view value);
48+
std::unique_ptr<value_field> extract_timestamp(std::string_view value);
4949
void update_expire_ts(std::string &value, std::unique_ptr<value_field> field);
5050
};
5151
} // namespace pegasus

src/base/value_schema_v1.cpp

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919

2020
#include "value_schema_v1.h"
2121

22-
#include <absl/strings/string_view.h>
22+
#include <string_view>
2323
#include <stdint.h>
2424
#include <string.h>
2525
#include <algorithm>
@@ -32,7 +32,7 @@
3232
#include "utils/ports.h"
3333

3434
namespace pegasus {
35-
std::unique_ptr<value_field> value_schema_v1::extract_field(absl::string_view value,
35+
std::unique_ptr<value_field> value_schema_v1::extract_field(std::string_view value,
3636
value_field_type type)
3737
{
3838
std::unique_ptr<value_field> field = nullptr;
@@ -88,20 +88,20 @@ rocksdb::SliceParts value_schema_v1::generate_value(const value_params &params)
8888
params.write_slices.clear();
8989
params.write_slices.emplace_back(params.write_buf.data(), params.write_buf.size());
9090

91-
absl::string_view user_data = data_field->user_data;
91+
std::string_view user_data = data_field->user_data;
9292
if (user_data.length() > 0) {
9393
params.write_slices.emplace_back(user_data.data(), user_data.length());
9494
}
9595
return {&params.write_slices[0], static_cast<int>(params.write_slices.size())};
9696
}
9797

98-
std::unique_ptr<value_field> value_schema_v1::extract_timestamp(absl::string_view value)
98+
std::unique_ptr<value_field> value_schema_v1::extract_timestamp(std::string_view value)
9999
{
100100
uint32_t expire_ts = dsn::data_input(value).read_u32();
101101
return std::make_unique<expire_timestamp_field>(expire_ts);
102102
}
103103

104-
std::unique_ptr<value_field> value_schema_v1::extract_time_tag(absl::string_view value)
104+
std::unique_ptr<value_field> value_schema_v1::extract_time_tag(std::string_view value)
105105
{
106106
dsn::data_input input(value);
107107
input.skip(sizeof(uint32_t));

0 commit comments

Comments
 (0)