nested maps v_0
authorFrantišek Kučera <franta-hg@frantovo.cz>
Thu, 10 Jun 2021 19:59:51 +0200
branchv_0
changeset 42 c97b6152016a
parent 41 b11458587f20
child 43 6b194b178946
nested maps
src/XMLDocumentConstructor.h
--- a/src/XMLDocumentConstructor.h	Thu Jun 10 01:23:36 2021 +0200
+++ b/src/XMLDocumentConstructor.h	Thu Jun 10 19:59:51 2021 +0200
@@ -151,10 +151,8 @@
 
 	void mapStart(ssize_t size) {
 		if (mode.back() == Mode::ROOT) {
-			current->set_attribute("value-type", "map");
 		} else if (mode.back() == Mode::ARRAY) {
 			current = current->add_child(nameCodec.encode(itemName));
-			current->set_attribute("value-type", "map");
 		} else if (mode.back() == Mode::MAP_VALUE) {
 			mode.pop_back();
 			// TODO: remainingItems
@@ -163,6 +161,8 @@
 			// …probably not
 		}
 
+		current->set_attribute("value-type", "map");
+
 		mode.push_back(Mode::MAP_KEY);
 		remainingItems.push_back(size);
 		writeCurrentTag(current);