Mercurial > ~dholland > hg > ag > index.cgi
comparison anagram/agcore/bpe3.h @ 0:13d2b8934445
Import AnaGram (near-)release tree into Mercurial.
author | David A. Holland |
---|---|
date | Sat, 22 Dec 2007 17:52:45 -0500 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:13d2b8934445 |
---|---|
1 /* | |
2 * AnaGram, A System for Syntax Directed Programming | |
3 * Copyright 1993-2002 Parsifal Software. All Rights Reserved. | |
4 * See the file COPYING for license and usage terms. | |
5 * | |
6 * bpe3.h - build parse engine, rev. 3 | |
7 */ | |
8 | |
9 #ifndef BPE3_H | |
10 #define BPE3_H | |
11 | |
12 struct string_dict; // from dict.h | |
13 struct CSegment; // from rproc.h | |
14 #include "agstack.h" | |
15 | |
16 | |
17 typedef enum { | |
18 pe_shift_accept, | |
19 pe_go_to, | |
20 pe_shift_reduce, | |
21 pe_shift_simple_reduce, | |
22 pe_reduce_form, | |
23 pe_simple_reduce, | |
24 pe_accept, | |
25 pe_syn_error, | |
26 pe_null_go_to, | |
27 pe_skip, | |
28 pe_skip_reduce, | |
29 pe_recover | |
30 } pe_parser_action; | |
31 | |
32 extern AgStack<CSegment> extensionStack; | |
33 extern AgStack<CSegment> cSegmentStack; | |
34 extern int nPrologueSegments; | |
35 | |
36 extern string_dict *my_macros; | |
37 extern int pe_line_count; | |
38 extern char buildErrorMsg[]; | |
39 extern char *my_macros_subs[]; | |
40 | |
41 void build_parse_table(void); | |
42 void build_parse_engine(void); | |
43 | |
44 #endif /* BPE3_H */ |