File tree 5 files changed +11
-3
lines changed
5 files changed +11
-3
lines changed Original file line number Diff line number Diff line change @@ -358,6 +358,7 @@ identifier {ident_start}{ident_cont}*
358
358
typecast " ::"
359
359
dot_dot \.\.
360
360
colon_equals " :="
361
+ equals_greater " =>"
361
362
362
363
/*
363
364
* "self" is the set of chars that should be returned as single-character
@@ -669,6 +670,10 @@ other .
669
670
ECHO;
670
671
}
671
672
673
+ {equals_greater} {
674
+ ECHO;
675
+ }
676
+
672
677
/*
673
678
* These rules are specific to psql --- they implement parenthesis
674
679
* counting and detection of command-ending semicolon. These must
Original file line number Diff line number Diff line change @@ -50,7 +50,7 @@ typedef union core_YYSTYPE
50
50
* the ASCII characters plus these:
51
51
* %token <str> IDENT FCONST SCONST BCONST XCONST Op
52
52
* %token <ival> ICONST PARAM
53
- * %token TYPECAST DOT_DOT COLON_EQUALS
53
+ * %token TYPECAST DOT_DOT COLON_EQUALS EQUALS_GREATER
54
54
* The above token definitions *must* be the first ones declared in any
55
55
* bison parser built atop this scanner, so that they will have consistent
56
56
* numbers assigned to them (specifically, IDENT = 258 and so on).
Original file line number Diff line number Diff line change 46
46
' WITH_LA' => ' with' ,
47
47
' TYPECAST' => ' ::' ,
48
48
' DOT_DOT' => ' ..' ,
49
- ' COLON_EQUALS' => ' :=' ,);
49
+ ' COLON_EQUALS' => ' :=' ,
50
+ ' EQUALS_GREATER' => ' =>' ,);
50
51
51
52
# specific replace_types for specific non-terminals - never include the ':'
52
53
# ECPG-only replace_types are defined in ecpg-replace_types
Original file line number Diff line number Diff line change @@ -236,6 +236,7 @@ array ({ident_cont}|{whitespace}|[\[\]\+\-\*\%\/\(\)\>\.])*
236
236
typecast " ::"
237
237
dot_dot \.\.
238
238
colon_equals " :="
239
+ equals_greater " =>"
239
240
240
241
/*
241
242
* "self" is the set of chars that should be returned as single-character
@@ -620,6 +621,7 @@ cppline {space}*#([^i][A-Za-z]*|{if}|{ifdef}|{ifndef}|{import})(.*\\{space})*.
620
621
<SQL >{typecast } { return TYPECAST; }
621
622
<SQL >{dot_dot } { return DOT_DOT; }
622
623
<SQL >{colon_equals } { return COLON_EQUALS; }
624
+ <SQL >{equals_greater } { return EQUALS_GREATER; }
623
625
<SQL >{informix_special } {
624
626
/* are we simulating Informix? */
625
627
if (INFORMIX_MODE)
Original file line number Diff line number Diff line change @@ -226,7 +226,7 @@ static void check_raise_parameters(PLpgSQL_stmt_raise *stmt);
226
226
*/
227
227
%token <str> IDENT FCONST SCONST BCONST XCONST Op
228
228
%token <ival> ICONST PARAM
229
- %token TYPECAST DOT_DOT COLON_EQUALS
229
+ %token TYPECAST DOT_DOT COLON_EQUALS EQUALS_GREATER
230
230
231
231
/*
232
232
* Other tokens recognized by plpgsql's lexer interface layer (pl_scanner.c).
You can’t perform that action at this time.
0 commit comments