Add support for unsigned parameters in FieldTrialParser

Bug: webrtc:10932
Change-Id: I3f56244a6be532065e4096cf1a289e27a032bc44
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/150886
Commit-Queue: Björn Terelius <terelius@webrtc.org>
Reviewed-by: Sebastian Jansson <srte@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#29018}
diff --git a/rtc_base/experiments/struct_parameters_parser.cc b/rtc_base/experiments/struct_parameters_parser.cc
index 24058b5..2605da8 100644
--- a/rtc_base/experiments/struct_parameters_parser.cc
+++ b/rtc_base/experiments/struct_parameters_parser.cc
@@ -9,6 +9,8 @@
  */
 #include "rtc_base/experiments/struct_parameters_parser.h"
 
+#include <algorithm>
+
 #include "rtc_base/logging.h"
 
 namespace webrtc {
@@ -31,6 +33,9 @@
 inline void StringEncode(std::string* target, int val) {
   *target += rtc::ToString(val);
 }
+inline void StringEncode(std::string* target, unsigned val) {
+  *target += rtc::ToString(val);
+}
 inline void StringEncode(std::string* target, DataRate val) {
   *target += webrtc::ToString(val);
 }
@@ -62,8 +67,10 @@
 template class TypedParser<bool>;
 template class TypedParser<double>;
 template class TypedParser<int>;
+template class TypedParser<unsigned>;
 template class TypedParser<absl::optional<double>>;
 template class TypedParser<absl::optional<int>>;
+template class TypedParser<absl::optional<unsigned>>;
 
 template class TypedParser<DataRate>;
 template class TypedParser<DataSize>;