1 static int my_isblank(char c)
3 return c == '\t' || c == ' ' || c == '\r' || c == '\n';
6 static int my_issep(char c)
8 return c == '(' || c == ')' || c == '[' || c == ']'
9 || c == '<' || c == '>' || c == ',';
12 static char *sskip(char *s)
14 while (my_isblank(*s))
20 static char *next_word(char *w, size_t wsize, char *s)
26 for (i = 0; i < wsize - 1; i++) {
27 if (*s == 0 || my_isblank(s[i]))
33 if (*s != 0 && !my_isblank(s[i]))
34 printf("warning: '%s' truncated\n", w);
39 static inline char *next_idt(char *w, size_t wsize, char *s)
45 for (i = 0; i < wsize - 1; i++) {
46 if (*s == 0 || my_isblank(s[i]) || my_issep(s[i]))
52 if (*s != 0 && !my_isblank(s[i]) && !my_issep(s[i]))
53 printf("warning: '%s' truncated\n", w);