Mercurial > ~dholland > hg > ag > index.cgi
comparison help2html/mhh6.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 | 5581ef01f993 |
comparison
equal
deleted
inserted
replaced
-1:000000000000 | 0:13d2b8934445 |
---|---|
1 #ifndef MHH6_H_1193795958 | |
2 #define MHH6_H_1193795958 | |
3 | |
4 typedef enum { | |
5 mhh6_blank_line_token = 1, mhh6_eof_line_token = 4, mhh6_blank_token, | |
6 mhh6_eof_token = 8, mhh6_eol_token, mhh6_help_sourcefile_token, | |
7 mhh6_topic_token, mhh6_title_line_token = 16, mhh6_topic_lines_token, | |
8 mhh6_end_topic_token, mhh6_title_line_too_token, mhh6_title_token, | |
9 mhh6_lead_title_char_token = 22, mhh6_title_char_token, | |
10 mhh6_topic_lines_too_token = 27, mhh6_text_parag_token, mhh6_parag_token, | |
11 mhh6_table_parag_token, mhh6_list1_parag_token, mhh6_list2_parag_token, | |
12 mhh6_listtab_parag_token, mhh6_code_parag_token, | |
13 mhh6_partial_text_parag_token, mhh6_text_block_token, | |
14 mhh6_first_text_line_token = 38, mhh6_other_text_line_token, | |
15 mhh6_table_parag_too_token = 42, mhh6_first_table_line_token, | |
16 mhh6_other_table_line_token, mhh6_list1_block_token, | |
17 mhh6_first_list1_line_token = 48, mhh6_other_list1_line_token, | |
18 mhh6_first_list2_line_token = 52, mhh6_other_list2_line_token, | |
19 mhh6_listtab_block_token = 56, mhh6_first_listtab_line_token = 59, | |
20 mhh6_other_listtab_line_token, mhh6_code_parag_too_token = 63, | |
21 mhh6_first_code_line_token, mhh6_other_code_line_token, | |
22 mhh6_lead_topic_char_token, mhh6_text_frag_token, | |
23 mhh6_first_table_line_body_token = 69, mhh6_tab_seq_token, | |
24 mhh6_blank_seq_token, mhh6_table_frag_token = 73, | |
25 mhh6_other_table_line_body_token = 75, mhh6_bullet_token, mhh6_tab_token, | |
26 mhh6_text_char_token = 85, mhh6_table_char_token | |
27 } mhh6_token_type; | |
28 | |
29 typedef struct mhh6_pcb_struct{ | |
30 mhh6_token_type token_number, reduction_token, error_frame_token; | |
31 int input_code; | |
32 int input_value; | |
33 int line, column; | |
34 int ssx, sn, error_frame_ssx; | |
35 int drt, dssx, dsn; | |
36 int ss[128]; | |
37 int vs[128]; | |
38 int ag_ap; | |
39 const char *error_message; | |
40 char read_flag; | |
41 char exit_flag; | |
42 int bts[128], btsx; | |
43 unsigned char * pointer; | |
44 unsigned char * la_ptr; | |
45 const unsigned char *key_sp; | |
46 int save_index, key_state; | |
47 char ag_msg[82]; | |
48 } mhh6_pcb_type; | |
49 | |
50 #ifndef PRULE_CONTEXT | |
51 #define PRULE_CONTEXT(pcb) (&((pcb).cs[(pcb).ssx])) | |
52 #define PERROR_CONTEXT(pcb) ((pcb).cs[(pcb).error_frame_ssx]) | |
53 #define PCONTEXT(pcb) ((pcb).cs[(pcb).ssx]) | |
54 #endif | |
55 | |
56 #ifndef AG_RUNNING_CODE | |
57 /* PCB.exit_flag values */ | |
58 #define AG_RUNNING_CODE 0 | |
59 #define AG_SUCCESS_CODE 1 | |
60 #define AG_SYNTAX_ERROR_CODE 2 | |
61 #define AG_REDUCTION_ERROR_CODE 3 | |
62 #define AG_STACK_ERROR_CODE 4 | |
63 #define AG_SEMANTIC_ERROR_CODE 5 | |
64 #endif | |
65 | |
66 extern mhh6_pcb_type mhh6_pcb; | |
67 void init_mhh6(void); | |
68 void mhh6(void); | |
69 #endif | |
70 |