1cbb07febSzrj /* 2cbb07febSzrj * This file was generated by the mksyntax program. 3cbb07febSzrj */ 4cbb07febSzrj 5cbb07febSzrj #include "parser.h" 6cbb07febSzrj #include "shell.h" 7cbb07febSzrj #include "syntax.h" 8cbb07febSzrj 9cbb07febSzrj /* syntax table used when not in quotes */ 10cbb07febSzrj const char basesyntax[SYNBASE + CHAR_MAX + 1] = { 11cbb07febSzrj [SYNBASE + PEOF] = CEOF, 12cbb07febSzrj [SYNBASE + CTLESC] = CCTL, 13cbb07febSzrj [SYNBASE + CTLVAR] = CCTL, 14cbb07febSzrj [SYNBASE + CTLENDVAR] = CCTL, 15cbb07febSzrj [SYNBASE + CTLBACKQ] = CCTL, 16cbb07febSzrj [SYNBASE + CTLBACKQ + CTLQUOTE] = CCTL, 17cbb07febSzrj [SYNBASE + CTLARI] = CCTL, 18cbb07febSzrj [SYNBASE + CTLENDARI] = CCTL, 19cbb07febSzrj [SYNBASE + CTLQUOTEMARK] = CCTL, 20cbb07febSzrj [SYNBASE + CTLQUOTEEND] = CCTL, 21cbb07febSzrj [SYNBASE + '\n'] = CNL, 22cbb07febSzrj [SYNBASE + '\\'] = CBACK, 23cbb07febSzrj [SYNBASE + '\''] = CSQUOTE, 24cbb07febSzrj [SYNBASE + '"'] = CDQUOTE, 25cbb07febSzrj [SYNBASE + '`'] = CBQUOTE, 26cbb07febSzrj [SYNBASE + '$'] = CVAR, 27cbb07febSzrj [SYNBASE + '}'] = CENDVAR, 28cbb07febSzrj [SYNBASE + '<'] = CSPCL, 29cbb07febSzrj [SYNBASE + '>'] = CSPCL, 30cbb07febSzrj [SYNBASE + '('] = CSPCL, 31cbb07febSzrj [SYNBASE + ')'] = CSPCL, 32cbb07febSzrj [SYNBASE + ';'] = CSPCL, 33cbb07febSzrj [SYNBASE + '&'] = CSPCL, 34cbb07febSzrj [SYNBASE + '|'] = CSPCL, 35cbb07febSzrj [SYNBASE + ' '] = CSPCL, 36cbb07febSzrj [SYNBASE + '\t'] = CSPCL, 37cbb07febSzrj }; 38cbb07febSzrj 39cbb07febSzrj /* syntax table used when in double quotes */ 40cbb07febSzrj const char dqsyntax[SYNBASE + CHAR_MAX + 1] = { 41cbb07febSzrj [SYNBASE + PEOF] = CEOF, 42cbb07febSzrj [SYNBASE + CTLESC] = CCTL, 43cbb07febSzrj [SYNBASE + CTLVAR] = CCTL, 44cbb07febSzrj [SYNBASE + CTLENDVAR] = CCTL, 45cbb07febSzrj [SYNBASE + CTLBACKQ] = CCTL, 46cbb07febSzrj [SYNBASE + CTLBACKQ + CTLQUOTE] = CCTL, 47cbb07febSzrj [SYNBASE + CTLARI] = CCTL, 48cbb07febSzrj [SYNBASE + CTLENDARI] = CCTL, 49cbb07febSzrj [SYNBASE + CTLQUOTEMARK] = CCTL, 50cbb07febSzrj [SYNBASE + CTLQUOTEEND] = CCTL, 51*3e3895bfSKrzysztof Piecuch [SYNBASE + '\n'] = CQNL, 52cbb07febSzrj [SYNBASE + '\\'] = CBACK, 53cbb07febSzrj [SYNBASE + '"'] = CENDQUOTE, 54cbb07febSzrj [SYNBASE + '`'] = CBQUOTE, 55cbb07febSzrj [SYNBASE + '$'] = CVAR, 56cbb07febSzrj [SYNBASE + '}'] = CENDVAR, 57cbb07febSzrj [SYNBASE + '!'] = CCTL, 58cbb07febSzrj [SYNBASE + '*'] = CCTL, 59cbb07febSzrj [SYNBASE + '?'] = CCTL, 60cbb07febSzrj [SYNBASE + '['] = CCTL, 61cbb07febSzrj [SYNBASE + ']'] = CCTL, 62cbb07febSzrj [SYNBASE + '='] = CCTL, 63cbb07febSzrj [SYNBASE + '~'] = CCTL, 64cbb07febSzrj [SYNBASE + ':'] = CCTL, 65cbb07febSzrj [SYNBASE + '/'] = CCTL, 66cbb07febSzrj [SYNBASE + '-'] = CCTL, 67cbb07febSzrj [SYNBASE + '^'] = CCTL, 68cbb07febSzrj }; 69cbb07febSzrj 70cbb07febSzrj /* syntax table used when in single quotes */ 71cbb07febSzrj const char sqsyntax[SYNBASE + CHAR_MAX + 1] = { 72cbb07febSzrj [SYNBASE + PEOF] = CEOF, 73cbb07febSzrj [SYNBASE + CTLESC] = CCTL, 74cbb07febSzrj [SYNBASE + CTLVAR] = CCTL, 75cbb07febSzrj [SYNBASE + CTLENDVAR] = CCTL, 76cbb07febSzrj [SYNBASE + CTLBACKQ] = CCTL, 77cbb07febSzrj [SYNBASE + CTLBACKQ + CTLQUOTE] = CCTL, 78cbb07febSzrj [SYNBASE + CTLARI] = CCTL, 79cbb07febSzrj [SYNBASE + CTLENDARI] = CCTL, 80cbb07febSzrj [SYNBASE + CTLQUOTEMARK] = CCTL, 81cbb07febSzrj [SYNBASE + CTLQUOTEEND] = CCTL, 82*3e3895bfSKrzysztof Piecuch [SYNBASE + '\n'] = CQNL, 83cbb07febSzrj [SYNBASE + '\\'] = CSBACK, 84cbb07febSzrj [SYNBASE + '\''] = CENDQUOTE, 85cbb07febSzrj [SYNBASE + '!'] = CCTL, 86cbb07febSzrj [SYNBASE + '*'] = CCTL, 87cbb07febSzrj [SYNBASE + '?'] = CCTL, 88cbb07febSzrj [SYNBASE + '['] = CCTL, 89cbb07febSzrj [SYNBASE + ']'] = CCTL, 90cbb07febSzrj [SYNBASE + '='] = CCTL, 91cbb07febSzrj [SYNBASE + '~'] = CCTL, 92cbb07febSzrj [SYNBASE + ':'] = CCTL, 93cbb07febSzrj [SYNBASE + '/'] = CCTL, 94cbb07febSzrj [SYNBASE + '-'] = CCTL, 95cbb07febSzrj [SYNBASE + '^'] = CCTL, 96cbb07febSzrj }; 97cbb07febSzrj 98cbb07febSzrj /* syntax table used when in arithmetic */ 99cbb07febSzrj const char arisyntax[SYNBASE + CHAR_MAX + 1] = { 100cbb07febSzrj [SYNBASE + PEOF] = CEOF, 101cbb07febSzrj [SYNBASE + CTLESC] = CCTL, 102cbb07febSzrj [SYNBASE + CTLVAR] = CCTL, 103cbb07febSzrj [SYNBASE + CTLENDVAR] = CCTL, 104cbb07febSzrj [SYNBASE + CTLBACKQ] = CCTL, 105cbb07febSzrj [SYNBASE + CTLBACKQ + CTLQUOTE] = CCTL, 106cbb07febSzrj [SYNBASE + CTLARI] = CCTL, 107cbb07febSzrj [SYNBASE + CTLENDARI] = CCTL, 108cbb07febSzrj [SYNBASE + CTLQUOTEMARK] = CCTL, 109cbb07febSzrj [SYNBASE + CTLQUOTEEND] = CCTL, 110*3e3895bfSKrzysztof Piecuch [SYNBASE + '\n'] = CQNL, 111cbb07febSzrj [SYNBASE + '\\'] = CBACK, 112cbb07febSzrj [SYNBASE + '`'] = CBQUOTE, 113cbb07febSzrj [SYNBASE + '"'] = CIGN, 114cbb07febSzrj [SYNBASE + '$'] = CVAR, 115cbb07febSzrj [SYNBASE + '}'] = CENDVAR, 116cbb07febSzrj [SYNBASE + '('] = CLP, 117cbb07febSzrj [SYNBASE + ')'] = CRP, 118cbb07febSzrj }; 119cbb07febSzrj 120cbb07febSzrj /* character classification table */ 121cbb07febSzrj const char is_type[SYNBASE + CHAR_MAX + 1] = { 122cbb07febSzrj [SYNBASE + '0'] = ISDIGIT, 123cbb07febSzrj [SYNBASE + '1'] = ISDIGIT, 124cbb07febSzrj [SYNBASE + '2'] = ISDIGIT, 125cbb07febSzrj [SYNBASE + '3'] = ISDIGIT, 126cbb07febSzrj [SYNBASE + '4'] = ISDIGIT, 127cbb07febSzrj [SYNBASE + '5'] = ISDIGIT, 128cbb07febSzrj [SYNBASE + '6'] = ISDIGIT, 129cbb07febSzrj [SYNBASE + '7'] = ISDIGIT, 130cbb07febSzrj [SYNBASE + '8'] = ISDIGIT, 131cbb07febSzrj [SYNBASE + '9'] = ISDIGIT, 132cbb07febSzrj [SYNBASE + 'a'] = ISLOWER, 133cbb07febSzrj [SYNBASE + 'b'] = ISLOWER, 134cbb07febSzrj [SYNBASE + 'c'] = ISLOWER, 135cbb07febSzrj [SYNBASE + 'd'] = ISLOWER, 136cbb07febSzrj [SYNBASE + 'e'] = ISLOWER, 137cbb07febSzrj [SYNBASE + 'f'] = ISLOWER, 138cbb07febSzrj [SYNBASE + 'g'] = ISLOWER, 139cbb07febSzrj [SYNBASE + 'h'] = ISLOWER, 140cbb07febSzrj [SYNBASE + 'i'] = ISLOWER, 141cbb07febSzrj [SYNBASE + 'j'] = ISLOWER, 142cbb07febSzrj [SYNBASE + 'k'] = ISLOWER, 143cbb07febSzrj [SYNBASE + 'l'] = ISLOWER, 144cbb07febSzrj [SYNBASE + 'm'] = ISLOWER, 145cbb07febSzrj [SYNBASE + 'n'] = ISLOWER, 146cbb07febSzrj [SYNBASE + 'o'] = ISLOWER, 147cbb07febSzrj [SYNBASE + 'p'] = ISLOWER, 148cbb07febSzrj [SYNBASE + 'q'] = ISLOWER, 149cbb07febSzrj [SYNBASE + 'r'] = ISLOWER, 150cbb07febSzrj [SYNBASE + 's'] = ISLOWER, 151cbb07febSzrj [SYNBASE + 't'] = ISLOWER, 152cbb07febSzrj [SYNBASE + 'u'] = ISLOWER, 153cbb07febSzrj [SYNBASE + 'v'] = ISLOWER, 154cbb07febSzrj [SYNBASE + 'w'] = ISLOWER, 155cbb07febSzrj [SYNBASE + 'x'] = ISLOWER, 156cbb07febSzrj [SYNBASE + 'y'] = ISLOWER, 157cbb07febSzrj [SYNBASE + 'z'] = ISLOWER, 158cbb07febSzrj [SYNBASE + 'A'] = ISUPPER, 159cbb07febSzrj [SYNBASE + 'B'] = ISUPPER, 160cbb07febSzrj [SYNBASE + 'C'] = ISUPPER, 161cbb07febSzrj [SYNBASE + 'D'] = ISUPPER, 162cbb07febSzrj [SYNBASE + 'E'] = ISUPPER, 163cbb07febSzrj [SYNBASE + 'F'] = ISUPPER, 164cbb07febSzrj [SYNBASE + 'G'] = ISUPPER, 165cbb07febSzrj [SYNBASE + 'H'] = ISUPPER, 166cbb07febSzrj [SYNBASE + 'I'] = ISUPPER, 167cbb07febSzrj [SYNBASE + 'J'] = ISUPPER, 168cbb07febSzrj [SYNBASE + 'K'] = ISUPPER, 169cbb07febSzrj [SYNBASE + 'L'] = ISUPPER, 170cbb07febSzrj [SYNBASE + 'M'] = ISUPPER, 171cbb07febSzrj [SYNBASE + 'N'] = ISUPPER, 172cbb07febSzrj [SYNBASE + 'O'] = ISUPPER, 173cbb07febSzrj [SYNBASE + 'P'] = ISUPPER, 174cbb07febSzrj [SYNBASE + 'Q'] = ISUPPER, 175cbb07febSzrj [SYNBASE + 'R'] = ISUPPER, 176cbb07febSzrj [SYNBASE + 'S'] = ISUPPER, 177cbb07febSzrj [SYNBASE + 'T'] = ISUPPER, 178cbb07febSzrj [SYNBASE + 'U'] = ISUPPER, 179cbb07febSzrj [SYNBASE + 'V'] = ISUPPER, 180cbb07febSzrj [SYNBASE + 'W'] = ISUPPER, 181cbb07febSzrj [SYNBASE + 'X'] = ISUPPER, 182cbb07febSzrj [SYNBASE + 'Y'] = ISUPPER, 183cbb07febSzrj [SYNBASE + 'Z'] = ISUPPER, 184cbb07febSzrj [SYNBASE + '_'] = ISUNDER, 185cbb07febSzrj [SYNBASE + '#'] = ISSPECL, 186cbb07febSzrj [SYNBASE + '?'] = ISSPECL, 187cbb07febSzrj [SYNBASE + '$'] = ISSPECL, 188cbb07febSzrj [SYNBASE + '!'] = ISSPECL, 189cbb07febSzrj [SYNBASE + '-'] = ISSPECL, 190cbb07febSzrj [SYNBASE + '*'] = ISSPECL, 191cbb07febSzrj [SYNBASE + '@'] = ISSPECL, 192cbb07febSzrj }; 193