refactor is_word()

Saved 23 bytes.
This commit is contained in:
René van Dorst
2026-05-17 19:14:27 +02:00
parent aa5368cf34
commit 3904daced7
+13 -7
View File
@@ -116,20 +116,26 @@ char strcmp(__xdata uint8_t *c, __code uint8_t * __xdata d)
}
char is_word(__xdata uint8_t *c, __code uint8_t * __xdata d)
char 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])
if (c == '\0') {
if (u != '\0' && u != ' ' && u != '\t' && u != ':' && u != '?' && u != '=' && u != '\n' && u != '\r')
return 0;
return 1;
}
if (c != u) {
return 0;
}
}
}
char is_url_word_x(__xdata uint8_t *c, __xdata uint8_t *d)
{