diff options
Diffstat (limited to 'parts/grammar.h')
-rw-r--r-- | parts/grammar.h | 22 |
1 files changed, 22 insertions, 0 deletions
diff --git a/parts/grammar.h b/parts/grammar.h new file mode 100644 index 0000000..328f88e --- /dev/null +++ b/parts/grammar.h @@ -0,0 +1,22 @@ +#ifndef GRAMMAR_H +#define GRAMMAR_H + +extern struct production { + symbol LHS; + symbol *RHS; + size_t nRHS; +} grammar[]; + +extern const size_t total_productions; + +void grammar_print() +{ + for(size_t i = 0; i < total_productions; i++) { + printf("%d --> ", grammar[i].LHS); + for(size_t j = 0; j < grammar[i].nRHS; j++) + printf("%d ", grammar[i].RHS[j]); + printf("\n"); + } +} + +#endif |