aboutsummaryrefslogtreecommitdiff
path: root/src/backend/nodes/outfuncs.c
diff options
context:
space:
mode:
authorAndrew Dunstan <andrew@dunslane.net>2022-09-01 17:09:46 -0400
committerAndrew Dunstan <andrew@dunslane.net>2022-09-01 17:10:42 -0400
commit96ef3237bf741c12390003e90a4d7115c0c854b7 (patch)
treef5efee6e72fd34e535f34d30a56daf15d92a6fbc /src/backend/nodes/outfuncs.c
parentc4e861b7bba3c4766beac53239c5435b9abe1275 (diff)
downloadpostgresql-96ef3237bf741c12390003e90a4d7115c0c854b7.tar.gz
postgresql-96ef3237bf741c12390003e90a4d7115c0c854b7.zip
Revert SQL/JSON features
The reverts the following and makes some associated cleanups: commit f79b803dc: Common SQL/JSON clauses commit f4fb45d15: SQL/JSON constructors commit 5f0adec25: Make STRING an unreserved_keyword. commit 33a377608: IS JSON predicate commit 1a36bc9db: SQL/JSON query functions commit 606948b05: SQL JSON functions commit 49082c2cc: RETURNING clause for JSON() and JSON_SCALAR() commit 4e34747c8: JSON_TABLE commit fadb48b00: PLAN clauses for JSON_TABLE commit 2ef6f11b0: Reduce running time of jsonb_sqljson test commit 14d3f24fa: Further improve jsonb_sqljson parallel test commit a6baa4bad: Documentation for SQL/JSON features commit b46bcf7a4: Improve readability of SQL/JSON documentation. commit 112fdb352: Fix finalization for json_objectagg and friends commit fcdb35c32: Fix transformJsonBehavior commit 4cd8717af: Improve a couple of sql/json error messages commit f7a605f63: Small cleanups in SQL/JSON code commit 9c3d25e17: Fix JSON_OBJECTAGG uniquefying bug commit a79153b7a: Claim SQL standard compliance for SQL/JSON features commit a1e7616d6: Rework SQL/JSON documentation commit 8d9f9634e: Fix errors in copyfuncs/equalfuncs support for JSON node types. commit 3c633f32b: Only allow returning string types or bytea from json_serialize commit 67b26703b: expression eval: Fix EEOP_JSON_CONSTRUCTOR and EEOP_JSONEXPR size. The release notes are also adjusted. Backpatch to release 15. Discussion: https://postgr.es/m/40d2c882-bcac-19a9-754d-4299e1d87ac7@postgresql.org
Diffstat (limited to 'src/backend/nodes/outfuncs.c')
-rw-r--r--src/backend/nodes/outfuncs.c175
1 files changed, 0 insertions, 175 deletions
diff --git a/src/backend/nodes/outfuncs.c b/src/backend/nodes/outfuncs.c
index e9a8bea125c..3f8e58626cc 100644
--- a/src/backend/nodes/outfuncs.c
+++ b/src/backend/nodes/outfuncs.c
@@ -1103,7 +1103,6 @@ _outTableFunc(StringInfo str, const TableFunc *node)
{
WRITE_NODE_TYPE("TABLEFUNC");
- WRITE_ENUM_FIELD(functype, TableFuncType);
WRITE_NODE_FIELD(ns_uris);
WRITE_NODE_FIELD(ns_names);
WRITE_NODE_FIELD(docexpr);
@@ -1114,9 +1113,7 @@ _outTableFunc(StringInfo str, const TableFunc *node)
WRITE_NODE_FIELD(colcollations);
WRITE_NODE_FIELD(colexprs);
WRITE_NODE_FIELD(coldefexprs);
- WRITE_NODE_FIELD(colvalexprs);
WRITE_BITMAPSET_FIELD(notnulls);
- WRITE_NODE_FIELD(plan);
WRITE_INT_FIELD(ordinalitycol);
WRITE_LOCATION_FIELD(location);
}
@@ -1766,145 +1763,6 @@ _outOnConflictExpr(StringInfo str, const OnConflictExpr *node)
WRITE_NODE_FIELD(exclRelTlist);
}
-static void
-_outJsonFormat(StringInfo str, const JsonFormat *node)
-{
- WRITE_NODE_TYPE("JSONFORMAT");
-
- WRITE_ENUM_FIELD(format_type, JsonFormatType);
- WRITE_ENUM_FIELD(encoding, JsonEncoding);
- WRITE_LOCATION_FIELD(location);
-}
-
-static void
-_outJsonReturning(StringInfo str, const JsonReturning *node)
-{
- WRITE_NODE_TYPE("JSONRETURNING");
-
- WRITE_NODE_FIELD(format);
- WRITE_OID_FIELD(typid);
- WRITE_INT_FIELD(typmod);
-}
-
-static void
-_outJsonValueExpr(StringInfo str, const JsonValueExpr *node)
-{
- WRITE_NODE_TYPE("JSONVALUEEXPR");
-
- WRITE_NODE_FIELD(raw_expr);
- WRITE_NODE_FIELD(formatted_expr);
- WRITE_NODE_FIELD(format);
-}
-
-static void
-_outJsonConstructorExpr(StringInfo str, const JsonConstructorExpr *node)
-{
- WRITE_NODE_TYPE("JSONCONSTRUCTOREXPR");
-
- WRITE_ENUM_FIELD(type, JsonConstructorType);
- WRITE_NODE_FIELD(args);
- WRITE_NODE_FIELD(func);
- WRITE_NODE_FIELD(coercion);
- WRITE_NODE_FIELD(returning);
- WRITE_BOOL_FIELD(absent_on_null);
- WRITE_BOOL_FIELD(unique);
- WRITE_LOCATION_FIELD(location);
-}
-
-static void
-_outJsonIsPredicate(StringInfo str, const JsonIsPredicate *node)
-{
- WRITE_NODE_TYPE("JSONISPREDICATE");
-
- WRITE_NODE_FIELD(expr);
- WRITE_NODE_FIELD(format);
- WRITE_ENUM_FIELD(item_type, JsonValueType);
- WRITE_BOOL_FIELD(unique_keys);
- WRITE_LOCATION_FIELD(location);
-}
-
-static void
-_outJsonBehavior(StringInfo str, const JsonBehavior *node)
-{
- WRITE_NODE_TYPE("JSONBEHAVIOR");
-
- WRITE_ENUM_FIELD(btype, JsonBehaviorType);
- WRITE_NODE_FIELD(default_expr);
-}
-
-static void
-_outJsonExpr(StringInfo str, const JsonExpr *node)
-{
- WRITE_NODE_TYPE("JSONEXPR");
-
- WRITE_ENUM_FIELD(op, JsonExprOp);
- WRITE_NODE_FIELD(formatted_expr);
- WRITE_NODE_FIELD(result_coercion);
- WRITE_NODE_FIELD(format);
- WRITE_NODE_FIELD(path_spec);
- WRITE_NODE_FIELD(passing_names);
- WRITE_NODE_FIELD(passing_values);
- WRITE_NODE_FIELD(returning);
- WRITE_NODE_FIELD(on_empty);
- WRITE_NODE_FIELD(on_error);
- WRITE_NODE_FIELD(coercions);
- WRITE_ENUM_FIELD(wrapper, JsonWrapper);
- WRITE_BOOL_FIELD(omit_quotes);
- WRITE_LOCATION_FIELD(location);
-}
-
-static void
-_outJsonCoercion(StringInfo str, const JsonCoercion *node)
-{
- WRITE_NODE_TYPE("JSONCOERCION");
-
- WRITE_NODE_FIELD(expr);
- WRITE_BOOL_FIELD(via_populate);
- WRITE_BOOL_FIELD(via_io);
- WRITE_OID_FIELD(collation);
-}
-
-static void
-_outJsonItemCoercions(StringInfo str, const JsonItemCoercions *node)
-{
- WRITE_NODE_TYPE("JSONITEMCOERCIONS");
-
- WRITE_NODE_FIELD(null);
- WRITE_NODE_FIELD(string);
- WRITE_NODE_FIELD(numeric);
- WRITE_NODE_FIELD(boolean);
- WRITE_NODE_FIELD(date);
- WRITE_NODE_FIELD(time);
- WRITE_NODE_FIELD(timetz);
- WRITE_NODE_FIELD(timestamp);
- WRITE_NODE_FIELD(timestamptz);
- WRITE_NODE_FIELD(composite);
-}
-
-static void
-_outJsonTableParent(StringInfo str, const JsonTableParent *node)
-{
- WRITE_NODE_TYPE("JSONTABLEPARENT");
-
- WRITE_NODE_FIELD(path);
- WRITE_STRING_FIELD(name);
- WRITE_NODE_FIELD(child);
- WRITE_BOOL_FIELD(outerJoin);
- WRITE_INT_FIELD(colMin);
- WRITE_INT_FIELD(colMax);
- WRITE_BOOL_FIELD(errorOnError);
-}
-
-static void
-_outJsonTableSibling(StringInfo str, const JsonTableSibling *node)
-{
- WRITE_NODE_TYPE("JSONTABLESIBLING");
-
- WRITE_NODE_FIELD(larg);
- WRITE_NODE_FIELD(rarg);
- WRITE_BOOL_FIELD(cross);
-}
-
/*****************************************************************************
*
* Stuff from pathnodes.h.
@@ -4730,39 +4588,6 @@ outNode(StringInfo str, const void *obj)
case T_PartitionRangeDatum:
_outPartitionRangeDatum(str, obj);
break;
- case T_JsonFormat:
- _outJsonFormat(str, obj);
- break;
- case T_JsonReturning:
- _outJsonReturning(str, obj);
- break;
- case T_JsonValueExpr:
- _outJsonValueExpr(str, obj);
- break;
- case T_JsonConstructorExpr:
- _outJsonConstructorExpr(str, obj);
- break;
- case T_JsonIsPredicate:
- _outJsonIsPredicate(str, obj);
- break;
- case T_JsonBehavior:
- _outJsonBehavior(str, obj);
- break;
- case T_JsonExpr:
- _outJsonExpr(str, obj);
- break;
- case T_JsonCoercion:
- _outJsonCoercion(str, obj);
- break;
- case T_JsonItemCoercions:
- _outJsonItemCoercions(str, obj);
- break;
- case T_JsonTableParent:
- _outJsonTableParent(str, obj);
- break;
- case T_JsonTableSibling:
- _outJsonTableSibling(str, obj);
- break;
default: