toTemplate method
template に出力する用の形式. Array 系 と Object は chain で読み取られることを前提とした形式になる.
Implementation
String toTemplate() {
final List<Body> list = [];
for (final i in value) {
final objectValuable = i.value;
// validation はしない.
switch (objectValuable) {
case CitrusFlag(): list.add(Flag(i.name, Some(objectValuable.value)));
case CitrusText(): list.add(Variety(i.name, Some(objectValuable.value)));
case CitrusTextArray(): list.add(VarietyEnumeration(i.name, objectValuable.toPrimitive()));
}
}
// head に object が無いと 値として定義されたときに chain exception になる.
final chain = Chain(Some(Head('object')), list);
return chain.serialize();
}