我正在尝试将Spoon representation
的Java代码转换为其他内容;请说出JSON
或XML
代表或其他Java model
。
我不知道如何以及从何处开始。
processor
metamodel(这是很多处理器写的)? instanceof
个检查)? Scanner
?上一个问题:转换元素时(比如说CtIf
)如何以独特的方式识别其父元素(CtBlock
)?
假设它将输出以下内容:
[
{
type: block,
id: ???,
...,
},
...,
{
type: if,
parent: ???, (the block above)
...,
}
]
我有点失落,需要一些帮助:) 谢谢!
答案 0 :(得分:1)
最简单的方法是实现自定义漂亮打印机(查看https://github.com/INRIA/spoon/blob/master/src/main/java/spoon/reflect/visitor/DefaultJavaPrettyPrinter.java)并通过覆盖它将其传递给Launcher。