Remove call operator from UniqueIdGenerator classes
Call operators do not improve code clarity, and usage was moderate.
Bug: None
Change-Id: I8d86bd7d435ce88e99f4abee8ab95a336d47dc22
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/292960
Reviewed-by: Tomas Gunnarsson <tommi@webrtc.org>
Commit-Queue: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#39294}
diff --git a/pc/peer_connection.cc b/pc/peer_connection.cc
index f318acf..88b99bb 100644
--- a/pc/peer_connection.cc
+++ b/pc/peer_connection.cc
@@ -1092,7 +1092,7 @@
if (parameters.encodings.size() > 1 && num_rids == 0) {
rtc::UniqueStringGenerator rid_generator;
for (RtpEncodingParameters& encoding : parameters.encodings) {
- encoding.rid = rid_generator();
+ encoding.rid = rid_generator.GenerateString();
}
}
diff --git a/pc/peer_connection_simulcast_unittest.cc b/pc/peer_connection_simulcast_unittest.cc
index 54b4930..98179f9 100644
--- a/pc/peer_connection_simulcast_unittest.cc
+++ b/pc/peer_connection_simulcast_unittest.cc
@@ -117,7 +117,7 @@
rtc::UniqueStringGenerator rid_generator;
std::vector<std::string> rids;
for (int i = 0; i < num_layers; ++i) {
- rids.push_back(rid_generator());
+ rids.push_back(rid_generator.GenerateString());
}
return CreateLayers(rids, active);
}
diff --git a/rtc_base/unique_id_generator.h b/rtc_base/unique_id_generator.h
index 342dad7..d103caf 100644
--- a/rtc_base/unique_id_generator.h
+++ b/rtc_base/unique_id_generator.h
@@ -44,7 +44,9 @@
// If there are no available numbers to generate, this method will fail
// with an `RTC_CHECK`.
TIntegral GenerateNumber();
- TIntegral operator()() { return GenerateNumber(); }
+
+ // Alias for GenerateId, used for allowing typed testing
+ TIntegral Generate() { return GenerateNumber(); }
// Adds an id that this generator should no longer generate.
// Return value indicates whether the ID was hitherto unknown.
@@ -74,7 +76,9 @@
// This method becomes more expensive with each use, as the probability of
// collision for the randomly generated numbers increases.
uint32_t GenerateId();
- uint32_t operator()() { return GenerateId(); }
+
+ // Alias for GenerateId, used for allowing typed testing
+ uint32_t Generate() { return GenerateId(); }
// Adds an id that this generator should no longer generate.
// Return value indicates whether the ID was hitherto unknown.
@@ -100,7 +104,8 @@
~UniqueStringGenerator();
std::string GenerateString();
- std::string operator()() { return GenerateString(); }
+ // Alias for GenerateString, used for allowing typed testing
+ std::string Generate() { return GenerateString(); }
// Adds an id that this generator should no longer generate.
// Return value indicates whether the ID was hitherto unknown.
diff --git a/rtc_base/unique_id_generator_unittest.cc b/rtc_base/unique_id_generator_unittest.cc
index c6eb511..ec9c3fb 100644
--- a/rtc_base/unique_id_generator_unittest.cc
+++ b/rtc_base/unique_id_generator_unittest.cc
@@ -62,7 +62,7 @@
Generator generator;
std::vector<typename Generator::value_type> values;
for (size_t i = 0; i < num_elements; i++) {
- values.push_back(generator());
+ values.push_back(generator.Generate());
}
EXPECT_EQ(num_elements, values.size());
@@ -78,7 +78,7 @@
Generator generator1;
std::vector<typename Generator::value_type> known_values;
for (size_t i = 0; i < num_elements; i++) {
- known_values.push_back(generator1());
+ known_values.push_back(generator1.Generate());
}
EXPECT_EQ(num_elements, known_values.size());
@@ -87,7 +87,7 @@
std::vector<typename Generator::value_type> values;
for (size_t i = 0; i < num_elements; i++) {
- values.push_back(generator2());
+ values.push_back(generator2.Generate());
}
EXPECT_THAT(values, ::testing::SizeIs(num_elements));
absl::c_sort(values);
@@ -105,7 +105,7 @@
Generator generator1;
std::vector<typename Generator::value_type> known_values;
for (size_t i = 0; i < num_elements; i++) {
- known_values.push_back(generator1());
+ known_values.push_back(generator1.Generate());
}
EXPECT_EQ(num_elements, known_values.size());
@@ -118,7 +118,7 @@
std::vector<typename Generator::value_type> values;
for (size_t i = 0; i < num_elements; i++) {
- values.push_back(generator2());
+ values.push_back(generator2.Generate());
}
EXPECT_THAT(values, ::testing::SizeIs(num_elements));
absl::c_sort(values);
@@ -134,7 +134,7 @@
rtc::InitRandom(0);
Generator generator1;
- const typename Generator::value_type id = generator1();
+ const typename Generator::value_type id = generator1.Generate();
rtc::InitRandom(0);
Generator generator2;
@@ -146,7 +146,7 @@
rtc::InitRandom(0);
Generator generator1;
- const typename Generator::value_type id = generator1();
+ const typename Generator::value_type id = generator1.Generate();
rtc::InitRandom(0);
Generator generator2;
@@ -160,7 +160,7 @@
rtc::InitRandom(0);
Generator generator1;
- const typename Generator::value_type id = generator1();
+ const typename Generator::value_type id = generator1.Generate();
std::vector<typename Generator::value_type> known_values = {id};
rtc::InitRandom(0);
@@ -182,7 +182,7 @@
ASSERT_NE(current_tq, webrtc::TaskQueueBase::Current());
// Generating an id should be fine in this context.
- generator.GenerateNumber();
+ generator.Generate();
}
#if RTC_DCHECK_IS_ON && GTEST_HAS_DEATH_TEST && !defined(WEBRTC_ANDROID)
@@ -196,13 +196,13 @@
FakeTaskQueue initial_fake_task_queue;
// Generate an ID on the current thread. This causes the generator to attach
// to the current thread context.
- generator.GenerateNumber();
+ generator.Generate();
// Instantiate a fake task queue that will register itself as the current tq.
FakeTaskQueue fake_task_queue;
// Attempting to generate an id should now trigger a dcheck.
- EXPECT_DEATH(generator.GenerateNumber(), "");
+ EXPECT_DEATH(generator.Generate(), "");
}
#endif
diff --git a/video/video_send_stream_tests.cc b/video/video_send_stream_tests.cc
index 7b33ca2..038ae80 100644
--- a/video/video_send_stream_tests.cc
+++ b/video/video_send_stream_tests.cc
@@ -3786,7 +3786,8 @@
}
// Want send side, not present by default, so add it.
send_config->rtp.extensions.emplace_back(
- RtpExtension::kTransportSequenceNumberUri, unique_id_generator());
+ RtpExtension::kTransportSequenceNumberUri,
+ unique_id_generator.GenerateNumber());
}
// ALR only enabled for screenshare.