22#define NEXTVAL(x) ( (lquery*)( (char*)(x) + INTALIGN( VARSIZE(x) ) ) )
36 while (ptr < end && !
t_iseq(ptr,
'_'))
158 if (
curq->numvar == 0)
161 for (
int i = 0;
i <
curq->numvar;
i++)
298 errmsg(
"array must be one-dimensional")));
302 errmsg(
"array must not contain nulls")));
#define PG_GETARG_ARRAYTYPE_P(n)
bool array_contains_nulls(const ArrayType *array)
int ArrayGetNItems(int ndim, const int *dims)
#define Assert(condition)
int errcode(int sqlerrcode)
int errmsg(const char *fmt,...)
#define ereport(elevel,...)
#define PG_FREE_IF_COPY(ptr, n)
#define DirectFunctionCall2(func, arg1, arg2)
#define PG_GETARG_DATUM(n)
#define PG_FUNCTION_INFO_V1(funcname)
#define PG_RETURN_DATUM(x)
#define PG_RETURN_BOOL(x)
Datum lt_q_rregex(PG_FUNCTION_ARGS)
static char * getlexeme(char *start, char *end, int *len)
static bool checkCond(lquery_level *curq, int qlen, ltree_level *curt, int tlen)
bool compare_subnode(ltree_level *t, char *qn, int len, bool prefix, bool ci)
Datum lt_q_regex(PG_FUNCTION_ARGS)
Datum ltq_regex(PG_FUNCTION_ARGS)
static bool checkLevel(lquery_level *curq, ltree_level *curt)
bool ltree_label_match(const char *pred, size_t pred_len, const char *label, size_t label_len, bool prefix, bool ci)
Datum ltq_rregex(PG_FUNCTION_ARGS)
#define PG_GETARG_LQUERY_P(n)
#define PG_GETARG_LTREE_P(n)
int pg_mblen_range(const char *mbstr, const char *end)
void * repalloc(void *pointer, Size size)
void pfree(void *pointer)
#define CHECK_FOR_INTERRUPTS()
size_t pg_strfold(char *dst, size_t dstsize, const char *src, ssize_t srclen, pg_locale_t locale)
pg_locale_t pg_database_locale(void)
static bool DatumGetBool(Datum X)
static Datum PointerGetDatum(const void *X)
void check_stack_depth(void)
char name[FLEXIBLE_ARRAY_MEMBER]
char name[FLEXIBLE_ARRAY_MEMBER]