7 typedef struct binding *Binding;
13 typedef struct arity *Arity;
20 typedef struct patternAST *PatternAST;
28 struct strTableElement *kids;
29 struct strTableElement *nts;
31 typedef struct ruleAST *RuleAST;
47 typedef struct symbol *Symbol;
49 struct strTableElement {
54 typedef struct strTableElement *StrTableElement;
59 typedef struct strTable *StrTable;
61 extern void doGrammarNts ARGS((void));
62 void makeRuleDescArray ARGS((void));
63 void makeDeltaCostArray ARGS((void));
64 void makeStateStringArray ARGS((void));
66 extern StrTable newStrTable ARGS((void));
67 extern StrTableElement addString ARGS((StrTable, char *, int, int *));
69 extern void doSpec ARGS((List, List));
70 extern Arity newArity ARGS((int, List));
71 extern Binding newBinding ARGS((char *, int));
72 extern PatternAST newPatternAST ARGS((char *, List));
73 extern RuleAST newRuleAST ARGS((char *, PatternAST, int, IntList));
74 extern Symbol enter ARGS((char *, int *));
75 extern Symbol newSymbol ARGS((char *));
77 extern void makeDebug ARGS((void));
78 extern void makeSimple ARGS((void));
79 extern void makePlanks ARGS((void));
80 extern void makeOpLabel ARGS((void));
81 extern void makeChild ARGS((void));
82 extern void makeOperators ARGS((void));
83 extern void makeLabel ARGS((void));
84 extern void makeString ARGS((void));
85 extern void makeString ARGS((void));
86 extern void makeReduce ARGS((void));
87 extern void makeRuleTable ARGS((void));
88 extern void makeTables ARGS((void));
89 extern void makeTreecost ARGS((void));
90 extern void makePrint ARGS((void));
91 extern void makeRule ARGS((void));
92 extern void makeNts ARGS((void));
93 extern void makeKids ARGS((void));
94 extern void startBurm ARGS((void));
95 extern void startOptional ARGS((void));
96 extern void makePlankLabel ARGS((void));
97 extern void makeStateLabel ARGS((void));
98 extern void makeStringArray ARGS((void));
99 extern void makeNonterminalArray ARGS((void));
100 extern void makeCostArray ARGS((void));
101 extern void makeLHSmap ARGS((void));
102 extern void makeClosureArray ARGS((void));
103 extern void makeOperatorVector ARGS((void));
104 extern void endOptional ARGS((void));
105 extern void reportDiagnostics ARGS((void));
106 extern void makeNonterminals ARGS((void));
107 extern int opsOfArity ARGS((int));
109 extern void yypurge ARGS((void));
110 extern void yyfinished ARGS((void));
112 extern void printRepresentative ARGS((FILE *, Item_Set));
114 extern void dumpRules ARGS((List));
115 extern void dumpDecls ARGS((List));
116 extern void dumpRuleAST ARGS((RuleAST));
117 extern void dumpPatternAST ARGS((PatternAST));
118 extern void dumpArity ARGS((Arity));
119 extern void dumpBinding ARGS((Binding));
120 extern void dumpStrTable ARGS((StrTable));
122 extern int yylex ARGS((void));
123 extern int yyparse ARGS((void));
125 extern int max_ruleAST;
126 extern List ruleASTs;
128 extern FILE *outfile;
129 extern const char *prefix;
131 extern int speedflag;
132 extern int grammarflag;