抽象语法树(AST)表示正式文档(程序源代码)的递归结构。
我正在尝试使用 AST 模块生成一些代码。这就是我的代码的样子: 我想在每个键后添加具有正确格式的新行,以便输出看起来已格式化。
获取 CXCursor_BinaryOperator 的运算符类型
我正在尝试在 C++ 源文件中查找作业: x = 10; 我正在使用 libclang 来解析它并遍历 AST。有一个 CXCursor_BinaryOperator 表示二元运算符。有没有办法
对于我正在编写的库,我希望能够模拟退出 PHP 函数。 我尝试使用 php-mock 提供退出的命名空间版本,例如 命名空间 MyNamespace; 功能...
如何从 TypeScript 编译器 API 分析 Type 对象?
注意:这个问题是关于 TypeScript 编译器 API,而不是关于 TypeScript 作为一种语言! 我有一个 ts.Type 类型的值。我想知道它代表什么类型:它是数字吗?一个函数?一个...
我想使用 Pydantic 来定义和验证将应用于 Pandas 数据帧的查询 AST。这是我的代码: 输入 import List、Literal、Optional、Union 来自 pydantic 进口 Bas...
我在Python中有一个这样的函数(大写字母可以代表常量,函数,任何东西,但不能代表函数调用): 定义 f(x): a = foo1(A, B, foo3(E, foo2(A, B))) b = foo3(a, E...
我正在开发一个 SQL 查询方言转换器。例如,给定一个 MySQL 查询,它可以将其转换为 Postgres 或 BigQuery。很容易找到 MySQL、SQLite 和 PostgreSQL 的部分语法文件...
我正在寻找一款类似于 aplparse 的 Dyalog APL 解析器,但它要么用 APL 本身编写,要么作为 Dyalog 引擎的一部分提供。我将在 APL 程序中操作 AST,这是...
目标代码块: 整数年龄=5; std::stringstream q; << "my name " << "is Tom, " << "my age is " << age; I'm trying to create a matcher to m...
我有一个已标记化的中缀表达式,并希望继续创建一个抽象语法树。我了解这些情况下使用的调车场算法。我只找到了方法
如何使用 Clang AST 匹配器查找 setter 和 getter 方法? [已关闭]
我想使用以下方法在代码库中查找 setter 和 getter 方法 Clang AST 匹配器 表达。 例如,这段代码有一个 getter 和一个 setter 报告: 结构体S{ int m_x; int getX() ...
寻找 LLVM 匹配器来查找作为访问器或修改器函数的成员函数
我有很多代码,其中包含带有访问器和修改器函数(getter 和 setter)的类。我想确定给定的 CXXMemberDecl 是否是其中之一。我不确定是否有...
使用 ZIO 和 Quill 编写简单的 CRUD 应用程序 域模型由用户和角色(一对多)组成 当尝试调用在 quill 上下文中提升的实体之一上的方法时(或 obtai...
使用 / 将 Rust 解析为 AST,以便在 Python 中使用
通常是相反的,用 Rust 解析 Python,请参见这里或这里 - 就我而言,虽然我正在寻找一种方法,用 Python 理想地解析 Rust 代码,将其解析为类似 AST 的东西
我目前正在使用 Clang 的 ASTMatcher 来提取结构声明并排除无标记结构。这是我想避免匹配的结构类型的示例: #包括
我目前正在使用 Clang 的 ASTMatcher 来提取命名结构声明并排除没有标签的结构。这是我想避免匹配的结构类型的示例: #包括<...
我正在尝试编写一个工具,它将帮助我在大量使用装饰器的现有大型Python代码库中找到实现错误。 假设我有一个文件,rules.py: 经理 = RuleManag...
我正在学习 AST,它似乎是一个强大的东西,但我很困惑代码去了哪里以及为什么它消失了。说我想重写 示例 = """def fake(x): y = ['无用列表']
在学习 LLVM 和 clang 的过程中,我遇到了缩写 BU 和 USR。我一直无法弄清楚它们的意思。 我假设 BU 是某种单位 - 就像 TU 是一个
LibCST 匹配器,用于检测 Python AST 中的嵌套 f 字符串表达式
我想创建一个转换器,将 f 字符串的所有引号从单引号转换为三引号,但保持嵌套的 f 字符串完好无损。 例如,下一个表达式保持不变。 f”&...