|
|
1.1 root 1: /* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
2:
3: /*
4: $Header: b2syn.h,v 1.4 85/08/22 16:43:04 timo Exp $
5: */
6:
7: /* General parsing routines */
8:
9: #define Eotc '\0'
10:
11: #define Char(tx) (*(tx))
12: #define Eol(tx) (Char(tx) == '\n')
13: #define Ceol(tx) (Char(tx) == '\\' || Eol(tx))
14: #define Text(q) (tx < q)
15:
16: #define Space(c) ((c) == ' ' || (c) == '\t')
17:
18: #define Letter(c) ('a'<=c&&c<='z')
19: #define Cap(c) ('A'<=c&&c<='Z')
20: #define Dig(c) ('0'<=c&&c<='9')
21:
22: /* Procedure skipsp(); */
23: /* Procedure upto(); */
24: /* Procedure need(); */
25: /* Procedure findceol(); */
26: /* Procedure req(); */
27: /* Procedure veli(); */
28:
29: bool keymark();
30:
31: txptr fcol();
32: bool nothing();
33: bool ateol();
34: bool findkw();
35: value keyword();
36: value tag();
37: bool find();
38:
39: extern txptr tx, ceol, first_col;
40: extern intlet cur_ilev;
41: intlet ilev();
42:
43: extern value kwlist;
44:
45: value cr_text();
46: bool is_keyword();
47: bool is_tag();
48: bool findrel();
49: extern string textsign;
50:
51: bool is_expr();
52:
53: #ifdef NOT_USED
54: bool colon_sign();
55: #endif
56: bool comment_sign();
57: bool nwl_sign();
58: bool open_sign();
59: #ifdef NOT_USED
60: bool close_sign();
61: bool comma_sign();
62: #endif
63: bool point_sign();
64: bool apostrophe_sign();
65: bool quote_sign();
66: bool conv_sign();
67: bool curlyopen_sign();
68: bool curlyclose_sign();
69: bool sub_sign();
70: #ifdef NOT_USED
71: bool bus_sign();
72: #endif
73: bool behead_sign();
74: bool curtl_sign();
75: bool about_sign();
76: bool plus_sign();
77: bool minus_sign();
78: bool times_sign();
79: bool over_sign();
80: bool power_sign();
81: bool numtor_sign();
82: bool denomtor_sign();
83: bool join_sign();
84: bool reptext_sign();
85: bool leftadj_sign();
86: bool center_sign();
87: bool rightadj_sign();
88: bool number_sign();
89: bool less_than_sign();
90: bool at_most_sign();
91: bool equals_sign();
92: bool unequal_sign();
93: bool at_least_sign();
94: bool greater_than_sign();
95:
96: bool dyamon_sign();
97: bool dya_sign();
98: bool mon_sign();
99: bool trim_sign();
100:
101: bool check_keyword();
102: bool choose_keyword();
103: bool delete_keyword();
104: bool draw_keyword();
105: bool insert_keyword();
106: bool put_keyword();
107: bool read_keyword();
108: bool remove_keyword();
109: bool setrandom_keyword();
110: bool write_keyword();
111: bool fail_keyword();
112: bool quit_keyword();
113: bool return_keyword();
114: bool report_keyword();
115: bool succeed_keyword();
116: bool if_keyword();
117: bool select_keyword();
118: bool while_keyword();
119: bool for_keyword();
120: bool else_keyword();
121: #ifdef NOT_USED
122: bool and_keyword();
123: bool or_keyword();
124: #endif
125: bool not_keyword();
126: bool some_keyword();
127: bool each_keyword();
128: bool no_keyword();
129: bool how_to_keyword();
130: bool yield_keyword();
131: bool test_keyword();
132: bool share_keyword();
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.