WriteInkList static method
dynamic
WriteInkList(
- SimpleJsonWriter writer,
- ListValue listVal
)
Implementation
static WriteInkList(SimpleJsonWriter writer, ListValue listVal) {
var rawList = listVal.value;
if (rawList == null) {
return ArgumentError.notNull("rawList");
}
writer.WriteObjectStart();
writer.WritePropertyStart("list");
writer.WriteObjectStart();
for (var kv in rawList.entries) {
var item = kv.key;
var itemVal = kv.value;
if (item.itemName == null) {
return ArgumentError.notNull("item.itemName");
}
writer.WritePropertyNameStart();
writer.WritePropertyNameInner(item.originName ?? "?");
writer.WritePropertyNameInner(".");
writer.WritePropertyNameInner(item.itemName!);
writer.WritePropertyNameEnd();
writer.Write(itemVal);
writer.WritePropertyEnd();
}
writer.WriteObjectEnd();
writer.WritePropertyEnd();
if (rawList.isEmpty &&
rawList.originNames != null &&
rawList.originNames!.isNotEmpty) {
writer.WritePropertyStart("origins");
writer.WriteArrayStart();
for (var name in rawList.originNames!) {
writer.Write(name);
}
writer.WriteArrayEnd();
writer.WritePropertyEnd();
}
writer.WriteObjectEnd();
}