home: hub: minipeg

ref: 63f3a973ef06a5ce4f7a93cc6c99bb6eaab08e11
dir: /examples/rule.peg/

View raw version
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); };