私はSnakeYAMLでカスタムコンストラクタを使用していますが、ネストを実装する方法がわかりません。私は参考としてthis exampleを使用しています。リンクされている例でSnakeYAMLをネストしたコンストラクタ
、関連YAMLと構築され、
- !circle
center: {x: 73, y: 129}
radius: 7
private class ConstructCircle extends AbstractConstruct {
@SuppressWarnings("unchecked")
public Object construct(Node node) {
MappingNode mnode = (MappingNode) node;
Map<Object, Object> values = constructMapping(mnode);
Circle circle = new Circle((Map<String, Integer>) values.get("center"), (Integer) values.get("radius"));
return circle;
}
}
それでは、
- !circle
center: !point
x: 73
y: 129
radius: 7
にYAMLを変更してみましょう私が使用したいですその!point
オブジェクトを解析する別のAbstractConstruct
がありますが、ConstructCircle
コンテキスト。 Construct/Node
の関係についての私の理解はかなり不安定で、私はカスタムコンストラクタ内でカスタムコンストラクタを使用する方法を失っています。どんな考えやリソース?