@@ -1416,6 +1416,14 @@ LANGUAGE INTERNAL
14161416STRICT IMMUTABLE PARALLEL SAFE
14171417AS ' make_interval' ;
14181418
1419+ CREATE OR REPLACE FUNCTION
1420+ json_set(json_in json, path text [] , replacement json,
1421+ create_if_missing boolean DEFAULT true)
1422+ RETURNS json
1423+ LANGUAGE INTERNAL
1424+ STRICT IMMUTABLE PARALLEL SAFE
1425+ AS ' json_set' ;
1426+
14191427CREATE OR REPLACE FUNCTION
14201428 jsonb_set(jsonb_in jsonb, path text [] , replacement jsonb,
14211429 create_if_missing boolean DEFAULT true)
@@ -1440,6 +1448,14 @@ LANGUAGE INTERNAL
14401448STRICT IMMUTABLE PARALLEL SAFE
14411449AS ' parse_ident' ;
14421450
1451+ CREATE OR REPLACE FUNCTION
1452+ json_insert(json_in json, path text [] , replacement json,
1453+ insert_after boolean DEFAULT false)
1454+ RETURNS json
1455+ LANGUAGE INTERNAL
1456+ STRICT IMMUTABLE PARALLEL SAFE
1457+ AS ' json_insert' ;
1458+
14431459CREATE OR REPLACE FUNCTION
14441460 jsonb_insert(jsonb_in jsonb, path text [] , replacement jsonb,
14451461 insert_after boolean DEFAULT false)
@@ -1528,6 +1544,88 @@ LANGUAGE INTERNAL
15281544STRICT STABLE PARALLEL SAFE
15291545AS ' jsonb_path_query_first_tz' ;
15301546
1547+
1548+ CREATE OR REPLACE FUNCTION
1549+ json_path_exists(target json, path jsonpath, vars json DEFAULT ' {}' ,
1550+ silent boolean DEFAULT false)
1551+ RETURNS boolean
1552+ LANGUAGE INTERNAL
1553+ STRICT IMMUTABLE PARALLEL SAFE
1554+ AS ' json_path_exists' ;
1555+
1556+ CREATE OR REPLACE FUNCTION
1557+ json_path_match(target json, path jsonpath, vars json DEFAULT ' {}' ,
1558+ silent boolean DEFAULT false)
1559+ RETURNS boolean
1560+ LANGUAGE INTERNAL
1561+ STRICT IMMUTABLE PARALLEL SAFE
1562+ AS ' json_path_match' ;
1563+
1564+ CREATE OR REPLACE FUNCTION
1565+ json_path_query(target json, path jsonpath, vars json DEFAULT ' {}' ,
1566+ silent boolean DEFAULT false)
1567+ RETURNS SETOF json
1568+ LANGUAGE INTERNAL
1569+ STRICT IMMUTABLE PARALLEL SAFE
1570+ AS ' json_path_query' ;
1571+
1572+ CREATE OR REPLACE FUNCTION
1573+ json_path_query_array(target json, path jsonpath, vars json DEFAULT ' {}' ,
1574+ silent boolean DEFAULT false)
1575+ RETURNS json
1576+ LANGUAGE INTERNAL
1577+ STRICT IMMUTABLE PARALLEL SAFE
1578+ AS ' json_path_query_array' ;
1579+
1580+ CREATE OR REPLACE FUNCTION
1581+ json_path_query_first(target json, path jsonpath, vars json DEFAULT ' {}' ,
1582+ silent boolean DEFAULT false)
1583+ RETURNS json
1584+ LANGUAGE INTERNAL
1585+ STRICT IMMUTABLE PARALLEL SAFE
1586+ AS ' json_path_query_first' ;
1587+
1588+ CREATE OR REPLACE FUNCTION
1589+ json_path_exists_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1590+ silent boolean DEFAULT false)
1591+ RETURNS boolean
1592+ LANGUAGE INTERNAL
1593+ STRICT STABLE PARALLEL SAFE
1594+ AS ' json_path_exists_tz' ;
1595+
1596+ CREATE OR REPLACE FUNCTION
1597+ json_path_match_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1598+ silent boolean DEFAULT false)
1599+ RETURNS boolean
1600+ LANGUAGE INTERNAL
1601+ STRICT STABLE PARALLEL SAFE
1602+ AS ' json_path_match_tz' ;
1603+
1604+ CREATE OR REPLACE FUNCTION
1605+ json_path_query_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1606+ silent boolean DEFAULT false)
1607+ RETURNS SETOF json
1608+ LANGUAGE INTERNAL
1609+ STRICT STABLE PARALLEL SAFE
1610+ AS ' json_path_query_tz' ;
1611+
1612+ CREATE OR REPLACE FUNCTION
1613+ json_path_query_array_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1614+ silent boolean DEFAULT false)
1615+ RETURNS json
1616+ LANGUAGE INTERNAL
1617+ STRICT STABLE PARALLEL SAFE
1618+ AS ' json_path_query_array_tz' ;
1619+
1620+ CREATE OR REPLACE FUNCTION
1621+ json_path_query_first_tz(target json, path jsonpath, vars json DEFAULT ' {}' ,
1622+ silent boolean DEFAULT false)
1623+ RETURNS json
1624+ LANGUAGE INTERNAL
1625+ STRICT STABLE PARALLEL SAFE
1626+ AS ' json_path_query_first_tz' ;
1627+
1628+
15311629-- default normalization form is NFC, per SQL standard
15321630CREATE OR REPLACE FUNCTION
15331631 " normalize" (text , text DEFAULT ' NFC' )
0 commit comments