抽象语法树(AST)表示正式文档(程序源代码)的递归结构。
是否有与 Pandoc 的 Lua Filters 的恒等变换等效的东西? 假设有这样的恒等变换,这将是一个有用的实验起点
我可以使用 ast-grep 重现 eslint 的“prefer-object-spread”规则吗?
我正在尝试将不同的 linter 及其性能与自定义规则进行比较。 Ast-grep 很有前途,并且可能比 eslint 运行得更快,因为它是用 Rust 而不是 javascript 编写的。怎么...
我正在尝试编写一个编译器插件,它将在 Scala 的特征中注入对基类方法的调用。对于以下输入源: 类组件{ def valCallback[T](参考:T,名称:Stri...
几个月前,我编写了一个小的 Use-ClassAccessors 脚本来更轻松地定义类访问器(getter 和 setter)。 除了一个小限制之外,这工作得很好:Use-ClassAccessors 脚本
我正在使用ast-grep,一个用于代码结构搜索和重写的CLI工具,来查找和替换代码中的一些模式。我已经编写了一个带有一些重写规则的 YAML 文件,我可以使用 sg scan 来...
我的要求是将 ** 运算符更改为 power 函数 例如 1.输入-“B**2” 输出-功率(B,2) 2.“B**2&&T**2*X” 输出-功率(B,2) 我已将以下正则表达式写入
每次 pip 安装时如何修复 subprocess:-exited-with-error?
每当我尝试 pip install ast 时,我都会收到此错误代码: 下载 AST-0.0.2.tar.gz (19 kB) 安装构建依赖项...完成 获取构建轮子的要求...错误 呃...
我正在使用 vue-template-compiler 来更改特定 div 中的属性,更新后我想将 ast 转换回模板字符串。我该怎么做? 我想要类似 vue 的 dom-serializer 之类的东西。
是否有像 JavaScript 那样的标准 Swift AST?
在 JavaScript 中,我们有 estree,它是从 Mozilla 的实现演变而来的 AST 定义。但如今,如果你在 JS 中构建 JS AST 转换器,你可能会使用这种结构。我们
使用Python AST NodeTransformer插入父节点(模块体)触发无限递归
我试图通过这个假设的案例来了解 AST 和 NodeTransformer: *替换关键字“elif/else”,同时仍确保程序输出保持不变。 * 我的方法是使用
typescript APIfactory.updateSourceFile,如何设置new statements(及其子节点)的“pos”和“end”成员?
我正在更新转换中的源文件 - 导出函数transformBefore( absTsconfigPath:字符串 ): ts.TransformerFactory | ts.CustomTransformerFactory { 返回 (ctx) =&...
我找到了一个ANTLRv4 Python3语法器,但它生成了一个解析树,它通常有很多无用的节点。 我正在寻找一个已知的包来从该解析树获取 Python AST。 做某事
我正在尝试为 TI-BASIC 语法创建一个小型解释器。 这是我试图解释的 TI-BASIC 的片段 A->(2+(3*3)) 我已将上面的代码标记为以下标记序列: 为了...
在 `@typescript-eslint/parser` AST 中获取超类引用
给定以下类层次结构: 类 Foo { foo成员= 1; } 类 Bar 扩展 Foo { 酒吧成员 = 2; } @typescript-eslint/parser 的 AST 输出将 extends Foo 语句引用为
如何使用 CodeNarc 或 Groovy AST 类解析变量值?
我正在为 CodeNarc Groovy Linter 编写一些自定义规则。 我想创建/扩展一个类似于 ConstantIfExpressionRule 的规则,但涵盖了可以推断常量的情况。 对于
我正在修改Python的ast(抽象语法树)模块。 使用 ast.NodeVisitor,可以遍历源树并显示信息,例如每个节点的名称,如下所示: 类 MyAST(ast.
我想解析一个 SQL Select 语句,它具有普通 SQL 方言(如 MySQL)的所有功能。我在 python 中寻找解析库,但找不到一个正在做的工作...
我想深度复制表达式树。我知道传统的做法在大多数情况下都有效。这是表达式树的基本版本: 公共类表达式{ 公开
使用 Libclang python 绑定,如何检索添加到 C++ 类/结构中的注释?
以下面的C++结构体为例: __attribute__((注释(“MyAttribute”))) 结构体测试组件 { __attribute__((注释(“MyAttribute”))) int32_t testInt; ...
Python 中 AST 转换的问题:NameError - 'name' 未定义
我正在编写一个Python脚本,以使用ast模块以编程方式转换导入语句。我想像这样转换导入语句: 导入数学 数学罪 为以下形式:...