PostgreSQL Source Code  git master
json.h
Go to the documentation of this file.
1 /*-------------------------------------------------------------------------
2  *
3  * json.h
4  * Declarations for JSON data type support.
5  *
6  * Portions Copyright (c) 1996-2024, PostgreSQL Global Development Group
7  * Portions Copyright (c) 1994, Regents of the University of California
8  *
9  * src/include/utils/json.h
10  *
11  *-------------------------------------------------------------------------
12  */
13 
14 #ifndef JSON_H
15 #define JSON_H
16 
17 #include "lib/stringinfo.h"
18 
19 /* functions in json.c */
20 extern void escape_json(StringInfo buf, const char *str);
21 extern char *JsonEncodeDateTime(char *buf, Datum value, Oid typid,
22  const int *tzp);
23 extern bool to_json_is_immutable(Oid typoid);
24 extern Datum json_build_object_worker(int nargs, const Datum *args, const bool *nulls,
25  const Oid *types, bool absent_on_null,
26  bool unique_keys);
27 extern Datum json_build_array_worker(int nargs, const Datum *args, const bool *nulls,
28  const Oid *types, bool absent_on_null);
29 extern bool json_validate(text *json, bool check_unique_keys, bool throw_error);
30 
31 #endif /* JSON_H */
struct typedefs * types
Definition: ecpg.c:29
const char * str
static struct @155 value
Datum json_build_array_worker(int nargs, const Datum *args, const bool *nulls, const Oid *types, bool absent_on_null)
Definition: json.c:1321
Datum json_build_object_worker(int nargs, const Datum *args, const bool *nulls, const Oid *types, bool absent_on_null, bool unique_keys)
Definition: json.c:1208
char * JsonEncodeDateTime(char *buf, Datum value, Oid typid, const int *tzp)
Definition: json.c:301
bool json_validate(text *json, bool check_unique_keys, bool throw_error)
Definition: json.c:1650
void escape_json(StringInfo buf, const char *str)
Definition: json.c:1549
bool to_json_is_immutable(Oid typoid)
Definition: json.c:691
static char * buf
Definition: pg_test_fsync.c:73
uintptr_t Datum
Definition: postgres.h:64
unsigned int Oid
Definition: postgres_ext.h:31
Definition: c.h:687