Merge pull request #230 from vDorst/refactor_is_word

Refactor is_word() and is_word_x()
This commit is contained in:
logicog
2026-05-18 18:31:17 +02:00
committed by GitHub
+30 -18
View File
@@ -116,18 +116,24 @@ char strcmp(__xdata uint8_t *c, __code uint8_t * __xdata d)
}
char is_word(__xdata uint8_t *c, __code uint8_t * __xdata d)
bool is_word(__xdata uint8_t *xdata_str_p, __code uint8_t * __xdata code_str_p)
{
uint8_t i = 0;
uint8_t u, c;
while (d[i] && (d[i] == c[i]))
i++;
while (1) {
u = *xdata_str_p++;
c = *code_str_p++;
if (d[i])
return 0;
if (c[i] != ' ' && c[i] != '\t' && c[i] != ':' && c[i] != '?' && c[i] != '=' && c[i] != '\n' && c[i] != '\r' && c[i])
return 0;
return 1;
if (c == '\0') {
if (u != '\0' && u != ' ' && u != '\t' && u != ':' && u != '?' && u != '=' && u != '\n' && u != '\r')
return false;
return true;
}
if (c != u) {
return false;
}
}
}
@@ -174,18 +180,24 @@ bool is_url_word_x(__xdata uint8_t *uri_str_p, __xdata uint8_t *src_str_p)
}
char is_word_x(__xdata uint8_t *c, __xdata uint8_t *d)
bool is_word_x(__xdata uint8_t *lhs_str_p, __xdata uint8_t *rhs_str_p)
{
register uint8_t i = 0;
uint8_t u, c;
while (d[i] && (d[i] == c[i]))
i++;
while (1) {
u = *lhs_str_p++;
c = *rhs_str_p++;
if (d[i])
return 0;
if (c[i] != ' ' && c[i] != '\t' && c[i] != ':' && c[i] != '?' && c[i] != '=' && c[i] != '\n' && c[i] != '\r' && c[i])
return 0;
return 1;
if (c == '\0') {
if (u != '\0' && u != ' ' && u != '\t' && u != ':' && u != '?' && u != '=' && u != '\n' && u != '\r')
return false;
return true;
}
if (c != u) {
return false;
}
}
}