1 /* prcg.c */ 2 static void usage(void); 3 int main(int argc, char **argv); 4 static void build_dcg(void); 5 int get_arc(char *buf, char **ip, char **rp); 6 struct imm_node *create_arc_node(char *s, char *t); 7 struct imm_node *link_arc_node(char *s, struct imm_node *tail); 8 struct name_node *name_to_nlist(char *s, char *t); 9 struct imm_node *node_to_arc(struct name_node *np, struct imm_node *ip); 10 static struct imm_node *get_imm_node(void); 11 void print_dcg(int argc, char **argv); 12 void print_name(struct name_node *node, int tabc); 13 int makeactive(struct name_node *node); 14 void backup(void); 15 int active(struct name_node *node); 16 struct name_node *nlist_contains(char *s); 17