summaryrefslogtreecommitdiff
path: root/src/backend/utils/adt/jsonpath_gram.y
diff options
context:
space:
mode:
authorPeter Eisentraut <peter@eisentraut.org>2024-01-03 11:25:33 +0100
committerPeter Eisentraut <peter@eisentraut.org>2024-01-03 11:25:33 +0100
commit283a95da923605c1cc148155db2d865d0801b419 (patch)
treeba18d24db7e71cab5ab8f6ce0224760e77a42fce /src/backend/utils/adt/jsonpath_gram.y
parentc1b9e1e56d8c11a00869766a02de537d349586cd (diff)
Reorganise jsonpath operators and methods
Various jsonpath operators and methods add various keywords, switch cases, and documentation entries in some order. However, they are not consistent; reorder them for better maintainability or readability. Author: Jeevan Chalke <jeevan.chalke@enterprisedb.com> Discussion: https://www.postgresql.org/message-id/flat/CAM2+6=XjTyqrrqHAOj80r0wVQxJSxc0iyib9bPC55uFO9VKatg@mail.gmail.com
Diffstat (limited to 'src/backend/utils/adt/jsonpath_gram.y')
-rw-r--r--src/backend/utils/adt/jsonpath_gram.y22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/backend/utils/adt/jsonpath_gram.y b/src/backend/utils/adt/jsonpath_gram.y
index adc259d5bf8..4233eedc1b4 100644
--- a/src/backend/utils/adt/jsonpath_gram.y
+++ b/src/backend/utils/adt/jsonpath_gram.y
@@ -80,7 +80,7 @@ static bool makeItemLikeRegex(JsonPathParseItem *expr,
%token <str> OR_P AND_P NOT_P
%token <str> LESS_P LESSEQUAL_P EQUAL_P NOTEQUAL_P GREATEREQUAL_P GREATER_P
%token <str> ANY_P STRICT_P LAX_P LAST_P STARTS_P WITH_P LIKE_REGEX_P FLAG_P
-%token <str> ABS_P SIZE_P TYPE_P FLOOR_P DOUBLE_P CEILING_P KEYVALUE_P
+%token <str> TYPE_P SIZE_P DOUBLE_P ABS_P CEILING_P FLOOR_P KEYVALUE_P
%token <str> DATETIME_P
%type <result> result
@@ -206,10 +206,10 @@ accessor_expr:
expr:
accessor_expr { $$ = makeItemList($1); }
| '(' expr ')' { $$ = $2; }
- | '+' expr %prec UMINUS { $$ = makeItemUnary(jpiPlus, $2); }
- | '-' expr %prec UMINUS { $$ = makeItemUnary(jpiMinus, $2); }
| expr '+' expr { $$ = makeItemBinary(jpiAdd, $1, $3); }
+ | '+' expr %prec UMINUS { $$ = makeItemUnary(jpiPlus, $2); }
| expr '-' expr { $$ = makeItemBinary(jpiSub, $1, $3); }
+ | '-' expr %prec UMINUS { $$ = makeItemUnary(jpiMinus, $2); }
| expr '*' expr { $$ = makeItemBinary(jpiMul, $1, $3); }
| expr '/' expr { $$ = makeItemBinary(jpiDiv, $1, $3); }
| expr '%' expr { $$ = makeItemBinary(jpiMod, $1, $3); }
@@ -278,28 +278,28 @@ key_name:
| EXISTS_P
| STRICT_P
| LAX_P
- | ABS_P
- | SIZE_P
+ | LAST_P
+ | FLAG_P
| TYPE_P
- | FLOOR_P
+ | SIZE_P
| DOUBLE_P
+ | ABS_P
| CEILING_P
+ | FLOOR_P
| DATETIME_P
| KEYVALUE_P
- | LAST_P
| STARTS_P
| WITH_P
| LIKE_REGEX_P
- | FLAG_P
;
method:
- ABS_P { $$ = jpiAbs; }
+ TYPE_P { $$ = jpiType; }
| SIZE_P { $$ = jpiSize; }
- | TYPE_P { $$ = jpiType; }
- | FLOOR_P { $$ = jpiFloor; }
| DOUBLE_P { $$ = jpiDouble; }
+ | ABS_P { $$ = jpiAbs; }
| CEILING_P { $$ = jpiCeiling; }
+ | FLOOR_P { $$ = jpiFloor; }
| KEYVALUE_P { $$ = jpiKeyValue; }
;
%%