PostgreSQL Source Code git master
jsonpath_internal.h
Go to the documentation of this file.
1/*-------------------------------------------------------------------------
2 *
3 * jsonpath_internal.h
4 * Private definitions for jsonpath scanner & parser
5 *
6 * Portions Copyright (c) 1996-2025, PostgreSQL Global Development Group
7 * Portions Copyright (c) 1994, Regents of the University of California
8 *
9 * src/backend/utils/adt/jsonpath_internal.h
10 *
11 *-------------------------------------------------------------------------
12 */
13
14#ifndef JSONPATH_INTERNAL_H
15#define JSONPATH_INTERNAL_H
16
17/* struct JsonPathString is shared between scan and gram */
18typedef struct JsonPathString
19{
20 char *val;
21 int len;
22 int total;
24
25typedef void *yyscan_t;
26
27#include "utils/jsonpath.h"
28#include "jsonpath_gram.h"
29
30#define YY_DECL extern int jsonpath_yylex(YYSTYPE *yylval_param, \
31 JsonPathParseResult **result, \
32 struct Node *escontext, \
33 yyscan_t yyscanner)
36 struct Node *escontext,
37 yyscan_t yyscanner);
38extern void jsonpath_yyerror(JsonPathParseResult **result,
39 struct Node *escontext,
40 yyscan_t yyscanner,
41 const char *message);
42
43#endif /* JSONPATH_INTERNAL_H */
void * yyscan_t
Definition: cubedata.h:65
void * yyscan_t
struct JsonPathString JsonPathString
int jsonpath_yyparse(JsonPathParseResult **result, struct Node *escontext, yyscan_t yyscanner)
#define YY_DECL
void jsonpath_yyerror(JsonPathParseResult **result, struct Node *escontext, yyscan_t yyscanner, const char *message)
Definition: nodes.h:135