|
|
1.1 ! root 1: /* ! 2: * Copyright (c) 1982 Regents of the University of California ! 3: */ ! 4: #ifndef lint ! 5: static char sccsid[] = "@(#)asscan3.c 4.4 6/30/83"; ! 6: #endif not lint ! 7: ! 8: #include "asscanl.h" ! 9: ! 10: readonly short type[] = { ! 11: ! 12: /*hit the hard end of file*/ SCANEOF, ! 13: /* '^@' 0x00 0000 */ SP, ! 14: /* '^A' 0x01 0001 */ BADCHAR, ! 15: /* '^B' 0x02 0002 */ BADCHAR, ! 16: /* '^C' 0x03 0003 */ BADCHAR, ! 17: /* '^D' 0x04 0004 */ BADCHAR, ! 18: /* '^E' 0x05 0005 */ BADCHAR, ! 19: /* '^F' 0x06 0006 */ BADCHAR, ! 20: /* '^G' 0x07 0007 */ BADCHAR, ! 21: /* '\b' 0x08 0010 */ BADCHAR, ! 22: /* '\t' 0x09 0011 */ SP, ! 23: /* '\n' 0x0a 0012 */ NL, ! 24: /* '^K' 0x0b 0013 */ BADCHAR, ! 25: /* '\f' 0x0c 0014 */ BADCHAR, ! 26: /* '\r' 0x0d 0015 */ SP, ! 27: /* '^N' 0x0e 0016 */ BADCHAR, ! 28: /* '^O' 0x0f 0017 */ BADCHAR, ! 29: /* '^P' 0x10 0020 */ BADCHAR, ! 30: /* '^Q' 0x11 0021 */ BADCHAR, ! 31: /* '^R' 0x12 0022 */ BADCHAR, ! 32: /* '^S' 0x13 0023 */ BADCHAR, ! 33: /* '^T' 0x14 0024 */ BADCHAR, ! 34: /* '^U' 0x15 0025 */ BADCHAR, ! 35: /* '^V' 0x16 0026 */ BADCHAR, ! 36: /* '^W' 0x17 0027 */ BADCHAR, ! 37: /* '^X' 0x18 0030 */ BADCHAR, ! 38: /* '^Y' 0x19 0031 */ BADCHAR, ! 39: /* '^Z' 0x1a 0032 */ BADCHAR, ! 40: /* '^[' 0x1b 0033 */ BADCHAR, ! 41: /* '^\' 0x1c 0034 */ BADCHAR, ! 42: /* '^]' 0x1d 0035 */ BADCHAR, ! 43: /* '^^' 0x1e 0036 */ BADCHAR, ! 44: /* '^_' 0x1f 0037 */ BADCHAR, ! 45: /* ' ' 0x20 0040 */ SP, ! 46: /* '!' 0x21 0041 */ ORNOT, ! 47: /* '"' 0x22 0042 */ DQ, ! 48: /* '#' 0x23 0043 */ SH, ! 49: /* '$' 0x24 0044 */ LITOP, ! 50: /* '%' 0x25 0045 */ REGOP, ! 51: /* '&' 0x26 0046 */ AND, ! 52: /* ''' 0x27 0047 */ SQ, ! 53: /* '(' 0x28 0050 */ LP, ! 54: /* ')' 0x29 0051 */ RP, ! 55: /* '*' 0x2a 0052 */ MUL, ! 56: /* '+' 0x2b 0053 */ PLUS, ! 57: /* ',' 0x2c 0054 */ CM, ! 58: /* '-' 0x2d 0055 */ MINUS, ! 59: /* '.' 0x2e 0056 */ ALPH, ! 60: /* '/' 0x2f 0057 */ DIV, ! 61: /* '0' 0x30 0060 */ DIG, ! 62: /* '1' 0x31 0061 */ DIG, ! 63: /* '2' 0x32 0062 */ DIG, ! 64: /* '3' 0x33 0063 */ DIG, ! 65: /* '4' 0x34 0064 */ DIG, ! 66: /* '5' 0x35 0065 */ DIG, ! 67: /* '6' 0x36 0066 */ DIG, ! 68: /* '7' 0x37 0067 */ DIG, ! 69: /* '8' 0x38 0070 */ DIG, ! 70: /* '9' 0x39 0071 */ DIG, ! 71: /* ':' 0x3a 0072 */ COLON, ! 72: /* ';' 0x3b 0073 */ SEMI, ! 73: /* '<' 0x3c 0074 */ LSH, ! 74: /* '=' 0x3d 0075 */ BADCHAR, ! 75: /* '>' 0x3e 0076 */ RSH, ! 76: /* '?' 0x3f 0077 */ BADCHAR, ! 77: /* '@' 0x40 0100 */ BADCHAR, ! 78: /* 'A' 0x41 0101 */ ALPH, ! 79: /* 'B' 0x42 0102 */ ALPH, ! 80: /* 'C' 0x43 0103 */ ALPH, ! 81: /* 'D' 0x44 0104 */ ALPH, ! 82: /* 'E' 0x45 0105 */ ALPH, ! 83: /* 'F' 0x46 0106 */ ALPH, ! 84: /* 'G' 0x47 0107 */ ALPH, ! 85: /* 'H' 0x48 0110 */ ALPH, ! 86: /* 'I' 0x49 0111 */ ALPH, ! 87: /* 'J' 0x4a 0112 */ ALPH, ! 88: /* 'K' 0x4b 0113 */ ALPH, ! 89: /* 'L' 0x4c 0114 */ ALPH, ! 90: /* 'M' 0x4d 0115 */ ALPH, ! 91: /* 'N' 0x4e 0116 */ ALPH, ! 92: /* 'O' 0x4f 0117 */ ALPH, ! 93: /* 'P' 0x50 0120 */ ALPH, ! 94: /* 'Q' 0x51 0121 */ ALPH, ! 95: /* 'R' 0x52 0122 */ ALPH, ! 96: /* 'S' 0x53 0123 */ ALPH, ! 97: /* 'T' 0x54 0124 */ ALPH, ! 98: /* 'U' 0x55 0125 */ ALPH, ! 99: /* 'V' 0x56 0126 */ ALPH, ! 100: /* 'W' 0x57 0127 */ ALPH, ! 101: /* 'X' 0x58 0130 */ ALPH, ! 102: /* 'Y' 0x59 0131 */ ALPH, ! 103: /* 'Z' 0x5a 0132 */ ALPH, ! 104: /* '[' 0x5b 0133 */ LB, ! 105: /* '\\' 0x5c 0134 */ BADCHAR, ! 106: /* ']' 0x5d 0135 */ RB, ! 107: /* '^' 0x5e 0136 */ XOR, ! 108: /* '_' 0x5f 0137 */ ALPH, ! 109: /* '`' 0x60 0140 */ SIZEQUOTE, ! 110: /* 'a' 0x61 0141 */ ALPH, ! 111: /* 'b' 0x62 0142 */ ALPH, ! 112: /* 'c' 0x63 0143 */ ALPH, ! 113: /* 'd' 0x64 0144 */ ALPH, ! 114: /* 'e' 0x65 0145 */ ALPH, ! 115: /* 'f' 0x66 0146 */ ALPH, ! 116: /* 'g' 0x67 0147 */ ALPH, ! 117: /* 'h' 0x68 0150 */ ALPH, ! 118: /* 'i' 0x69 0151 */ ALPH, ! 119: /* 'j' 0x6a 0152 */ ALPH, ! 120: /* 'k' 0x6b 0153 */ ALPH, ! 121: /* 'l' 0x6c 0154 */ ALPH, ! 122: /* 'm' 0x6d 0155 */ ALPH, ! 123: /* 'n' 0x6e 0156 */ ALPH, ! 124: /* 'o' 0x6f 0157 */ ALPH, ! 125: /* 'p' 0x70 0160 */ ALPH, ! 126: /* 'q' 0x71 0161 */ ALPH, ! 127: /* 'r' 0x72 0162 */ ALPH, ! 128: /* 's' 0x73 0163 */ ALPH, ! 129: /* 't' 0x74 0164 */ ALPH, ! 130: /* 'u' 0x75 0165 */ ALPH, ! 131: /* 'v' 0x76 0166 */ ALPH, ! 132: /* 'w' 0x77 0167 */ ALPH, ! 133: /* 'x' 0x78 0170 */ ALPH, ! 134: /* 'y' 0x79 0171 */ ALPH, ! 135: /* 'z' 0x7a 0172 */ ALPH, ! 136: /* '{' 0x7b 0173 */ BADCHAR, ! 137: /* '|' 0x7c 0174 */ IOR, ! 138: /* '}' 0x7d 0175 */ BADCHAR, ! 139: /* '~' 0x7e 0176 */ TILDE, ! 140: /* '^[' 0x7f 0177 */ BADCHAR, ! 141: 0 ! 142: }; ! 143: ! 144: readonly short charsets[] = { ! 145: /* '^@' 0x00 0000 */ 0, ! 146: /* '^A' 0x01 0001 */ 0, ! 147: /* '^B' 0x02 0002 */ 0, ! 148: /* '^C' 0x03 0003 */ 0, ! 149: /* '^D' 0x04 0004 */ 0, ! 150: /* '^E' 0x05 0005 */ 0, ! 151: /* '^F' 0x06 0006 */ 0, ! 152: /* '^G' 0x07 0007 */ 0, ! 153: /* '\b' 0x08 0010 */ 0, ! 154: /* '\t' 0x09 0011 */ SPACE, ! 155: /* '\n' 0x0a 0012 */ STRESCAPE, ! 156: /* '^K' 0x0b 0013 */ 0, ! 157: /* '\f' 0x0c 0014 */ 0, ! 158: /* '\r' 0x0d 0015 */ 0, ! 159: /* '^N' 0x0e 0016 */ 0, ! 160: /* '^O' 0x0f 0017 */ 0, ! 161: /* '^P' 0x10 0020 */ 0, ! 162: /* '^Q' 0x11 0021 */ 0, ! 163: /* '^R' 0x12 0022 */ 0, ! 164: /* '^S' 0x13 0023 */ 0, ! 165: /* '^T' 0x14 0024 */ 0, ! 166: /* '^U' 0x15 0025 */ 0, ! 167: /* '^V' 0x16 0026 */ 0, ! 168: /* '^W' 0x17 0027 */ 0, ! 169: /* '^X' 0x18 0030 */ 0, ! 170: /* '^Y' 0x19 0031 */ 0, ! 171: /* '^Z' 0x1a 0032 */ 0, ! 172: /* '^[' 0x1b 0033 */ 0, ! 173: /* '^\' 0x1c 0034 */ 0, ! 174: /* '^]' 0x1d 0035 */ 0, ! 175: /* '^^' 0x1e 0036 */ 0, ! 176: /* '^_' 0x1f 0037 */ 0, ! 177: /* ' ' 0x20 0040 */ SPACE, ! 178: /* '!' 0x21 0041 */ 0, ! 179: /* '"' 0x22 0042 */ STRESCAPE, ! 180: /* '#' 0x23 0043 */ 0, ! 181: /* '$' 0x24 0044 */ ALPHA, ! 182: /* '%' 0x25 0045 */ 0, ! 183: /* '&' 0x26 0046 */ 0, ! 184: /* ''' 0x27 0047 */ 0, ! 185: /* '(' 0x28 0050 */ 0, ! 186: /* ')' 0x29 0051 */ 0, ! 187: /* '*' 0x2a 0052 */ 0, ! 188: /* '+' 0x2b 0053 */ SIGN, ! 189: /* ',' 0x2c 0054 */ 0, ! 190: /* '-' 0x2d 0055 */ SIGN, ! 191: /* '.' 0x2e 0056 */ POINT+ALPHA, ! 192: /* '/' 0x2f 0057 */ 0, ! 193: /* '0' 0x30 0060 */ DIGIT+REGDIGIT+OCTDIGIT, ! 194: /* '1' 0x31 0061 */ DIGIT+REGDIGIT+OCTDIGIT, ! 195: /* '2' 0x32 0062 */ DIGIT+REGDIGIT+OCTDIGIT, ! 196: /* '3' 0x33 0063 */ DIGIT+REGDIGIT+OCTDIGIT, ! 197: /* '4' 0x34 0064 */ DIGIT+REGDIGIT+OCTDIGIT, ! 198: /* '5' 0x35 0065 */ DIGIT+REGDIGIT+OCTDIGIT, ! 199: /* '6' 0x36 0066 */ DIGIT+OCTDIGIT, ! 200: /* '7' 0x37 0067 */ DIGIT+OCTDIGIT, ! 201: /* '8' 0x38 0070 */ DIGIT, ! 202: /* '9' 0x39 0071 */ DIGIT, ! 203: /* ':' 0x3a 0072 */ 0, ! 204: /* ';' 0x3b 0073 */ 0, ! 205: /* '<' 0x3c 0074 */ 0, ! 206: /* '=' 0x3d 0075 */ 0, ! 207: /* '>' 0x3e 0076 */ 0, ! 208: /* '?' 0x3f 0077 */ 0, ! 209: /* '@' 0x40 0100 */ 0, ! 210: /* 'A' 0x41 0101 */ ALPHA+HEXUDIGIT, ! 211: /* 'B' 0x42 0102 */ ALPHA+HEXUDIGIT+SZSPECBEGIN, ! 212: /* 'C' 0x43 0103 */ ALPHA+HEXUDIGIT, ! 213: /* 'D' 0x44 0104 */ ALPHA+HEXUDIGIT+FLOATEXP+FLOATFLAG, ! 214: /* 'E' 0x45 0105 */ ALPHA+HEXUDIGIT+FLOATEXP, ! 215: /* 'F' 0x46 0106 */ ALPHA+HEXUDIGIT+FLOATFLAG+FLOATEXP, ! 216: /* 'G' 0x47 0107 */ ALPHA+FLOATFLAG+FLOATEXP, ! 217: /* 'H' 0x48 0110 */ ALPHA+FLOATFLAG+FLOATEXP, ! 218: /* 'I' 0x49 0111 */ ALPHA, ! 219: /* 'J' 0x4a 0112 */ ALPHA, ! 220: /* 'K' 0x4b 0113 */ ALPHA, ! 221: /* 'L' 0x4c 0114 */ ALPHA+SZSPECBEGIN, ! 222: /* 'M' 0x4d 0115 */ ALPHA, ! 223: /* 'N' 0x4e 0116 */ ALPHA, ! 224: /* 'O' 0x4f 0117 */ ALPHA, ! 225: /* 'P' 0x50 0120 */ ALPHA, ! 226: /* 'Q' 0x51 0121 */ ALPHA, ! 227: /* 'R' 0x52 0122 */ ALPHA, ! 228: /* 'S' 0x53 0123 */ ALPHA, ! 229: /* 'T' 0x54 0124 */ ALPHA, ! 230: /* 'U' 0x55 0125 */ ALPHA, ! 231: /* 'V' 0x56 0126 */ ALPHA, ! 232: /* 'W' 0x57 0127 */ ALPHA+SZSPECBEGIN, ! 233: /* 'X' 0x58 0130 */ ALPHA+HEXFLAG, ! 234: /* 'Y' 0x59 0131 */ ALPHA, ! 235: /* 'Z' 0x5a 0132 */ ALPHA, ! 236: /* '[' 0x5b 0133 */ 0, ! 237: /* '\\' 0x5c 0134 */ STRESCAPE, ! 238: /* ']' 0x5d 0135 */ 0, ! 239: /* '^' 0x5e 0136 */ 0, ! 240: /* '_' 0x5f 0137 */ ALPHA, ! 241: /* '`' 0x60 0140 */ 0, ! 242: /* 'a' 0x61 0141 */ ALPHA+HEXLDIGIT, ! 243: /* 'b' 0x62 0142 */ ALPHA+HEXLDIGIT+BSESCAPE+SZSPECBEGIN, ! 244: /* 'c' 0x63 0143 */ ALPHA+HEXLDIGIT, ! 245: /* 'd' 0x64 0144 */ ALPHA+HEXLDIGIT+FLOATEXP+FLOATFLAG, ! 246: /* 'e' 0x65 0145 */ ALPHA+HEXLDIGIT+FLOATEXP, ! 247: /* 'f' 0x66 0146 */ ALPHA+HEXLDIGIT+BSESCAPE+FLOATEXP+FLOATFLAG, ! 248: /* 'g' 0x67 0147 */ ALPHA+FLOATEXP+FLOATFLAG, ! 249: /* 'h' 0x68 0150 */ ALPHA+FLOATEXP+FLOATFLAG, ! 250: /* 'i' 0x69 0151 */ ALPHA, ! 251: /* 'j' 0x6a 0152 */ ALPHA, ! 252: /* 'k' 0x6b 0153 */ ALPHA, ! 253: /* 'l' 0x6c 0154 */ ALPHA+SZSPECBEGIN, ! 254: /* 'm' 0x6d 0155 */ ALPHA, ! 255: /* 'n' 0x6e 0156 */ ALPHA+BSESCAPE, ! 256: /* 'o' 0x6f 0157 */ ALPHA, ! 257: /* 'p' 0x70 0160 */ ALPHA, ! 258: /* 'q' 0x71 0161 */ ALPHA, ! 259: /* 'r' 0x72 0162 */ ALPHA+BSESCAPE, ! 260: /* 's' 0x73 0163 */ ALPHA, ! 261: /* 't' 0x74 0164 */ ALPHA+BSESCAPE, ! 262: /* 'u' 0x75 0165 */ ALPHA, ! 263: /* 'v' 0x76 0166 */ ALPHA, ! 264: /* 'w' 0x77 0167 */ ALPHA+SZSPECBEGIN, ! 265: /* 'x' 0x78 0170 */ ALPHA+HEXFLAG, ! 266: /* 'y' 0x79 0171 */ ALPHA, ! 267: /* 'z' 0x7a 0172 */ ALPHA, ! 268: /* '{' 0x7b 0173 */ 0, ! 269: /* '|' 0x7c 0174 */ 0, ! 270: /* '}' 0x7d 0175 */ 0, ! 271: /* '~' 0x7e 0176 */ 0, ! 272: /* '^[' 0x7f 0177 */ 0, ! 273: 0 ! 274: };
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.