weggliC/C++ 代码库语义搜索工具
weggli 是一个快速且强大的 C 和 C++ 代码库语义搜索工具,旨在帮助安全研究人员识别大型代码库中的有趣功能。
weggli 根据用户提供的查询对抽象语法树执行模式匹配。它的查询语言类似于 C 和 C++ 代码,可以轻松将有趣的代码模式转换为查询。
weggli 受到 Semgrep、Coccinelle、joern 和 CodeQL 等工具的启发,但做出了一些不同的设计决策:
-
C++ 支持:weggli 对现代 C++ 构造提供一流的支持,例如 lambda 表达式、基于范围的 for 循环和 constexprs。
-
Minimal setup:weggli 应该对你会遇到的大多数软件开箱即用。weggli 不需要构建软件的能力,并且可以使用不完整的源或缺少的依赖项。
-
Interactive : weggli 是为交互式使用和快速查询性能而设计的。大多数情况下,weggli 查询会比 grep 搜索快。目标是启用交互式工作流,可以在代码审查和查询创建/改进之间快速切换。
-
Greedy:weggli 的模式匹配旨在为特定查询找到尽可能多的(有用的)匹配项。虽然这会增加误报的风险,但它简化了查询创建。例如,查询
$x = 10;
将匹配赋值表达式 (foo = 10;
) 和声明 (int bar = 10;
)。
评论
CGrep代码搜索工具
Cgrep是一个grep的工具,特别适合在大的代码库中进行搜索。支持30多种编程语言。通过通配符和组合符提供上下文感知的过滤和语义搜索,而不仅仅是简单的模式匹配。
CGrep代码搜索工具
0
Codepilot代码搜索工具
Codepilot是一款为软件开发者制定的代码搜索工具。支持搜索代码示例、问题回答、特性描述或相关文档支持自定义过滤器用户可以根据项目所依赖的库来过滤GitHub的结果。在搜索代码时,相似的API语法
Codepilot代码搜索工具
0
Semantra语义搜索的多功能工具
Semantra是一种用于语义搜索文档的多用途工具。按意思查询,而不仅仅是匹配文本。该工具在命令行上运行,分析计算机上指定的文本和PDF文件,并启动本地网络搜索应用程序以交互方式查询它们。Semant
Semantra语义搜索的多功能工具
0
Sourcegraph代码搜索浏览工具
Sourcegraph是一款能够根据语义来把Web上的开源代码编入索引的代码搜索浏览工具,提供代码搜索和代码语义智能感知功能。你可以从代码仓库和安装包,甚至是函数里搜索代码,同时也可以直接点击被完全创
Sourcegraph代码搜索浏览工具
0