Added all of the MH sources, including RCS files, in
[mmh] / docs / historical / mh-6.8.5 / h / RCS / fmtcompile.h,v
1 head    1.10;
2 access;
3 symbols;
4 locks; strict;
5 comment @ * @;
6
7
8 1.10
9 date    93.06.12.06.46.16;      author jromine; state Exp;
10 branches;
11 next    1.9;
12
13 1.9
14 date    92.02.09.07.12.48;      author jromine; state Exp;
15 branches;
16 next    1.8;
17
18 1.8
19 date    92.01.23.23.16.05;      author jromine; state Exp;
20 branches;
21 next    1.7;
22
23 1.7
24 date    91.11.28.00.05.59;      author jromine; state Exp;
25 branches;
26 next    1.6;
27
28 1.6
29 date    91.11.28.00.04.48;      author jromine; state Exp;
30 branches;
31 next    1.5;
32
33 1.5
34 date    90.12.27.17.04.12;      author mh;      state Exp;
35 branches;
36 next    1.4;
37
38 1.4
39 date    90.04.05.15.06.42;      author sources; state Exp;
40 branches;
41 next    1.3;
42
43 1.3
44 date    90.02.21.15.40.53;      author sources; state Exp;
45 branches;
46 next    1.2;
47
48 1.2
49 date    90.02.21.15.39.50;      author sources; state Exp;
50 branches;
51 next    1.1;
52
53 1.1
54 date    90.02.21.15.38.18;      author sources; state Exp;
55 branches;
56 next    ;
57
58
59 desc
60 @@
61
62
63 1.10
64 log
65 @add %(profile xxx) to return m_find(xxx)
66 @
67 text
68 @/* @@(#)$Id: fmtcompile.h,v 1.9 1992/02/09 07:12:48 jromine Exp jromine $ */
69
70 /* Format Types */
71 /* -------------*/
72
73 /* types that output text */
74 #define FT_COMP         1       /* the text of a component */
75 #define FT_COMPF        2       /* comp text, filled */
76 #define FT_LIT          3       /* literal text */
77 #define FT_LITF         4       /* literal text, filled */
78 #define FT_CHAR         5       /* a single ascii character */
79 #define FT_NUM          6       /* "value" as decimal number */
80 #define FT_NUMF         7       /* "value" as filled dec number */
81 #define FT_STR          8       /* "str" as text */
82 #define FT_STRF         9       /* "str" as text, filled */
83 #define FT_STRFW        10      /* "str" as text, filled, width in "value" */
84 #define FT_PUTADDR      11      /* split and print address line */
85
86 /* types that modify the "str" or "value" registers */
87 #define FT_LS_COMP      12      /* set "str" to component text */
88 #define FT_LS_LIT       13      /* set "str" to literal text */
89 #define FT_LS_GETENV    14      /* set "str" to getenv(text) */
90 #define FT_LS_MFIND     15      /* set "str" to m_find(text) */
91 #define FT_LS_TRIM      16      /* trim trailing white space from "str" */
92 #define FT_LV_COMP      17      /* set "value" to comp (as dec. num) */
93 #define FT_LV_COMPFLAG  18      /* set "value" to comp flag word */
94 #define FT_LV_LIT       19      /* set "value" to literal num */
95 #define FT_LV_DAT       20      /* set "value" to dat[n] */
96 #define FT_LV_STRLEN    21      /* set "value" to length of "str" */
97 #define FT_LV_PLUS_L    22      /* set "value" += literal */
98 #define FT_LV_MINUS_L   23      /* set "value" -= literal */
99 #define FT_LV_DIVIDE_L  24      /* set "value" to value / literal */
100 #define FT_LV_MODULO_L  25      /* set "value" to value % literal */
101 #define FT_LV_CHAR_LEFT 26      /* set "value" to char left in output */
102
103 #define FT_LS_MONTH     27      /* set "str" to tws month */
104 #define FT_LS_LMONTH    28      /* set "str" to long tws month */
105 #define FT_LS_ZONE      29      /* set "str" to tws timezone */
106 #define FT_LS_DAY       30      /* set "str" to tws weekday */
107 #define FT_LS_WEEKDAY   31      /* set "str" to long tws weekday */
108 #define FT_LS_822DATE   32      /* set "str" to 822 date str */
109 #define FT_LS_PRETTY    33      /* set "str" to pretty (?) date str */
110 #define FT_LV_SEC       34      /* set "value" to tws second */
111 #define FT_LV_MIN       35      /* set "value" to tws minute */
112 #define FT_LV_HOUR      36      /* set "value" to tws hour */
113 #define FT_LV_MDAY      37      /* set "value" to tws day of month */
114 #define FT_LV_MON       38      /* set "value" to tws month */
115 #define FT_LV_YEAR      39      /* set "value" to tws year */
116 #define FT_LV_YDAY      40      /* set "value" to tws day of year */
117 #define FT_LV_WDAY      41      /* set "value" to tws weekday */
118 #define FT_LV_ZONE      42      /* set "value" to tws timezone */
119 #define FT_LV_CLOCK     43      /* set "value" to tws clock */
120 #define FT_LV_RCLOCK    44      /* set "value" to now - tws clock */
121 #define FT_LV_DAYF      45      /* set "value" to tws day flag */
122 #define FT_LV_DST       46      /* set "value" to tws daylight savings flag */
123 #define FT_LV_ZONEF     47      /* set "value" to tws timezone flag */
124
125 #define FT_LS_PERS      48      /* set "str" to person part of addr */
126 #define FT_LS_MBOX      49      /* set "str" to mbox part of addr */
127 #define FT_LS_HOST      50      /* set "str" to host part of addr */
128 #define FT_LS_PATH      51      /* set "str" to route part of addr */
129 #define FT_LS_GNAME     52      /* set "str" to group part of addr */
130 #define FT_LS_NOTE      53      /* set "str" to comment part of addr */
131 #define FT_LS_ADDR      54      /* set "str" to mbox@@host */
132 #define FT_LS_822ADDR   55      /* set "str" to 822 format addr */
133 #define FT_LS_FRIENDLY  56      /* set "str" to "friendly" format addr */
134 #define FT_LV_HOSTTYPE  57      /* set "value" to addr host type */
135 #define FT_LV_INGRPF    58      /* set "value" to addr in-group flag */
136 #define FT_LV_NOHOSTF   59      /* set "value" to addr no-host flag */
137
138 /* Date Coercion */
139 #define FT_LOCALDATE    60      /* Coerce date to local timezone */
140 #define FT_GMTDATE      61      /* Coerce date to gmt */
141
142 /* pre-format processing */
143 #define FT_PARSEDATE    62      /* parse comp into a date (tws) struct */
144 #define FT_PARSEADDR    63      /* parse comp into a mailaddr struct */
145 #define FT_FORMATADDR   64      /* let external routine format addr */
146 #define FT_MYMBOX       65      /* do "mymbox" test on comp */
147
148 /* misc. */             /* ADDTOSEQ only works if you include "options LBL" */
149 #define FT_ADDTOSEQ     66      /* add current msg to a sequence */
150
151 /* conditionals & control flow (must be last) */
152 #define FT_SAVESTR      67      /* save current str reg */
153 #define FT_DONE         68      /* stop formatting */
154 #define FT_PAUSE        69      /* pause */
155 #define FT_NOP          70      /* nop */
156 #define FT_GOTO         71      /* (relative) goto */
157 #define FT_IF_S_NULL    72      /* test if "str" null */
158 #define FT_IF_S         73      /* test if "str" non-null */
159 #define FT_IF_V_EQ      74      /* test if "value" = literal */
160 #define FT_IF_V_NE      75      /* test if "value" != literal */
161 #define FT_IF_V_GT      76      /* test if "value" > literal */
162 #define FT_IF_MATCH     77      /* test if "str" contains literal */
163 #define FT_IF_AMATCH    78      /* test if "str" starts with literal */
164 #define FT_S_NULL       79      /* V = 1 if "str" null */
165 #define FT_S_NONNULL    80      /* V = 1 if "str" non-null */
166 #define FT_V_EQ         81      /* V = 1 if "value" = literal */
167 #define FT_V_NE         82      /* V = 1 if "value" != literal */
168 #define FT_V_GT         83      /* V = 1 if "value" > literal */
169 #define FT_V_MATCH      84      /* V = 1 if "str" contains literal */
170 #define FT_V_AMATCH     85      /* V = 1 if "str" starts with literal */
171
172 #define IF_FUNCS FT_S_NULL      /* start of "if" functions */
173 @
174
175
176 1.9
177 log
178 @add modulo function
179 put Van Jacobson changes under "options LBL"
180 @
181 text
182 @d1 1
183 a1 1
184 /* @@(#)$Id: fmtcompile.h,v 1.8 1992/01/23 23:16:05 jromine Exp $ */
185 d23 12
186 a34 11
187 #define FT_LS_TRIM      15      /* trim trailing white space from "str" */
188 #define FT_LV_COMP      16      /* set "value" to comp (as dec. num) */
189 #define FT_LV_COMPFLAG  17      /* set "value" to comp flag word */
190 #define FT_LV_LIT       18      /* set "value" to literal num */
191 #define FT_LV_DAT       19      /* set "value" to dat[n] */
192 #define FT_LV_STRLEN    20      /* set "value" to length of "str" */
193 #define FT_LV_PLUS_L    21      /* set "value" += literal */
194 #define FT_LV_MINUS_L   22      /* set "value" -= literal */
195 #define FT_LV_DIVIDE_L  23      /* set "value" to value / literal */
196 #define FT_LV_MODULO_L  24      /* set "value" to value % literal */
197 #define FT_LV_CHAR_LEFT 25      /* set "value" to char left in output */
198 d36 21
199 a56 21
200 #define FT_LS_MONTH     26      /* set "str" to tws month */
201 #define FT_LS_LMONTH    27      /* set "str" to long tws month */
202 #define FT_LS_ZONE      28      /* set "str" to tws timezone */
203 #define FT_LS_DAY       29      /* set "str" to tws weekday */
204 #define FT_LS_WEEKDAY   30      /* set "str" to long tws weekday */
205 #define FT_LS_822DATE   31      /* set "str" to 822 date str */
206 #define FT_LS_PRETTY    32      /* set "str" to pretty (?) date str */
207 #define FT_LV_SEC       33      /* set "value" to tws second */
208 #define FT_LV_MIN       34      /* set "value" to tws minute */
209 #define FT_LV_HOUR      35      /* set "value" to tws hour */
210 #define FT_LV_MDAY      36      /* set "value" to tws day of month */
211 #define FT_LV_MON       37      /* set "value" to tws month */
212 #define FT_LV_YEAR      38      /* set "value" to tws year */
213 #define FT_LV_YDAY      39      /* set "value" to tws day of year */
214 #define FT_LV_WDAY      40      /* set "value" to tws weekday */
215 #define FT_LV_ZONE      41      /* set "value" to tws timezone */
216 #define FT_LV_CLOCK     42      /* set "value" to tws clock */
217 #define FT_LV_RCLOCK    43      /* set "value" to now - tws clock */
218 #define FT_LV_DAYF      44      /* set "value" to tws day flag */
219 #define FT_LV_DST       45      /* set "value" to tws daylight savings flag */
220 #define FT_LV_ZONEF     46      /* set "value" to tws timezone flag */
221 d58 12
222 a69 12
223 #define FT_LS_PERS      47      /* set "str" to person part of addr */
224 #define FT_LS_MBOX      48      /* set "str" to mbox part of addr */
225 #define FT_LS_HOST      49      /* set "str" to host part of addr */
226 #define FT_LS_PATH      50      /* set "str" to route part of addr */
227 #define FT_LS_GNAME     51      /* set "str" to group part of addr */
228 #define FT_LS_NOTE      52      /* set "str" to comment part of addr */
229 #define FT_LS_ADDR      53      /* set "str" to mbox@@host */
230 #define FT_LS_822ADDR   54      /* set "str" to 822 format addr */
231 #define FT_LS_FRIENDLY  55      /* set "str" to "friendly" format addr */
232 #define FT_LV_HOSTTYPE  56      /* set "value" to addr host type */
233 #define FT_LV_INGRPF    57      /* set "value" to addr in-group flag */
234 #define FT_LV_NOHOSTF   58      /* set "value" to addr no-host flag */
235 d72 2
236 a73 2
237 #define FT_LOCALDATE    59      /* Coerce date to local timezone */
238 #define FT_GMTDATE      60      /* Coerce date to gmt */
239 d76 4
240 a79 4
241 #define FT_PARSEDATE    61      /* parse comp into a date (tws) struct */
242 #define FT_PARSEADDR    62      /* parse comp into a mailaddr struct */
243 #define FT_FORMATADDR   63      /* let external routine format addr */
244 #define FT_MYMBOX       64      /* do "mymbox" test on comp */
245 d82 1
246 a82 1
247 #define FT_ADDTOSEQ     65      /* add current msg to a sequence */
248 d85 19
249 a103 19
250 #define FT_SAVESTR      66      /* save current str reg */
251 #define FT_DONE         67      /* stop formatting */
252 #define FT_PAUSE        68      /* pause */
253 #define FT_NOP          69      /* nop */
254 #define FT_GOTO         70      /* (relative) goto */
255 #define FT_IF_S_NULL    71      /* test if "str" null */
256 #define FT_IF_S         72      /* test if "str" non-null */
257 #define FT_IF_V_EQ      73      /* test if "value" = literal */
258 #define FT_IF_V_NE      74      /* test if "value" != literal */
259 #define FT_IF_V_GT      75      /* test if "value" > literal */
260 #define FT_IF_MATCH     76      /* test if "str" contains literal */
261 #define FT_IF_AMATCH    77      /* test if "str" starts with literal */
262 #define FT_S_NULL       78      /* V = 1 if "str" null */
263 #define FT_S_NONNULL    79      /* V = 1 if "str" non-null */
264 #define FT_V_EQ         80      /* V = 1 if "value" = literal */
265 #define FT_V_NE         81      /* V = 1 if "value" != literal */
266 #define FT_V_GT         82      /* V = 1 if "value" > literal */
267 #define FT_V_MATCH      83      /* V = 1 if "str" contains literal */
268 #define FT_V_AMATCH     84      /* V = 1 if "str" starts with literal */
269 d105 1
270 a105 1
271 #define IF_FUNCS FT_S_NULL      /* start of "if" functions */
272 @
273
274
275 1.8
276 log
277 @add getenv
278 @
279 text
280 @d1 1
281 a1 1
282 /* @@(#)$Id: fmtcompile.h,v 1.7 1991/11/28 00:05:59 jromine Exp jromine $ */
283 d32 2
284 a33 1
285 #define FT_LV_CHAR_LEFT 24      /* set "value" to char left in output */
286 d35 21
287 a55 21
288 #define FT_LS_MONTH     25      /* set "str" to tws month */
289 #define FT_LS_LMONTH    26      /* set "str" to long tws month */
290 #define FT_LS_ZONE      27      /* set "str" to tws timezone */
291 #define FT_LS_DAY       28      /* set "str" to tws weekday */
292 #define FT_LS_WEEKDAY   29      /* set "str" to long tws weekday */
293 #define FT_LS_822DATE   30      /* set "str" to 822 date str */
294 #define FT_LS_PRETTY    31      /* set "str" to pretty (?) date str */
295 #define FT_LV_SEC       32      /* set "value" to tws second */
296 #define FT_LV_MIN       33      /* set "value" to tws minute */
297 #define FT_LV_HOUR      34      /* set "value" to tws hour */
298 #define FT_LV_MDAY      35      /* set "value" to tws day of month */
299 #define FT_LV_MON       36      /* set "value" to tws month */
300 #define FT_LV_YEAR      37      /* set "value" to tws year */
301 #define FT_LV_YDAY      38      /* set "value" to tws day of year */
302 #define FT_LV_WDAY      39      /* set "value" to tws weekday */
303 #define FT_LV_ZONE      40      /* set "value" to tws timezone */
304 #define FT_LV_CLOCK     41      /* set "value" to tws clock */
305 #define FT_LV_RCLOCK    42      /* set "value" to now - tws clock */
306 #define FT_LV_DAYF      43      /* set "value" to tws day flag */
307 #define FT_LV_DST       44      /* set "value" to tws daylight savings flag */
308 #define FT_LV_ZONEF     45      /* set "value" to tws timezone flag */
309 d57 12
310 a68 12
311 #define FT_LS_PERS      46      /* set "str" to person part of addr */
312 #define FT_LS_MBOX      47      /* set "str" to mbox part of addr */
313 #define FT_LS_HOST      48      /* set "str" to host part of addr */
314 #define FT_LS_PATH      49      /* set "str" to route part of addr */
315 #define FT_LS_GNAME     50      /* set "str" to group part of addr */
316 #define FT_LS_NOTE      51      /* set "str" to comment part of addr */
317 #define FT_LS_ADDR      52      /* set "str" to mbox@@host */
318 #define FT_LS_822ADDR   53      /* set "str" to 822 format addr */
319 #define FT_LS_FRIENDLY  54      /* set "str" to "friendly" format addr */
320 #define FT_LV_HOSTTYPE  55      /* set "value" to addr host type */
321 #define FT_LV_INGRPF    56      /* set "value" to addr in-group flag */
322 #define FT_LV_NOHOSTF   57      /* set "value" to addr no-host flag */
323 d71 2
324 a72 2
325 #define FT_LOCALDATE    58      /* Coerce date to local timezone */
326 #define FT_GMTDATE      59      /* Coerce date to gmt */
327 d75 4
328 a78 4
329 #define FT_PARSEDATE    60      /* parse comp into a date (tws) struct */
330 #define FT_PARSEADDR    61      /* parse comp into a mailaddr struct */
331 #define FT_FORMATADDR   62      /* let external routine format addr */
332 #define FT_MYMBOX       63      /* do "mymbox" test on comp */
333 d80 2
334 a81 4
335 /* misc. */
336 #ifdef  VAN
337 #define FT_ADDTOSEQ     64      /* add current msg to a sequence */
338 #endif
339 d84 19
340 a102 19
341 #define FT_SAVESTR      65      /* save current str reg */
342 #define FT_DONE         66      /* stop formatting */
343 #define FT_PAUSE        67      /* pause */
344 #define FT_NOP          68      /* nop */
345 #define FT_GOTO         69      /* (relative) goto */
346 #define FT_IF_S_NULL    70      /* test if "str" null */
347 #define FT_IF_S         71      /* test if "str" non-null */
348 #define FT_IF_V_EQ      72      /* test if "value" = literal */
349 #define FT_IF_V_NE      73      /* test if "value" != literal */
350 #define FT_IF_V_GT      74      /* test if "value" > literal */
351 #define FT_IF_MATCH     75      /* test if "str" contains literal */
352 #define FT_IF_AMATCH    76      /* test if "str" starts with literal */
353 #define FT_S_NULL       77      /* V = 1 if "str" null */
354 #define FT_S_NONNULL    78      /* V = 1 if "str" non-null */
355 #define FT_V_EQ         79      /* V = 1 if "value" = literal */
356 #define FT_V_NE         80      /* V = 1 if "value" != literal */
357 #define FT_V_GT         81      /* V = 1 if "value" > literal */
358 #define FT_V_MATCH      82      /* V = 1 if "str" contains literal */
359 #define FT_V_AMATCH     83      /* V = 1 if "str" starts with literal */
360 d104 1
361 a104 1
362 #define IF_FUNCS FT_S_NULL      /* start of "if" functions */
363 @
364
365
366 1.7
367 log
368 @FT_PAUSE
369 @
370 text
371 @d1 1
372 a1 1
373 /* @@(#)$Id: fmtcompile.h,v 1.6 1991/11/28 00:04:48 jromine Exp jromine $ */
374 d22 11
375 a32 10
376 #define FT_LS_TRIM      14      /* trim trailing white space from "str" */
377 #define FT_LV_COMP      15      /* set "value" to comp (as dec. num) */
378 #define FT_LV_COMPFLAG  16      /* set "value" to comp flag word */
379 #define FT_LV_LIT       17      /* set "value" to literal num */
380 #define FT_LV_DAT       18      /* set "value" to dat[n] */
381 #define FT_LV_STRLEN    19      /* set "value" to length of "str" */
382 #define FT_LV_PLUS_L    20      /* set "value" += literal */
383 #define FT_LV_MINUS_L   21      /* set "value" -= literal */
384 #define FT_LV_DIVIDE_L  22      /* set "value" to value / literal */
385 #define FT_LV_CHAR_LEFT 23      /* set "value" to char left in output */
386 d34 21
387 a54 21
388 #define FT_LS_MONTH     24      /* set "str" to tws month */
389 #define FT_LS_LMONTH    25      /* set "str" to long tws month */
390 #define FT_LS_ZONE      26      /* set "str" to tws timezone */
391 #define FT_LS_DAY       27      /* set "str" to tws weekday */
392 #define FT_LS_WEEKDAY   28      /* set "str" to long tws weekday */
393 #define FT_LS_822DATE   29      /* set "str" to 822 date str */
394 #define FT_LS_PRETTY    30      /* set "str" to pretty (?) date str */
395 #define FT_LV_SEC       31      /* set "value" to tws second */
396 #define FT_LV_MIN       32      /* set "value" to tws minute */
397 #define FT_LV_HOUR      33      /* set "value" to tws hour */
398 #define FT_LV_MDAY      34      /* set "value" to tws day of month */
399 #define FT_LV_MON       35      /* set "value" to tws month */
400 #define FT_LV_YEAR      36      /* set "value" to tws year */
401 #define FT_LV_YDAY      37      /* set "value" to tws day of year */
402 #define FT_LV_WDAY      38      /* set "value" to tws weekday */
403 #define FT_LV_ZONE      39      /* set "value" to tws timezone */
404 #define FT_LV_CLOCK     40      /* set "value" to tws clock */
405 #define FT_LV_RCLOCK    41      /* set "value" to now - tws clock */
406 #define FT_LV_DAYF      42      /* set "value" to tws day flag */
407 #define FT_LV_DST       43      /* set "value" to tws daylight savings flag */
408 #define FT_LV_ZONEF     44      /* set "value" to tws timezone flag */
409 d56 12
410 a67 12
411 #define FT_LS_PERS      45      /* set "str" to person part of addr */
412 #define FT_LS_MBOX      46      /* set "str" to mbox part of addr */
413 #define FT_LS_HOST      47      /* set "str" to host part of addr */
414 #define FT_LS_PATH      48      /* set "str" to route part of addr */
415 #define FT_LS_GNAME     49      /* set "str" to group part of addr */
416 #define FT_LS_NOTE      50      /* set "str" to comment part of addr */
417 #define FT_LS_ADDR      51      /* set "str" to mbox@@host */
418 #define FT_LS_822ADDR   52      /* set "str" to 822 format addr */
419 #define FT_LS_FRIENDLY  53      /* set "str" to "friendly" format addr */
420 #define FT_LV_HOSTTYPE  54      /* set "value" to addr host type */
421 #define FT_LV_INGRPF    55      /* set "value" to addr in-group flag */
422 #define FT_LV_NOHOSTF   56      /* set "value" to addr no-host flag */
423 d70 2
424 a71 2
425 #define FT_LOCALDATE    57      /* Coerce date to local timezone */
426 #define FT_GMTDATE      58      /* Coerce date to gmt */
427 d74 4
428 a77 4
429 #define FT_PARSEDATE    59      /* parse comp into a date (tws) struct */
430 #define FT_PARSEADDR    60      /* parse comp into a mailaddr struct */
431 #define FT_FORMATADDR   61      /* let external routine format addr */
432 #define FT_MYMBOX       62      /* do "mymbox" test on comp */
433 d81 1
434 a81 1
435 #define FT_ADDTOSEQ     63      /* add current msg to a sequence */
436 d85 19
437 a103 19
438 #define FT_SAVESTR      64      /* save current str reg */
439 #define FT_DONE         65      /* stop formatting */
440 #define FT_PAUSE        66      /* pause */
441 #define FT_NOP          67      /* nop */
442 #define FT_GOTO         68      /* (relative) goto */
443 #define FT_IF_S_NULL    69      /* test if "str" null */
444 #define FT_IF_S         70      /* test if "str" non-null */
445 #define FT_IF_V_EQ      71      /* test if "value" = literal */
446 #define FT_IF_V_NE      72      /* test if "value" != literal */
447 #define FT_IF_V_GT      73      /* test if "value" > literal */
448 #define FT_IF_MATCH     74      /* test if "str" contains literal */
449 #define FT_IF_AMATCH    75      /* test if "str" starts with literal */
450 #define FT_S_NULL       76      /* V = 1 if "str" null */
451 #define FT_S_NONNULL    77      /* V = 1 if "str" non-null */
452 #define FT_V_EQ         78      /* V = 1 if "value" = literal */
453 #define FT_V_NE         79      /* V = 1 if "value" != literal */
454 #define FT_V_GT         80      /* V = 1 if "value" > literal */
455 #define FT_V_MATCH      81      /* V = 1 if "str" contains literal */
456 #define FT_V_AMATCH     82      /* V = 1 if "str" starts with literal */
457 @
458
459
460 1.6
461 log
462 @add FT_RETURN
463 @
464 text
465 @d1 1
466 a1 1
467 /* @@(#)$Id: fmtcompile.h,v 1.5 1990/12/27 17:04:12 mh Exp jromine $ */
468 d84 19
469 a102 19
470 #define FT_SAVESTR      64      /* save current str reg */
471 #define FT_DONE         65      /* stop formatting */
472 #define FT_RETURN       66      /* suspend, and return current position */
473 #define FT_NOP          67      /* nop */
474 #define FT_GOTO         68      /* (relative) goto */
475 #define FT_IF_S_NULL    69      /* test if "str" null */
476 #define FT_IF_S         70      /* test if "str" non-null */
477 #define FT_IF_V_EQ      71      /* test if "value" = literal */
478 #define FT_IF_V_NE      72      /* test if "value" != literal */
479 #define FT_IF_V_GT      73      /* test if "value" > literal */
480 #define FT_IF_MATCH     74      /* test if "str" contains literal */
481 #define FT_IF_AMATCH    75      /* test if "str" starts with literal */
482 #define FT_S_NULL       76      /* V = 1 if "str" null */
483 #define FT_S_NONNULL    77      /* V = 1 if "str" non-null */
484 #define FT_V_EQ         78      /* V = 1 if "value" = literal */
485 #define FT_V_NE         79      /* V = 1 if "value" != literal */
486 #define FT_V_GT         80      /* V = 1 if "value" > literal */
487 #define FT_V_MATCH      81      /* V = 1 if "str" contains literal */
488 #define FT_V_AMATCH     82      /* V = 1 if "str" starts with literal */
489 d104 1
490 a104 1
491 #define IF_FUNCS FT_S_NULL      /* start of "if" functions */
492 @
493
494
495 1.5
496 log
497 @add FT_LS_ADDR
498 jlr
499 @
500 text
501 @d1 1
502 a1 1
503 /* @@(#)$Id: fmtcompile.h,v 1.4 90/04/05 15:06:42 sources Exp Locker: mh $ */
504 d84 19
505 a102 18
506 #define FT_SAVESTR      64      /* save current str reg */
507 #define FT_DONE         65      /* stop formatting */
508 #define FT_NOP          66      /* nop */
509 #define FT_GOTO         67      /* (relative) goto */
510 #define FT_IF_S_NULL    68      /* test if "str" null */
511 #define FT_IF_S         69      /* test if "str" non-null */
512 #define FT_IF_V_EQ      70      /* test if "value" = literal */
513 #define FT_IF_V_NE      71      /* test if "value" != literal */
514 #define FT_IF_V_GT      72      /* test if "value" > literal */
515 #define FT_IF_MATCH     73      /* test if "str" contains literal */
516 #define FT_IF_AMATCH    74      /* test if "str" starts with literal */
517 #define FT_S_NULL       75      /* V = 1 if "str" null */
518 #define FT_S_NONNULL    76      /* V = 1 if "str" non-null */
519 #define FT_V_EQ         77      /* V = 1 if "value" = literal */
520 #define FT_V_NE         78      /* V = 1 if "value" != literal */
521 #define FT_V_GT         79      /* V = 1 if "value" > literal */
522 #define FT_V_MATCH      80      /* V = 1 if "str" contains literal */
523 #define FT_V_AMATCH     81      /* V = 1 if "str" starts with literal */
524 d104 1
525 a104 1
526 #define IF_FUNCS FT_S_NULL      /* start of "if" functions */
527 @
528
529
530 1.4
531 log
532 @add ID
533 @
534 text
535 @d1 1
536 a1 1
537 /* @@(#)$Id:$ */
538 d61 6
539 a66 5
540 #define FT_LS_822ADDR   51      /* set "str" to 822 format addr */
541 #define FT_LS_FRIENDLY  52      /* set "str" to "friendly" format addr */
542 #define FT_LV_HOSTTYPE  53      /* set "value" to addr host type */
543 #define FT_LV_INGRPF    54      /* set "value" to addr in-group flag */
544 #define FT_LV_NOHOSTF   55      /* set "value" to addr no-host flag */
545 d69 2
546 a70 2
547 #define FT_LOCALDATE    56      /* Coerce date to local timezone */
548 #define FT_GMTDATE      57      /* Coerce date to gmt */
549 d73 4
550 a76 4
551 #define FT_PARSEDATE    58      /* parse comp into a date (tws) struct */
552 #define FT_PARSEADDR    59      /* parse comp into a mailaddr struct */
553 #define FT_FORMATADDR   60      /* let external routine format addr */
554 #define FT_MYMBOX       61      /* do "mymbox" test on comp */
555 d80 1
556 a80 1
557 #define FT_ADDTOSEQ     62      /* add current msg to a sequence */
558 d84 18
559 a101 18
560 #define FT_SAVESTR      63      /* save current str reg */
561 #define FT_DONE         64      /* stop formatting */
562 #define FT_NOP          65      /* nop */
563 #define FT_GOTO         66      /* (relative) goto */
564 #define FT_IF_S_NULL    67      /* test if "str" null */
565 #define FT_IF_S         68      /* test if "str" non-null */
566 #define FT_IF_V_EQ      69      /* test if "value" = literal */
567 #define FT_IF_V_NE      70      /* test if "value" != literal */
568 #define FT_IF_V_GT      71      /* test if "value" > literal */
569 #define FT_IF_MATCH     72      /* test if "str" contains literal */
570 #define FT_IF_AMATCH    73      /* test if "str" starts with literal */
571 #define FT_S_NULL       74      /* V = 1 if "str" null */
572 #define FT_S_NONNULL    75      /* V = 1 if "str" non-null */
573 #define FT_V_EQ         76      /* V = 1 if "value" = literal */
574 #define FT_V_NE         77      /* V = 1 if "value" != literal */
575 #define FT_V_GT         78      /* V = 1 if "value" > literal */
576 #define FT_V_MATCH      79      /* V = 1 if "str" contains literal */
577 #define FT_V_AMATCH     80      /* V = 1 if "str" starts with literal */
578 @
579
580
581 1.3
582 log
583 @#ifdef VAN
584 @
585 text
586 @d1 1
587 @
588
589
590 1.2
591 log
592 @Fixes from Van Jacobson
593 @
594 text
595 @d77 1
596 d79 1
597 @
598
599
600 1.1
601 log
602 @Initial revision
603 @
604 text
605 @d21 10
606 a30 8
607 #define FT_LV_COMP      14      /* set "value" to comp (as dec. num) */
608 #define FT_LV_COMPFLAG  15      /* set "value" to comp flag word */
609 #define FT_LV_LIT       16      /* set "value" to literal num */
610 #define FT_LV_DAT       17      /* set "value" to dat[n] */
611 #define FT_LV_STRLEN    18      /* set "value" to length of "str" */
612 #define FT_LV_PLUS_L    19      /* set "value" += literal */
613 #define FT_LV_MINUS_L   20      /* set "value" -= literal */
614 #define FT_LV_CHAR_LEFT 21      /* set "value" to char left in output */
615 d32 21
616 a52 20
617 #define FT_LS_MONTH     22      /* set "str" to tws month */
618 #define FT_LS_LMONTH    23      /* set "str" to long tws month */
619 #define FT_LS_ZONE      24      /* set "str" to tws timezone */
620 #define FT_LS_DAY       25      /* set "str" to tws weekday */
621 #define FT_LS_WEEKDAY   26      /* set "str" to long tws weekday */
622 #define FT_LS_822DATE   27      /* set "str" to 822 date str */
623 #define FT_LS_PRETTY    28      /* set "str" to pretty (?) date str */
624 #define FT_LV_SEC       29      /* set "value" to tws second */
625 #define FT_LV_MIN       30      /* set "value" to tws minute */
626 #define FT_LV_HOUR      31      /* set "value" to tws hour */
627 #define FT_LV_MDAY      32      /* set "value" to tws day of month */
628 #define FT_LV_MON       33      /* set "value" to tws month */
629 #define FT_LV_YEAR      34      /* set "value" to tws year */
630 #define FT_LV_YDAY      35      /* set "value" to tws day of year */
631 #define FT_LV_WDAY      36      /* set "value" to tws weekday */
632 #define FT_LV_ZONE      37      /* set "value" to tws timezone */
633 #define FT_LV_CLOCK     38      /* set "value" to tws clock */
634 #define FT_LV_RCLOCK    39      /* set "value" to now - tws clock */
635 #define FT_LV_DAYF      40      /* set "value" to tws day flag */
636 #define FT_LV_TZONEF    41      /* set "value" to tws timezone flag */
637 d54 11
638 a64 11
639 #define FT_LS_PERS      42      /* set "str" to person part of addr */
640 #define FT_LS_MBOX      43      /* set "str" to mbox part of addr */
641 #define FT_LS_HOST      44      /* set "str" to host part of addr */
642 #define FT_LS_PATH      45      /* set "str" to route part of addr */
643 #define FT_LS_GNAME     46      /* set "str" to group part of addr */
644 #define FT_LS_NOTE      47      /* set "str" to comment part of addr */
645 #define FT_LS_822ADDR   48      /* set "str" to 822 format addr */
646 #define FT_LS_FRIENDLY  49      /* set "str" to "friendly" format addr */
647 #define FT_LV_HOSTTYPE  50      /* set "value" to addr host type */
648 #define FT_LV_INGRPF    51      /* set "value" to addr in-group flag */
649 #define FT_LV_NOHOSTF   52      /* set "value" to addr no-host flag */
650 d66 4
651 d71 4
652 a74 4
653 #define FT_PARSEDATE    53      /* parse comp into a date (tws) struct */
654 #define FT_PARSEADDR    54      /* parse comp into a mailaddr struct */
655 #define FT_FORMATADDR   55      /* let external routine format addr */
656 #define FT_MYMBOX       56      /* do "mymbox" test on comp */
657 d76 3
658 d80 18
659 a97 18
660 #define FT_SAVESTR      57      /* save current str reg */
661 #define FT_DONE         58      /* stop formatting */
662 #define FT_NOP          59      /* nop */
663 #define FT_GOTO         60      /* (relative) goto */
664 #define FT_IF_S_NULL    61      /* test if "str" null */
665 #define FT_IF_S         62      /* test if "str" non-null */
666 #define FT_IF_V_EQ      63      /* test if "value" = literal */
667 #define FT_IF_V_NE      64      /* test if "value" != literal */
668 #define FT_IF_V_GT      65      /* test if "value" > literal */
669 #define FT_IF_MATCH     66      /* test if "str" contains literal */
670 #define FT_IF_AMATCH    67      /* test if "str" starts with literal */
671 #define FT_S_NULL       68      /* V = 1 if "str" null */
672 #define FT_S_NONNULL    69      /* V = 1 if "str" non-null */
673 #define FT_V_EQ         70      /* V = 1 if "value" = literal */
674 #define FT_V_NE         71      /* V = 1 if "value" != literal */
675 #define FT_V_GT         72      /* V = 1 if "value" > literal */
676 #define FT_V_MATCH      73      /* V = 1 if "str" contains literal */
677 #define FT_V_AMATCH     74      /* V = 1 if "str" starts with literal */
678 @