Remove hex_encode functions with raw buffer output from the header file

Moved into the anonymous namespace in string_encode.cc.

Bug: webrtc:6424
Change-Id: I5e8ea0f02c94d6de82ca4f875d16862eb2db3d2b
Reviewed-on: https://webrtc-review.googlesource.com/c/src/+/138073
Reviewed-by: Karl Wiberg <kwiberg@webrtc.org>
Commit-Queue: Niels Moller <nisse@webrtc.org>
Cr-Commit-Position: refs/heads/master@{#28034}
diff --git a/rtc_base/string_encode.cc b/rtc_base/string_encode.cc
index 85c7a3f..7b2eda7 100644
--- a/rtc_base/string_encode.cc
+++ b/rtc_base/string_encode.cc
@@ -22,13 +22,16 @@
 // String Encoding Utilities
 /////////////////////////////////////////////////////////////////////////////
 
-static const char HEX[] = "0123456789abcdef";
+namespace {
+const char HEX[] = "0123456789abcdef";
 
+// Convert an unsigned value from 0 to 15 to the hex character equivalent...
 char hex_encode(unsigned char val) {
   RTC_DCHECK_LT(val, 16);
   return (val < 16) ? HEX[val] : '!';
 }
 
+// ...and vice-versa.
 bool hex_decode(char ch, unsigned char* val) {
   if ((ch >= '0') && (ch <= '9')) {
     *val = ch - '0';
@@ -42,13 +45,9 @@
   return true;
 }
 
-size_t hex_encode(char* buffer,
-                  size_t buflen,
-                  const char* csource,
-                  size_t srclen) {
-  return hex_encode_with_delimiter(buffer, buflen, csource, srclen, 0);
-}
-
+// hex_encode, but separate each byte representation with a delimiter.
+// |delimiter| == 0 means no delimiter
+// If the buffer is too short, we return 0
 size_t hex_encode_with_delimiter(char* buffer,
                                  size_t buflen,
                                  const char* csource,
@@ -84,6 +83,8 @@
   return bufpos;
 }
 
+}  // namespace
+
 std::string hex_encode(const std::string& str) {
   return hex_encode(str.c_str(), str.size());
 }