考虑文件
foo.c
:
#include <stdbool.h>
int six, bo;
int main(void) {
return six + b + sizeof(int);
}
然后
clang
可用于建议第 15 行第 19 列(b
语句中 return
之后的部分)中可能的代码完成,如下所示:
cat foo.c | clang -fsyntax-only -Xclang -code-completion-macros -Xclang -code-completion-at=-:5:19 -xc -
这给
PREFERRED-TYPE: int
COMPLETION: bo : [#int#]bo
COMPLETION: bool : bool
显然,唯一正确的匹配是
bo
作为预期的表达式。
clang
是否提供选项以便自动过滤掉不会导致表达式的补全?还是需要手动完成?
此外,我真的找不到任何记录
clang
选项的资源,例如-code-completion-macros
或-code-completion-at
。上面使用这些选项的命令用于 vim-clang 插件。这些是否记录在某处(希望有更多的选择)。