|
4 | 4 | * procedural language |
5 | 5 | * |
6 | 6 | * IDENTIFICATION |
7 | | - * $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/scan.l,v 1.18 2002/07/30 16:33:08 tgl Exp $ |
| 7 | + * $Header: /cvsroot/pgsql/src/pl/plpgsql/src/Attic/scan.l,v 1.19 2002/08/04 03:59:09 momjian Exp $ |
8 | 8 | * |
9 | 9 | * This software is copyrighted by Jan Wieck - Hamburg. |
10 | 10 | * |
@@ -61,9 +61,9 @@ static void plpgsql_input(char *buf, int *result, int max); |
61 | 61 |
|
62 | 62 | %option yylineno |
63 | 63 |
|
64 | | - |
65 | | -WS [\200-\377_A-Za-z"] |
66 | | -WC [\200-\377_A-Za-z0-9"] |
| 64 | +DQUOTE \"([^\"])*\" |
| 65 | +WS [\200-\377_A-Za-z] |
| 66 | +WC [\200-\377_A-Za-z0-9] |
67 | 67 |
|
68 | 68 | %x IN_STRING IN_COMMENT |
69 | 69 |
|
@@ -155,17 +155,48 @@ dump { return O_DUMP; } |
155 | 155 | * ---------- |
156 | 156 | */ |
157 | 157 | {WS}{WC}* { return plpgsql_parse_word(yytext); } |
| 158 | +{DQUOTE}* { return plpgsql_parse_word(yytext); } |
| 159 | + |
158 | 160 | {WS}{WC}*\.{WS}{WC}* { return plpgsql_parse_dblword(yytext); } |
| 161 | +{WS}{WC}*\.{DQUOTE}* { return plpgsql_parse_dblword(yytext); } |
| 162 | +{DQUOTE}*\.{WS}{WC}* { return plpgsql_parse_dblword(yytext); } |
| 163 | +{DQUOTE}*\.{DQUOTE}* { return plpgsql_parse_dblword(yytext); } |
| 164 | + |
159 | 165 | {WS}{WC}*\.{WS}{WC}*\.{WS}{WC}* { return plpgsql_parse_tripword(yytext); } |
| 166 | +{WS}{WC}*\.{WS}{WC}*\.{DQUOTE}* { return plpgsql_parse_tripword(yytext); } |
| 167 | +{WS}{WC}*\.{DQUOTE}*\.{WS}{WC}* { return plpgsql_parse_tripword(yytext); } |
| 168 | +{WS}{WC}*\.{DQUOTE}*\.{DQUOTE}* { return plpgsql_parse_tripword(yytext); } |
| 169 | +{DQUOTE}*\.{WS}{WC}*\.{WS}{WC}* { return plpgsql_parse_tripword(yytext); } |
| 170 | +{DQUOTE}*\.{WS}{WC}*\.{DQUOTE}* { return plpgsql_parse_tripword(yytext); } |
| 171 | +{DQUOTE}*\.{DQUOTE}*\.{WS}{WC}* { return plpgsql_parse_tripword(yytext); } |
| 172 | +{DQUOTE}*\.{DQUOTE}*\.{DQUOTE}* { return plpgsql_parse_tripword(yytext); } |
| 173 | + |
160 | 174 | {WS}{WC}*%TYPE { return plpgsql_parse_wordtype(yytext); } |
| 175 | +{DQUOTE}*%TYPE { return plpgsql_parse_wordtype(yytext); } |
| 176 | + |
161 | 177 | {WS}{WC}*\.{WS}{WC}*%TYPE { return plpgsql_parse_dblwordtype(yytext); } |
| 178 | +{WS}{WC}*\.{DQUOTE}*%TYPE { return plpgsql_parse_dblwordtype(yytext); } |
| 179 | +{DQUOTE}*\.{WS}{WC}*%TYPE { return plpgsql_parse_dblwordtype(yytext); } |
| 180 | +{DQUOTE}*\.{DQUOTE}*%TYPE { return plpgsql_parse_dblwordtype(yytext); } |
| 181 | + |
162 | 182 | {WS}{WC}*%ROWTYPE { return plpgsql_parse_wordrowtype(yytext); } |
| 183 | +{DQUOTE}*%ROWTYPE { return plpgsql_parse_wordrowtype(yytext); } |
163 | 184 |
|
164 | 185 | \$[0-9]+ { return plpgsql_parse_word(yytext); } |
| 186 | + |
165 | 187 | \$[0-9]+\.{WS}{WC}* { return plpgsql_parse_dblword(yytext); } |
| 188 | +\$[0-9]+\.{DQUOTE}* { return plpgsql_parse_dblword(yytext); } |
| 189 | + |
166 | 190 | \$[0-9]+\.{WS}{WC}*\.{WS}{WC}* { return plpgsql_parse_tripword(yytext); } |
| 191 | +\$[0-9]+\.{WS}{WC}*\.{DQUOTE}* { return plpgsql_parse_tripword(yytext); } |
| 192 | +\$[0-9]+\.{DQUOTE}*\.{WS}{WC}* { return plpgsql_parse_tripword(yytext); } |
| 193 | +\$[0-9]+\.{DQUOTE}*\.{DQUOTE}* { return plpgsql_parse_tripword(yytext); } |
| 194 | + |
167 | 195 | \$[0-9]+%TYPE { return plpgsql_parse_wordtype(yytext); } |
| 196 | + |
168 | 197 | \$[0-9]+\.{WS}{WC}*%TYPE { return plpgsql_parse_dblwordtype(yytext); } |
| 198 | +\$[0-9]+\.{DQUOTE}*%TYPE { return plpgsql_parse_dblwordtype(yytext); } |
| 199 | + |
169 | 200 | \$[0-9]+%ROWTYPE { return plpgsql_parse_wordrowtype(yytext); } |
170 | 201 |
|
171 | 202 | [0-9]+ { return T_NUMBER; } |
|
0 commit comments