gpt4 book ai didi

Groovy DSL 脚本

转载 作者:行者123 更新时间:2023-12-05 01:13:50 25 4
gpt4 key购买 nike

我编写了一个应该应用于 DSL 脚本的全局 AST 转换,现在正在选择将特定 groovy 脚本识别为这些 DSL 脚本的最佳方法。

我考虑了以下选项:

  1. 自定义文件扩展名;这里最大的缺点是 IDE 支持:许多几乎不支持编译/编辑具有非 groovy 扩展名的文件(你可以配置一个编辑器,但它需要一些调整)。
  2. 一个特殊的文件名后缀(前缀),但在这种情况下,后缀应该是真正唯一的(因此相对较长),以避免意外转换常规 groovy 文件(我当前的选择)。
  3. 应用于脚本类的本地 AST 转换,其缺点是需要为每个脚本编写一些样板代码。
  4. 在脚本中有一些独特的第一条语句来标识 DSL。

您认为最好的选择是什么?为什么?有没有我没有考虑过的其他选择?

最佳答案

如果您使用 GroovyShell 编译 DSL 脚本,您可以使用 CompilerConfiguration.addCompilationCustomizer( ASTTransformationCustomizer( YourGlobalASTTransformation)) 对它们应用转换。

关于Groovy DSL 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11423548/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com