asmifier caseclass experiments 使用ASMifier探索Scala案例类动态定义的差异化输出
asmifier-caseclass-experiments工具用于在不同的Scala案例类上运行ASMifier,以分析和比较转储输出的差异,并推导出将值成员动态添加到类定义的规则。该实现支持基于文件或“离线”数据定义的Scala案例类创建,流程如下:
-
推导规则:通过手动在不同类型的案例类中添加值成员,检查转储输出的差异。
-
ASMifier运行:使用ASMifier在每个新生成的.class文件上运行,查看模块(MODULE$)和案例类的转储信息。
-
生成步骤表:通过ASM的访问者API生成Scala案例类,并在表1和表2中列出不同类型案例类生成步骤,步骤包括删除原始.class文件、更新类文件和在新的.class文件上运行ASMifier。
示例代码:
rm -r target/ && sbt run && java -cp lib/asm-all-4.1.jar org.objectweb.asm
此命令用于重置目标文件夹并重新生成.class文件,然后使用ASMifier对其进行分析。
下载地址
用户评论