0
我在哪里可以找到所有PostgreSQL关键字/标记(如GROUP_P)的词汇定义?PostgreSQL + GROUP_P的词汇定义
我在哪里可以找到所有PostgreSQL关键字/标记(如GROUP_P)的词汇定义?PostgreSQL + GROUP_P的词汇定义
GROUP_P
不是关键字,它是C编译器上下文中的一个符号,它在C源代码之外没有词汇意义。
在此声明从parser/kwlist.h
:
PG_KEYWORD("group", GROUP_P, RESERVED_KEYWORD)
它的第一个参数“基团”,也就是该关键字时,第二参数GROUP_P通常为枚举字段或#定义(它是由所述包入) 。
头文件src/include/parser/keywords.h
由字段提供了一种结构类型ScanKeyword
可直接映射到PG_KEYWORD宏,字段:
typedef struct ScanKeyword
{
const char *name; /* in lower case */
int16 value; /* grammar's token code */
int16 category; /* see codes above */
} ScanKeyword;
对于使用的一个具体的例子,请参见ECPG如何它在src/interfaces/ecpg/preproc/keywords.c
解析器目录中存在关键字[ch]文件(从不同位置符号链接)“精细手册”末尾还有一个符合性声明。 – wildplasser
@wildplasser谢谢。我认为列表在'parser/kwlist.h'中,对吗?为什么一些关键字有'_P'结尾? –
我没有最微不足道的想法。可能是元类型的一些命名约定。你在哪里找到它 ?你可以grep为它的源代码树。 – wildplasser