Reformat the WebRTC code base
Running clang-format with chromium's style guide. The goal is n-fold: * providing consistency and readability (that's what code guidelines are for) * preventing noise with presubmit checks and git cl format * building on the previous point: making it easier to automatically fix format issues * you name it Please consider using git-hyper-blame to ignore this commit. Bug: webrtc:9340 Change-Id: I694567c4cdf8cee2860958cfe82bfaf25848bb87 Reviewed-on: https://webrtc-review.googlesource.com/81185 Reviewed-by: Patrik Höglund <phoglund@webrtc.org> Cr-Commit-Position: refs/heads/master@{#23660}
This commit is contained in:
@ -22,8 +22,10 @@ namespace rtc {
|
||||
// String Encoding Utilities
|
||||
/////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
size_t url_decode(char * buffer, size_t buflen,
|
||||
const char * source, size_t srclen) {
|
||||
size_t url_decode(char* buffer,
|
||||
size_t buflen,
|
||||
const char* source,
|
||||
size_t srclen) {
|
||||
if (nullptr == buffer)
|
||||
return srclen + 1;
|
||||
if (buflen <= 0)
|
||||
@ -35,11 +37,9 @@ size_t url_decode(char * buffer, size_t buflen,
|
||||
unsigned char ch = source[srcpos++];
|
||||
if (ch == '+') {
|
||||
buffer[bufpos++] = ' ';
|
||||
} else if ((ch == '%')
|
||||
&& (srcpos + 1 < srclen)
|
||||
&& hex_decode(source[srcpos], &h1)
|
||||
&& hex_decode(source[srcpos+1], &h2))
|
||||
{
|
||||
} else if ((ch == '%') && (srcpos + 1 < srclen) &&
|
||||
hex_decode(source[srcpos], &h1) &&
|
||||
hex_decode(source[srcpos + 1], &h2)) {
|
||||
buffer[bufpos++] = (h1 << 4) | h2;
|
||||
srcpos += 2;
|
||||
} else {
|
||||
@ -52,7 +52,7 @@ size_t url_decode(char * buffer, size_t buflen,
|
||||
|
||||
size_t utf8_decode(const char* source, size_t srclen, unsigned long* value) {
|
||||
const unsigned char* s = reinterpret_cast<const unsigned char*>(source);
|
||||
if ((s[0] & 0x80) == 0x00) { // Check s[0] == 0xxxxxxx
|
||||
if ((s[0] & 0x80) == 0x00) { // Check s[0] == 0xxxxxxx
|
||||
*value = s[0];
|
||||
return 1;
|
||||
}
|
||||
@ -62,7 +62,7 @@ size_t utf8_decode(const char* source, size_t srclen, unsigned long* value) {
|
||||
// Accumulate the trailer byte values in value16, and combine it with the
|
||||
// relevant bits from s[0], once we've determined the sequence length.
|
||||
unsigned long value16 = (s[1] & 0x3F);
|
||||
if ((s[0] & 0xE0) == 0xC0) { // Check s[0] == 110xxxxx
|
||||
if ((s[0] & 0xE0) == 0xC0) { // Check s[0] == 110xxxxx
|
||||
*value = ((s[0] & 0x1F) << 6) | value16;
|
||||
return 2;
|
||||
}
|
||||
@ -70,7 +70,7 @@ size_t utf8_decode(const char* source, size_t srclen, unsigned long* value) {
|
||||
return 0;
|
||||
}
|
||||
value16 = (value16 << 6) | (s[2] & 0x3F);
|
||||
if ((s[0] & 0xF0) == 0xE0) { // Check s[0] == 1110xxxx
|
||||
if ((s[0] & 0xF0) == 0xE0) { // Check s[0] == 1110xxxx
|
||||
*value = ((s[0] & 0x0F) << 12) | value16;
|
||||
return 3;
|
||||
}
|
||||
@ -78,7 +78,7 @@ size_t utf8_decode(const char* source, size_t srclen, unsigned long* value) {
|
||||
return 0;
|
||||
}
|
||||
value16 = (value16 << 6) | (s[3] & 0x3F);
|
||||
if ((s[0] & 0xF8) == 0xF0) { // Check s[0] == 11110xxx
|
||||
if ((s[0] & 0xF8) == 0xF0) { // Check s[0] == 11110xxx
|
||||
*value = ((s[0] & 0x07) << 18) | value16;
|
||||
return 4;
|
||||
}
|
||||
@ -131,13 +131,17 @@ bool hex_decode(char ch, unsigned char* val) {
|
||||
return true;
|
||||
}
|
||||
|
||||
size_t hex_encode(char* buffer, size_t buflen,
|
||||
const char* csource, size_t srclen) {
|
||||
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);
|
||||
}
|
||||
|
||||
size_t hex_encode_with_delimiter(char* buffer, size_t buflen,
|
||||
const char* csource, size_t srclen,
|
||||
size_t hex_encode_with_delimiter(char* buffer,
|
||||
size_t buflen,
|
||||
const char* csource,
|
||||
size_t srclen,
|
||||
char delimiter) {
|
||||
RTC_DCHECK(buffer); // TODO(kwiberg): estimate output size
|
||||
if (buflen == 0)
|
||||
@ -153,8 +157,8 @@ size_t hex_encode_with_delimiter(char* buffer, size_t buflen,
|
||||
|
||||
while (srcpos < srclen) {
|
||||
unsigned char ch = bsource[srcpos++];
|
||||
buffer[bufpos ] = hex_encode((ch >> 4) & 0xF);
|
||||
buffer[bufpos+1] = hex_encode((ch ) & 0xF);
|
||||
buffer[bufpos] = hex_encode((ch >> 4) & 0xF);
|
||||
buffer[bufpos + 1] = hex_encode((ch)&0xF);
|
||||
bufpos += 2;
|
||||
|
||||
// Don't write a delimiter after the last byte.
|
||||
@ -177,23 +181,28 @@ std::string hex_encode(const char* source, size_t srclen) {
|
||||
return hex_encode_with_delimiter(source, srclen, 0);
|
||||
}
|
||||
|
||||
std::string hex_encode_with_delimiter(const char* source, size_t srclen,
|
||||
std::string hex_encode_with_delimiter(const char* source,
|
||||
size_t srclen,
|
||||
char delimiter) {
|
||||
const size_t kBufferSize = srclen * 3;
|
||||
char* buffer = STACK_ARRAY(char, kBufferSize);
|
||||
size_t length = hex_encode_with_delimiter(buffer, kBufferSize,
|
||||
source, srclen, delimiter);
|
||||
size_t length =
|
||||
hex_encode_with_delimiter(buffer, kBufferSize, source, srclen, delimiter);
|
||||
RTC_DCHECK(srclen == 0 || length > 0);
|
||||
return std::string(buffer, length);
|
||||
}
|
||||
|
||||
size_t hex_decode(char * cbuffer, size_t buflen,
|
||||
const char * source, size_t srclen) {
|
||||
size_t hex_decode(char* cbuffer,
|
||||
size_t buflen,
|
||||
const char* source,
|
||||
size_t srclen) {
|
||||
return hex_decode_with_delimiter(cbuffer, buflen, source, srclen, 0);
|
||||
}
|
||||
|
||||
size_t hex_decode_with_delimiter(char* cbuffer, size_t buflen,
|
||||
const char* source, size_t srclen,
|
||||
size_t hex_decode_with_delimiter(char* cbuffer,
|
||||
size_t buflen,
|
||||
const char* source,
|
||||
size_t srclen,
|
||||
char delimiter) {
|
||||
RTC_DCHECK(cbuffer); // TODO(kwiberg): estimate output size
|
||||
if (buflen == 0)
|
||||
@ -234,13 +243,17 @@ size_t hex_decode_with_delimiter(char* cbuffer, size_t buflen,
|
||||
size_t hex_decode(char* buffer, size_t buflen, const std::string& source) {
|
||||
return hex_decode_with_delimiter(buffer, buflen, source, 0);
|
||||
}
|
||||
size_t hex_decode_with_delimiter(char* buffer, size_t buflen,
|
||||
const std::string& source, char delimiter) {
|
||||
return hex_decode_with_delimiter(buffer, buflen,
|
||||
source.c_str(), source.length(), delimiter);
|
||||
size_t hex_decode_with_delimiter(char* buffer,
|
||||
size_t buflen,
|
||||
const std::string& source,
|
||||
char delimiter) {
|
||||
return hex_decode_with_delimiter(buffer, buflen, source.c_str(),
|
||||
source.length(), delimiter);
|
||||
}
|
||||
|
||||
size_t transform(std::string& value, size_t maxlen, const std::string& source,
|
||||
size_t transform(std::string& value,
|
||||
size_t maxlen,
|
||||
const std::string& source,
|
||||
Transform t) {
|
||||
char* buffer = STACK_ARRAY(char, maxlen + 1);
|
||||
size_t length = t(buffer, maxlen + 1, source.data(), source.length());
|
||||
@ -249,15 +262,17 @@ size_t transform(std::string& value, size_t maxlen, const std::string& source,
|
||||
}
|
||||
|
||||
std::string s_transform(const std::string& source, Transform t) {
|
||||
// Ask transformation function to approximate the destination size (returns upper bound)
|
||||
// Ask transformation function to approximate the destination size (returns
|
||||
// upper bound)
|
||||
size_t maxlen = t(nullptr, 0, source.data(), source.length());
|
||||
char * buffer = STACK_ARRAY(char, maxlen);
|
||||
char* buffer = STACK_ARRAY(char, maxlen);
|
||||
size_t len = t(buffer, maxlen, source.data(), source.length());
|
||||
std::string result(buffer, len);
|
||||
return result;
|
||||
}
|
||||
|
||||
size_t tokenize(const std::string& source, char delimiter,
|
||||
size_t tokenize(const std::string& source,
|
||||
char delimiter,
|
||||
std::vector<std::string>* fields) {
|
||||
fields->clear();
|
||||
size_t last = 0;
|
||||
@ -290,9 +305,11 @@ size_t tokenize_with_empty_tokens(const std::string& source,
|
||||
return fields->size();
|
||||
}
|
||||
|
||||
size_t tokenize_append(const std::string& source, char delimiter,
|
||||
size_t tokenize_append(const std::string& source,
|
||||
char delimiter,
|
||||
std::vector<std::string>* fields) {
|
||||
if (!fields) return 0;
|
||||
if (!fields)
|
||||
return 0;
|
||||
|
||||
std::vector<std::string> new_fields;
|
||||
tokenize(source, delimiter, &new_fields);
|
||||
@ -300,15 +317,20 @@ size_t tokenize_append(const std::string& source, char delimiter,
|
||||
return fields->size();
|
||||
}
|
||||
|
||||
size_t tokenize(const std::string& source, char delimiter, char start_mark,
|
||||
char end_mark, std::vector<std::string>* fields) {
|
||||
if (!fields) return 0;
|
||||
size_t tokenize(const std::string& source,
|
||||
char delimiter,
|
||||
char start_mark,
|
||||
char end_mark,
|
||||
std::vector<std::string>* fields) {
|
||||
if (!fields)
|
||||
return 0;
|
||||
fields->clear();
|
||||
|
||||
std::string remain_source = source;
|
||||
while (!remain_source.empty()) {
|
||||
size_t start_pos = remain_source.find(start_mark);
|
||||
if (std::string::npos == start_pos) break;
|
||||
if (std::string::npos == start_pos)
|
||||
break;
|
||||
std::string pre_mark;
|
||||
if (start_pos > 0) {
|
||||
pre_mark = remain_source.substr(0, start_pos - 1);
|
||||
@ -316,7 +338,8 @@ size_t tokenize(const std::string& source, char delimiter, char start_mark,
|
||||
|
||||
++start_pos;
|
||||
size_t end_pos = remain_source.find(end_mark, start_pos);
|
||||
if (std::string::npos == end_pos) break;
|
||||
if (std::string::npos == end_pos)
|
||||
break;
|
||||
|
||||
// We have found the matching marks. First tokenize the pre-mask. Then add
|
||||
// the marked part as a single field. Finally, loop back for the post-mark.
|
||||
@ -371,7 +394,8 @@ std::string join(const std::vector<std::string>& source, char delimiter) {
|
||||
return joined_string;
|
||||
}
|
||||
|
||||
size_t split(const std::string& source, char delimiter,
|
||||
size_t split(const std::string& source,
|
||||
char delimiter,
|
||||
std::vector<std::string>* fields) {
|
||||
RTC_DCHECK(fields);
|
||||
fields->clear();
|
||||
|
||||
Reference in New Issue
Block a user