From 578ff57e4b86c4b31268e8b22a401c7bfaa9fe1a Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sun, 16 Aug 2015 14:51:06 +0100 Subject: Write text nodes --- lib/xml/writer.js | 16 ++++++++++++++-- 1 file changed, 14 insertions(+), 2 deletions(-) (limited to 'lib/xml/writer.js') diff --git a/lib/xml/writer.js b/lib/xml/writer.js index 239dd04..90746af 100644 --- a/lib/xml/writer.js +++ b/lib/xml/writer.js @@ -12,15 +12,27 @@ function writeString(root) { standalone: true }); root.children.forEach(function(child) { - writeElement(builder, child); + writeNode(builder, child); }); return builder.end(); } +var nodeWriters = { + element: writeElement, + text: writeTextNode +} + +function writeNode(builder, node) { + return nodeWriters[node.type](builder, node); +} function writeElement(builder, element) { var elementBuilder = builder.element(element.name); element.children.forEach(function(child) { - writeElement(elementBuilder, child); + writeNode(elementBuilder, child); }); } + +function writeTextNode(builder, node) { + builder.text(node.value); +} -- cgit v1.2.3