28 #define JSONPATH_VERSION (0x01)
29 #define JSONPATH_LAX (0x80000000)
30 #define JSONPATH_HDRSZ (offsetof(JsonPath, data))
44 #define PG_GETARG_JSONPATH_P(x) DatumGetJsonPathP(PG_GETARG_DATUM(x))
45 #define PG_GETARG_JSONPATH_P_COPY(x) DatumGetJsonPathPCopy(PG_GETARG_DATUM(x))
46 #define PG_RETURN_JSONPATH_P(p) PG_RETURN_POINTER(p)
48 #define jspIsScalar(type) ((type) >= jpiNull && (type) <= jpiBool)
101 #define JSP_REGEX_ICASE 0x01
102 #define JSP_REGEX_DOTALL 0x02
103 #define JSP_REGEX_MLINE 0x04
104 #define JSP_REGEX_WSPACE 0x08
105 #define JSP_REGEX_QUOTE 0x10
174 #define jspHasNext(jsp) ((jsp)->nextPos > 0)
258 struct Node *escontext);
261 struct Node *escontext);
#define FLEXIBLE_ARRAY_MEMBER
#define PG_DETOAST_DATUM_COPY(datum)
#define PG_DETOAST_DATUM(datum)
void jspGetLeftArg(JsonPathItem *v, JsonPathItem *a)
void jspGetArg(JsonPathItem *v, JsonPathItem *a)
void jspInitByBuffer(JsonPathItem *v, char *base, int32 pos)
bool jspGetBool(JsonPathItem *v)
void jspInit(JsonPathItem *v, JsonPath *js)
const char * jspOperationName(JsonPathItemType type)
JsonPathParseResult * parsejsonpath(const char *str, int len, struct Node *escontext)
bool jspConvertRegexFlags(uint32 xflags, int *result, struct Node *escontext)
Numeric jspGetNumeric(JsonPathItem *v)
bool jspGetArraySubscript(JsonPathItem *v, JsonPathItem *from, JsonPathItem *to, int i)
bool jspGetNext(JsonPathItem *v, JsonPathItem *a)
static JsonPath * DatumGetJsonPathP(Datum d)
struct JsonPathParseResult JsonPathParseResult
void jspGetRightArg(JsonPathItem *v, JsonPathItem *a)
char * jspGetString(JsonPathItem *v, int32 *len)
struct JsonPathItem JsonPathItem
static JsonPath * DatumGetJsonPathPCopy(Datum d)
struct JsonPathItem::@131::@134 anybounds
struct JsonPathItem::@131::@133::@137 * elems
struct JsonPathItem::@131::@136 like_regex
struct JsonPathItem::@131::@133 array
struct JsonPathItem::@131::@135 value
union JsonPathItem::@131 content
struct JsonPathItem::@131::@132 args
struct JsonPathParseItem::@138::@141 anybounds
JsonPathParseItem * right
struct JsonPathParseItem::@138::@140 array
struct JsonPathParseItem::@138::@143 string
struct JsonPathParseItem::@138::@140::@144 * elems
struct JsonPathParseItem::@138::@139 args
struct JsonPathParseItem::@138::@142 like_regex
union JsonPathParseItem::@138 value