const Tag &t = dfa.tags[h.tag(i)];
const tagver_t v = h.elem(i);
- if (v == TAGVER_BOTTOM) fprintf(stderr, "-");
if (capture(t)) {
- fprintf(stderr, "%u_", (uint32_t)t.ncap);
- } else if (trailing(t)) {
- fprintf(stderr, "*");
- } else {
+ fprintf(stderr, "%u", (uint32_t)t.ncap);
+ } else if (!trailing(t)) {
fprintf(stderr, "%s", t.name->c_str());
}
+ fprintf(stderr, v == TAGVER_BOTTOM ? "↓" : "↑");
fprintf(stderr, " ");
}
const Tag &tag = nfa.tags[n->tag.info];
fprintf(stderr, " n%u -> n%u [label=\"/", i, index(nfa, n->tag.out));
if (capture(tag)) {
- fprintf(stderr, "%u_", (uint32_t)tag.ncap);
- } else if (trailing(tag)) {
- fprintf(stderr, "%u", (uint32_t)n->rule);
- } else {
+ fprintf(stderr, "%u", (uint32_t)tag.ncap);
+ } else if (!trailing(tag)) {
fprintf(stderr, "%s", tag.name->c_str());
}
if (n->tag.bottom) {