ref: 32a24601d7ddb3ed03a1d11b2ee6861d0b2bf0f1
dir: /examples/rule.peg/
start = abcd+ abcd = 'a' { printf("A %d\n", yypos); } bc { printf("ABC %d\n", yypos); } | 'b' { printf("B %d\n", yypos); } cd { printf("BCD %d\n", yypos); } bc = 'b' { printf("B %d\n", yypos); } 'c' { printf("C %d\n", yypos); } cd = 'c' { printf("C %d\n", yypos); } 'd' { printf("D %d\n", yypos); }