/* dumpCover - print the matched cover for p */ static void dumpCover(Tree p, int goalnt, int indent) { int eruleno = burm_rule(p->x.state, goalnt); short *nts = burm_nts[eruleno]; Tree kids[10]; int i; for (i = 0; i < indent; i++) fprintf(stderr, " "); fprintf(stderr, "%s\n", burm_string[eruleno]); burm_kids(p, eruleno, kids); for (i = 0; nts[i]; i++) dumpCover(kids[i], nts[i], indent + 1); }
void dumpCover(NODEPTR p, int goalnt, int indent) { int eruleno = burm_rule(STATE_LABEL(p), goalnt); short *nts = burm_nts[eruleno]; NODEPTR kids[10]; int i; std::cerr << "\t\t"; for (i = 0; i < indent; i++) std::cerr << " "; std::cerr << burm_string[eruleno] << "\n"; burm_kids(p, eruleno, kids); for (i = 0; nts[i]; i++) dumpCover(kids[i], nts[i], indent + 1); }