|
|
1.1 root 1:
2: /* Format Types */
3: /* -------------*/
4:
5: /* types that output text */
6: #define FT_COMP 1 /* the text of a component */
7: #define FT_COMPF 2 /* comp text, filled */
8: #define FT_LIT 3 /* literal text */
9: #define FT_LITF 4 /* literal text, filled */
10: #define FT_LIT_FORCE 5 /* literal text, force output */
11: #define FT_CHAR 6 /* a single ascii character */
12: #define FT_NUM 7 /* "value" as decimal number */
13: #define FT_NUMF 8 /* "value" as filled dec number */
14: #define FT_STR 9 /* "str" as text */
15: #define FT_STRF 10 /* "str" as text, filled */
16: #define FT_STRFW 11 /* "str" as text, filled, width in "value" */
17: #define FT_PUTADDR 12 /* split and print address line */
18:
19: /* types that modify the "str" or "value" registers */
20: #define FT_LS_COMP 13 /* set "str" to component text */
21: #define FT_LS_LIT 14 /* set "str" to literal text */
22: #define FT_LS_TRIM 15 /* trim trailing white space from "str" */
23: #define FT_LV_COMP 16 /* set "value" to comp (as dec. num) */
24: #define FT_LV_COMPFLAG 17 /* set "value" to comp flag word */
25: #define FT_LV_LIT 18 /* set "value" to literal num */
26: #define FT_LV_DAT 19 /* set "value" to dat[n] */
27: #define FT_LV_STRLEN 20 /* set "value" to length of "str" */
28: #define FT_LV_PLUS_L 21 /* set "value" += literal */
29: #define FT_LV_MINUS_L 22 /* set "value" -= literal */
30: #define FT_LV_DIVIDE_L 23 /* set "value" to value / literal */
31: #define FT_LV_CHAR_LEFT 24 /* set "value" to char left in output */
32:
33: #define FT_LS_MONTH 25 /* set "str" to tws month */
34: #define FT_LS_LMONTH 26 /* set "str" to long tws month */
35: #define FT_LS_ZONE 27 /* set "str" to tws timezone */
36: #define FT_LS_DAY 28 /* set "str" to tws weekday */
37: #define FT_LS_WEEKDAY 29 /* set "str" to long tws weekday */
38: #define FT_LS_822DATE 30 /* set "str" to 822 date str */
39: #define FT_LS_PRETTY 31 /* set "str" to pretty (?) date str */
40: #define FT_LV_SEC 32 /* set "value" to tws second */
41: #define FT_LV_MIN 33 /* set "value" to tws minute */
42: #define FT_LV_HOUR 34 /* set "value" to tws hour */
43: #define FT_LV_MDAY 35 /* set "value" to tws day of month */
44: #define FT_LV_MON 36 /* set "value" to tws month */
45: #define FT_LV_YEAR 37 /* set "value" to tws year */
46: #define FT_LV_YDAY 38 /* set "value" to tws day of year */
47: #define FT_LV_WDAY 39 /* set "value" to tws weekday */
48: #define FT_LV_ZONE 40 /* set "value" to tws timezone */
49: #define FT_LV_CLOCK 41 /* set "value" to tws clock */
50: #define FT_LV_RCLOCK 42 /* set "value" to now - tws clock */
51: #define FT_LV_DAYF 43 /* set "value" to tws day flag */
52: #define FT_LV_DST 44 /* set "value" to tws daylight savings flag */
53: #define FT_LV_ZONEF 45 /* set "value" to tws timezone flag */
54:
55: #define FT_LS_PERS 46 /* set "str" to person part of addr */
56: #define FT_LS_MBOX 47 /* set "str" to mbox part of addr */
57: #define FT_LS_HOST 48 /* set "str" to host part of addr */
58: #define FT_LS_PATH 49 /* set "str" to route part of addr */
59: #define FT_LS_GNAME 50 /* set "str" to group part of addr */
60: #define FT_LS_NOTE 51 /* set "str" to comment part of addr */
61: #define FT_LS_822ADDR 52 /* set "str" to 822 format addr */
62: #define FT_LS_FRIENDLY 53 /* set "str" to "friendly" format addr */
63: #define FT_LV_HOSTTYPE 54 /* set "value" to addr host type */
64: #define FT_LV_INGRPF 55 /* set "value" to addr in-group flag */
65: #define FT_LV_NOHOSTF 56 /* set "value" to addr no-host flag */
66:
67: /* Date Coercion */
68: #define FT_LOCALDATE 57 /* Coerce date to local timezone */
69: #define FT_GMTDATE 58 /* Coerce date to gmt */
70:
71: /* pre-format processing */
72: #define FT_PARSEDATE 59 /* parse comp into a date (tws) struct */
73: #define FT_PARSEADDR 60 /* parse comp into a mailaddr struct */
74: #define FT_FORMATADDR 61 /* let external routine format addr */
75: #define FT_MYMBOX 62 /* do "mymbox" test on comp */
76:
77: /* misc. */
78: #define FT_ADDTOSEQ 63 /* add current msg to a sequence */
79:
80: /* conditionals & control flow (must be last) */
81: #define FT_SAVESTR 64 /* save current str reg */
82: #define FT_DONE 65 /* stop formatting */
83: #define FT_NOP 66 /* nop */
84: #define FT_GOTO 67 /* (relative) goto */
85: #define FT_IF_S_NULL 68 /* test if "str" null */
86: #define FT_IF_S 69 /* test if "str" non-null */
87: #define FT_IF_V_EQ 70 /* test if "value" = literal */
88: #define FT_IF_V_NE 71 /* test if "value" != literal */
89: #define FT_IF_V_GT 72 /* test if "value" > literal */
90: #define FT_IF_MATCH 73 /* test if "str" contains literal */
91: #define FT_IF_AMATCH 74 /* test if "str" starts with literal */
92: #define FT_S_NULL 75 /* V = 1 if "str" null */
93: #define FT_S_NONNULL 76 /* V = 1 if "str" non-null */
94: #define FT_V_EQ 77 /* V = 1 if "value" = literal */
95: #define FT_V_NE 78 /* V = 1 if "value" != literal */
96: #define FT_V_GT 79 /* V = 1 if "value" > literal */
97: #define FT_V_MATCH 80 /* V = 1 if "str" contains literal */
98: #define FT_V_AMATCH 81 /* V = 1 if "str" starts with literal */
99:
100: #define IF_FUNCS FT_S_NULL /* start of "if" functions */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.