X-Git-Url: http://git.cascardo.info/?p=cascardo%2Fgrammar.git;a=blobdiff_plain;f=lr1.h;fp=lr1.h;h=89de8ce5ffea73ebc54a796a760f1dc975c44f8b;hp=0000000000000000000000000000000000000000;hb=335666b364746a70a6fdae72b4695db0c21b5b24;hpb=bc33c59d8d2d4318b68c8bfbcd8d33ad865a9b6b diff --git a/lr1.h b/lr1.h new file mode 100644 index 0000000..89de8ce --- /dev/null +++ b/lr1.h @@ -0,0 +1,18 @@ +#ifndef LR1_H +#define LR1_H + +#include + +typedef struct _transition_t transition_t; +typedef struct _lr1_t lr1_t; + +transition_t* transition_shift_new (gint); +transition_t* transition_reduce_new (symbol_t*, rule_t*); +transition_t* transition_accept_new (); +void transition_delete (transition_t*); +lr1_t* lr1_new (nextcb, gpointer); +void lr1_delete (lr1_t*); +void lr1_add (lr1_t*, gint, symbol_t*, transition_t*); +gpointer lr1_build (lr1_t*); + +#endif