Move string_to_number.h to webrtc namespace
Bug: webrtc:42232595
Change-Id: I104cff12bf40509fb4554b98f7af16975263285a
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/377520
Commit-Queue: Evan Shrubsole <eshr@webrtc.org>
Reviewed-by: Harald Alvestrand <hta@webrtc.org>
Cr-Commit-Position: refs/heads/main@{#43911}
diff --git a/api/audio_codecs/L16/audio_encoder_L16.cc b/api/audio_codecs/L16/audio_encoder_L16.cc
index 3bbaa79..2010a90 100644
--- a/api/audio_codecs/L16/audio_encoder_L16.cc
+++ b/api/audio_codecs/L16/audio_encoder_L16.cc
@@ -43,7 +43,7 @@
config.num_channels = rtc::dchecked_cast<int>(format.num_channels);
auto ptime_iter = format.parameters.find("ptime");
if (ptime_iter != format.parameters.end()) {
- const auto ptime = rtc::StringToNumber<int>(ptime_iter->second);
+ const auto ptime = StringToNumber<int>(ptime_iter->second);
if (ptime && *ptime > 0) {
config.frame_size_ms = rtc::SafeClamp(10 * (*ptime / 10), 10, 60);
}
diff --git a/api/audio_codecs/g711/audio_encoder_g711.cc b/api/audio_codecs/g711/audio_encoder_g711.cc
index aa676a2..e36d2f9 100644
--- a/api/audio_codecs/g711/audio_encoder_g711.cc
+++ b/api/audio_codecs/g711/audio_encoder_g711.cc
@@ -44,7 +44,7 @@
config.frame_size_ms = 20;
auto ptime_iter = format.parameters.find("ptime");
if (ptime_iter != format.parameters.end()) {
- const auto ptime = rtc::StringToNumber<int>(ptime_iter->second);
+ const auto ptime = StringToNumber<int>(ptime_iter->second);
if (ptime && *ptime > 0) {
config.frame_size_ms = rtc::SafeClamp(10 * (*ptime / 10), 10, 60);
}
diff --git a/api/audio_codecs/g722/audio_encoder_g722.cc b/api/audio_codecs/g722/audio_encoder_g722.cc
index 6c932ef..80387a1 100644
--- a/api/audio_codecs/g722/audio_encoder_g722.cc
+++ b/api/audio_codecs/g722/audio_encoder_g722.cc
@@ -43,7 +43,7 @@
config.num_channels = rtc::checked_cast<int>(format.num_channels);
auto ptime_iter = format.parameters.find("ptime");
if (ptime_iter != format.parameters.end()) {
- auto ptime = rtc::StringToNumber<int>(ptime_iter->second);
+ auto ptime = StringToNumber<int>(ptime_iter->second);
if (ptime && *ptime > 0) {
const int whole_packets = *ptime / 10;
config.frame_size_ms = rtc::SafeClamp<int>(whole_packets * 10, 10, 60);
diff --git a/api/video_codecs/av1_profile.cc b/api/video_codecs/av1_profile.cc
index 177ebf0..247790d 100644
--- a/api/video_codecs/av1_profile.cc
+++ b/api/video_codecs/av1_profile.cc
@@ -35,7 +35,7 @@
}
std::optional<AV1Profile> StringToAV1Profile(absl::string_view str) {
- const std::optional<int> i = rtc::StringToNumber<int>(str);
+ const std::optional<int> i = StringToNumber<int>(str);
if (!i.has_value())
return std::nullopt;
diff --git a/api/video_codecs/h265_profile_tier_level.cc b/api/video_codecs/h265_profile_tier_level.cc
index 92ea0c8..f63321a 100644
--- a/api/video_codecs/h265_profile_tier_level.cc
+++ b/api/video_codecs/h265_profile_tier_level.cc
@@ -66,7 +66,7 @@
// Annex A of https://www.itu.int/rec/T-REC-H.265 (08/21), section A.3.
std::optional<H265Profile> StringToH265Profile(const std::string& profile) {
- std::optional<int> i = rtc::StringToNumber<int>(profile);
+ std::optional<int> i = StringToNumber<int>(profile);
if (!i.has_value()) {
return std::nullopt;
}
@@ -102,7 +102,7 @@
// Annex A of https://www.itu.int/rec/T-REC-H.265 (08/21), section A.4,
// tiers and levels.
std::optional<H265Tier> StringToH265Tier(const std::string& tier) {
- std::optional<int> i = rtc::StringToNumber<int>(tier);
+ std::optional<int> i = StringToNumber<int>(tier);
if (!i.has_value()) {
return std::nullopt;
}
@@ -118,7 +118,7 @@
}
std::optional<H265Level> StringToH265Level(const std::string& level) {
- const std::optional<int> i = rtc::StringToNumber<int>(level);
+ const std::optional<int> i = StringToNumber<int>(level);
if (!i.has_value())
return std::nullopt;
diff --git a/api/video_codecs/vp9_profile.cc b/api/video_codecs/vp9_profile.cc
index a00849d..ef9ab7e 100644
--- a/api/video_codecs/vp9_profile.cc
+++ b/api/video_codecs/vp9_profile.cc
@@ -38,7 +38,7 @@
}
std::optional<VP9Profile> StringToVP9Profile(const std::string& str) {
- const std::optional<int> i = rtc::StringToNumber<int>(str);
+ const std::optional<int> i = StringToNumber<int>(str);
if (!i.has_value())
return std::nullopt;
diff --git a/media/base/sdp_video_format_utils.cc b/media/base/sdp_video_format_utils.cc
index c76afad..6a79531 100644
--- a/media/base/sdp_video_format_utils.cc
+++ b/media/base/sdp_video_format_utils.cc
@@ -64,8 +64,7 @@
if (max_frame_rate_it == params.end())
return std::nullopt;
- const std::optional<int> i =
- rtc::StringToNumber<int>(max_frame_rate_it->second);
+ const std::optional<int> i = StringToNumber<int>(max_frame_rate_it->second);
if (!i.has_value() || i.value() <= 0)
return std::nullopt;
return i;
diff --git a/modules/audio_coding/codecs/opus/audio_coder_opus_common.cc b/modules/audio_coding/codecs/opus/audio_coder_opus_common.cc
index 7e127cc..486f3a9 100644
--- a/modules/audio_coding/codecs/opus/audio_coder_opus_common.cc
+++ b/modules/audio_coding/codecs/opus/audio_coder_opus_common.cc
@@ -39,7 +39,7 @@
: (next_comma - pos);
auto substring_with_number =
comma_separated_list.substr(pos, distance_to_next_comma);
- auto conv = rtc::StringToNumber<int>(substring_with_number);
+ auto conv = StringToNumber<int>(substring_with_number);
if (!conv.has_value()) {
return std::nullopt;
}
diff --git a/modules/audio_coding/codecs/opus/audio_coder_opus_common.h b/modules/audio_coding/codecs/opus/audio_coder_opus_common.h
index 708ae4a..320b5918 100644
--- a/modules/audio_coding/codecs/opus/audio_coder_opus_common.h
+++ b/modules/audio_coding/codecs/opus/audio_coder_opus_common.h
@@ -29,7 +29,7 @@
template <typename T>
std::optional<T> GetFormatParameter(const SdpAudioFormat& format,
absl::string_view param) {
- return rtc::StringToNumber<T>(GetFormatParameter(format, param).value_or(""));
+ return StringToNumber<T>(GetFormatParameter(format, param).value_or(""));
}
template <>
diff --git a/modules/audio_coding/codecs/opus/audio_encoder_multi_channel_opus_impl.cc b/modules/audio_coding/codecs/opus/audio_encoder_multi_channel_opus_impl.cc
index 45f3be1..f669b8d 100644
--- a/modules/audio_coding/codecs/opus/audio_encoder_multi_channel_opus_impl.cc
+++ b/modules/audio_coding/codecs/opus/audio_encoder_multi_channel_opus_impl.cc
@@ -108,7 +108,7 @@
CalculateDefaultBitrate(max_playback_rate_hz, num_channels);
if (bitrate_param) {
- const auto bitrate = rtc::StringToNumber<int>(*bitrate_param);
+ const auto bitrate = StringToNumber<int>(*bitrate_param);
if (bitrate) {
const int chosen_bitrate =
std::max(AudioEncoderOpusConfig::kMinBitrateBps,
diff --git a/modules/audio_coding/codecs/opus/audio_encoder_opus.cc b/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
index 83f3560..4bf81ff 100644
--- a/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
+++ b/modules/audio_coding/codecs/opus/audio_encoder_opus.cc
@@ -94,7 +94,7 @@
CalculateDefaultBitrate(max_playback_rate_hz, num_channels);
if (bitrate_param) {
- const auto bitrate = rtc::StringToNumber<int>(*bitrate_param);
+ const auto bitrate = StringToNumber<int>(*bitrate_param);
if (bitrate) {
const int chosen_bitrate =
std::max(AudioEncoderOpusConfig::kMinBitrateBps,
diff --git a/modules/audio_processing/test/conversational_speech/timing.cc b/modules/audio_processing/test/conversational_speech/timing.cc
index 95ec9f5..189e6e9 100644
--- a/modules/audio_processing/test/conversational_speech/timing.cc
+++ b/modules/audio_processing/test/conversational_speech/timing.cc
@@ -35,10 +35,10 @@
RTC_CHECK_LE(fields.size(), 4);
int gain = 0;
if (fields.size() == 4) {
- gain = rtc::StringToNumber<int>(fields[3]).value_or(0);
+ gain = StringToNumber<int>(fields[3]).value_or(0);
}
return Turn(fields[0], fields[1],
- rtc::StringToNumber<int>(fields[2]).value_or(0), gain);
+ StringToNumber<int>(fields[2]).value_or(0), gain);
};
// Init.
diff --git a/pc/ice_server_parsing.cc b/pc/ice_server_parsing.cc
index bceb1f0..60e5a83 100644
--- a/pc/ice_server_parsing.cc
+++ b/pc/ice_server_parsing.cc
@@ -96,7 +96,7 @@
return false;
}
}
- return rtc::StringToNumber<int>(in_str);
+ return StringToNumber<int>(in_str);
}
// This method parses IPv6 and IPv4 literal strings, along with hostnames in
diff --git a/pc/simulcast_sdp_serializer.cc b/pc/simulcast_sdp_serializer.cc
index 521ec4e..750a2d0 100644
--- a/pc/simulcast_sdp_serializer.cc
+++ b/pc/simulcast_sdp_serializer.cc
@@ -164,7 +164,7 @@
}
for (const std::string& payload_type : string_payloads) {
- std::optional<int> value = rtc::StringToNumber<int>(payload_type);
+ std::optional<int> value = StringToNumber<int>(payload_type);
if (!value.has_value()) {
return ParseError("Invalid payload type: " + payload_type);
}
diff --git a/rtc_base/string_encode.h b/rtc_base/string_encode.h
index 836f236..4625ba7 100644
--- a/rtc_base/string_encode.h
+++ b/rtc_base/string_encode.h
@@ -96,7 +96,7 @@
int>::type = 0>
static bool FromString(absl::string_view s, T* t) {
RTC_DCHECK(t);
- std::optional<T> result = StringToNumber<T>(s);
+ std::optional<T> result = webrtc::StringToNumber<T>(s);
if (result)
*t = *result;
diff --git a/rtc_base/string_to_number.cc b/rtc_base/string_to_number.cc
index b02288b..e88c97a 100644
--- a/rtc_base/string_to_number.cc
+++ b/rtc_base/string_to_number.cc
@@ -17,7 +17,7 @@
#include "rtc_base/checks.h"
-namespace rtc {
+namespace webrtc {
namespace string_to_number_internal {
std::optional<signed_type> ParseSigned(absl::string_view str, int base) {
@@ -101,4 +101,4 @@
template std::optional<long double> ParseFloatingPoint(absl::string_view str);
} // namespace string_to_number_internal
-} // namespace rtc
+} // namespace webrtc
diff --git a/rtc_base/string_to_number.h b/rtc_base/string_to_number.h
index d6e3b38..5ae3ce0 100644
--- a/rtc_base/string_to_number.h
+++ b/rtc_base/string_to_number.h
@@ -18,7 +18,7 @@
#include "absl/strings/string_view.h"
-namespace rtc {
+namespace webrtc {
// This file declares a family of functions to parse integers from strings.
// The standard C library functions either fail to indicate errors (atoi, etc.)
@@ -100,6 +100,12 @@
return string_to_number_internal::ParseFloatingPoint<T>(str);
}
+} // namespace webrtc
+
+// Re-export symbols from the webrtc namespace for backwards compatibility.
+// TODO(bugs.webrtc.org/4222596): Remove once all references are updated.
+namespace rtc {
+using ::webrtc::StringToNumber;
} // namespace rtc
#endif // RTC_BASE_STRING_TO_NUMBER_H_
diff --git a/rtc_base/string_to_number_unittest.cc b/rtc_base/string_to_number_unittest.cc
index 0c6164d..77b1437 100644
--- a/rtc_base/string_to_number_unittest.cc
+++ b/rtc_base/string_to_number_unittest.cc
@@ -19,7 +19,7 @@
#include "absl/strings/string_view.h"
#include "test/gtest.h"
-namespace rtc {
+namespace webrtc {
namespace {
// clang-format off
@@ -135,4 +135,4 @@
EXPECT_EQ(std::nullopt, StringToNumber<int8_t>("-256"));
}
-} // namespace rtc
+} // namespace webrtc
diff --git a/rtc_base/unique_id_generator.cc b/rtc_base/unique_id_generator.cc
index b29f4c6..8d95821 100644
--- a/rtc_base/unique_id_generator.cc
+++ b/rtc_base/unique_id_generator.cc
@@ -60,7 +60,7 @@
// TODO(webrtc:13579): remove string copy here once absl::string_view version
// of StringToNumber is available.
std::optional<uint32_t> int_value =
- StringToNumber<uint32_t>(std::string(value));
+ webrtc::StringToNumber<uint32_t>(std::string(value));
// The underlying generator works for uint32_t values, so if the provided
// value is not a uint32_t it will never be generated anyway.
if (int_value.has_value()) {
diff --git a/rtc_tools/video_file_reader.cc b/rtc_tools/video_file_reader.cc
index 5ec2bfd..68c371a 100644
--- a/rtc_tools/video_file_reader.cc
+++ b/rtc_tools/video_file_reader.cc
@@ -155,10 +155,10 @@
const std::string suffix = field.substr(1);
switch (prefix) {
case 'W':
- width = rtc::StringToNumber<int>(suffix);
+ width = StringToNumber<int>(suffix);
break;
case 'H':
- height = rtc::StringToNumber<int>(suffix);
+ height = StringToNumber<int>(suffix);
break;
case 'C':
if (suffix != "420" && suffix != "420mpeg2") {
@@ -173,10 +173,9 @@
std::vector<std::string> fraction;
rtc::tokenize(suffix, ':', &fraction);
if (fraction.size() == 2) {
- const std::optional<int> numerator =
- rtc::StringToNumber<int>(fraction[0]);
+ const std::optional<int> numerator = StringToNumber<int>(fraction[0]);
const std::optional<int> denominator =
- rtc::StringToNumber<int>(fraction[1]);
+ StringToNumber<int>(fraction[1]);
if (numerator && denominator && *denominator != 0)
fps = *numerator / static_cast<float>(*denominator);
break;