29 maxlen = initialAllocatedLength;
39 if (
chars !=
nullptr) {
99 if (this->
chars !=
nullptr) {
110 if (this->
chars !=
nullptr) {
111 for (
int j = 0; j <
len; j++) {
125 for (
size_t i = 0; i <
len; i++) {
127 new_size += strlen(temp);
130 char result[new_size + 1];
131 memset(result,0, new_size+1);
132 for (
size_t i = 0; i <
len; i++) {
134 strcat(result, temp);
138 strcpy(
chars, result);
139 this->len = strlen(temp);
146 size_t result_idx = 0;
148 if (
chars[i] ==
'%') {
149 szTemp[0] =
chars[i + 1];
150 szTemp[1] =
chars[i + 2];
153 }
else if (
chars[i] ==
'+') {
154 chars[result_idx] =
' ';
162 chars[result_idx] = 0;
163 this->
len = result_idx;
200 bool grow(
int newMaxLen)
override {
202 assert(newMaxLen < 1024 * 10);
203 if (newMaxLen < 0)
return false;
206 LOGD(
"grow(%d)", newMaxLen);
220 snprintf(result, maxLen,
"%c", c);
221 }
else if (isspace(c)) {
222 snprintf(result, maxLen,
"%s",
"+");
224 snprintf(result, maxLen,
"%%%X%X", c >> 4, c % 16);
229 if (ch >=
'0' && ch <=
'9') {
230 return (
char)(ch -
'0');
232 if (ch >=
'a' && ch <=
'f') {
233 return (
char)(ch -
'a' + 10);
235 if (ch >=
'A' && ch <=
'F') {
236 return (
char)(ch -
'A' + 10);
246 ch = (szBuffer[0] << 4) | szBuffer[1];
#define LOGD(...)
Definition AudioLoggerIDF.h:27
#define assert(T)
Definition avr.h:10