| 181 | } |
| 182 | |
| 183 | static int read_ptoken(link_ctx *ctx, const char **ps) |
| 184 | { |
| 185 | if (skip_ws(ctx)) { |
| 186 | size_t i; |
| 187 | for (i = ctx->i; i < ctx->slen && ptoken_char(ctx->s[i]); ++i) { |
| 188 | /* nop */ |
| 189 | } |
| 190 | if (i > ctx->i) { |
| 191 | *ps = mk_str(ctx, i); |
| 192 | ctx->i = i; |
| 193 | return 1; |
| 194 | } |
| 195 | } |
| 196 | return 0; |
| 197 | } |
| 198 | |
| 199 | |
| 200 | static int read_link(link_ctx *ctx) |
no test coverage detected