mirror of
https://github.com/python/cpython.git
synced 2025-08-04 00:48:58 +00:00
Initial revision
This commit is contained in:
parent
c636014c43
commit
85a5fbbdfe
78 changed files with 13589 additions and 0 deletions
25
Parser/parser.h
Normal file
25
Parser/parser.h
Normal file
|
@ -0,0 +1,25 @@
|
|||
/* Parser interface */
|
||||
|
||||
#define MAXSTACK 100
|
||||
|
||||
typedef struct _stackentry {
|
||||
int s_state; /* State in current DFA */
|
||||
dfa *s_dfa; /* Current DFA */
|
||||
node *s_parent; /* Where to add next node */
|
||||
} stackentry;
|
||||
|
||||
typedef struct _stack {
|
||||
stackentry *s_top; /* Top entry */
|
||||
stackentry s_base[MAXSTACK];/* Array of stack entries */
|
||||
/* NB The stack grows down */
|
||||
} stack;
|
||||
|
||||
typedef struct {
|
||||
struct _stack p_stack; /* Stack of parser states */
|
||||
struct _grammar *p_grammar; /* Grammar to use */
|
||||
struct _node *p_tree; /* Top of parse tree */
|
||||
} parser_state;
|
||||
|
||||
parser_state *newparser PROTO((struct _grammar *g, int start));
|
||||
void delparser PROTO((parser_state *ps));
|
||||
int addtoken PROTO((parser_state *ps, int type, char *str));
|
Loading…
Add table
Add a link
Reference in a new issue