16#include "pgpa_parser.h"
35 extern int pgpa_yylex(union YYSTYPE *yylval_param, List **result, \
36 char **parse_error_msg_p, yyscan_t yyscanner)
39#define YY_READ_BUF_SIZE 16777216
43#define fprintf(file, fmt, msg) fprintf_to_ereport(fmt, msg)
int int errmsg_internal(const char *fmt,...) pg_attribute_printf(1
#define ereport(elevel,...)
static void fprintf_to_ereport(const char *fmt, const char *msg)
55%option never-interactive
64%option prefix="pgpa_yy"
65%option extra-type="pgpa_yy_extra_type *"
78ident_start [A-Za-z\200-\377_]
79ident_cont [A-Za-z\200-\377_0-9\$]
81identifier {ident_start}{ident_cont}*
84decinteger {decdigit}(_?{decdigit})*
92xddouble {dquote}{dquote}
pgpa_advice_tag_type pgpa_parse_advice_tag(const char *tag, bool *fail)
@ PGPA_TAG_BITMAP_HEAP_SCAN
@ PGPA_TAG_INDEX_ONLY_SCAN
char * downcase_identifier(const char *ident, int len, bool warn, bool truncate)
144 "integer out of range");
void pgpa_yyerror(List **result, char **parse_error_msg_p, yyscan_t yyscanner, const char *message)
int strtoint(const char *pg_restrict str, char **pg_restrict endptr, int base)
void resetStringInfo(StringInfo str)
182 "unterminated comment");
189 "zero-length delimited identifier");
char * pstrdup(const char *in)
void appendStringInfoChar(StringInfo str, char ch)
void appendBinaryStringInfo(StringInfo str, const void *data, int datalen)
205 "unterminated quoted identifier");
#define palloc0_object(type)
void * repalloc(void *pointer, Size size)
void pfree(void *pointer)
void * yyrealloc(void *ptr, yy_size_t size, yyscan_t yyscanner)
void pgpa_scanner_finish(yyscan_t yyscanner)
void pgpa_scanner_init(const char *str, yyscan_t *yyscannerp)
void yyfree(void *ptr, yyscan_t yyscanner)
void * yyalloc(yy_size_t size, yyscan_t yyscanner)
char * psprintf(const char *fmt,...)
void initStringInfo(StringInfo str)