ComplexWriterImpl writer = new ComplexWriterImpl("col", v);
writer.allocate();
{
MapWriter map = writer.rootAsMap();
ListWriter list = map.list("a");
list.start();
ListWriter innerList = list.list();
IntWriter innerInt = innerList.integer();
innerList.start();
IntHolder holder = new IntHolder();
holder.value = 1;
innerInt.write(holder);
holder.value = 2;
innerInt.write(holder);
holder.value = 3;
innerInt.write(holder);
innerList.end();
innerList.start();
holder.value = 4;
innerInt.write(holder);
holder.value = 5;
innerInt.write(holder);
innerList.end();
list.end();
IntWriter numCol = map.integer("nums");
holder.value = 14;
numCol.write(holder);
MapWriter repeatedMap = map.list("b").map();
repeatedMap.start();
holder.value = 1;
repeatedMap.integer("c").write(holder);
repeatedMap.end();
repeatedMap.start();
holder.value = 2;
repeatedMap.integer("c").write(holder);
BigIntHolder h = new BigIntHolder();
h.value = 15;
repeatedMap.bigInt("x").write(h);
repeatedMap.end();
map.end();
}
assert writer.ok();
{
writer.setPosition(1);
MapWriter map = writer.rootAsMap();
ListWriter list = map.list("a");
list.start();
ListWriter innerList = list.list();
IntWriter innerInt = innerList.integer();
innerList.start();
IntHolder holder = new IntHolder();
holder.value = -1;
innerInt.write(holder);
holder.value = -2;
innerInt.write(holder);
holder.value = -3;
innerInt.write(holder);
innerList.end();
innerList.start();
holder.value = -4;
innerInt.write(holder);
holder.value = -5;
innerInt.write(holder);
innerList.end();
list.end();
IntWriter numCol = map.integer("nums");
holder.value = -28;
numCol.write(holder);