From 4aabe422fe9d5fa7c7f5889255862199dfcab47d Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Thu, 19 May 2016 13:13:28 -0400 Subject: [PATCH] Alter prettyTrie to allow customised rendering of success-values --- js/src/trie.js | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/js/src/trie.js b/js/src/trie.js index c8c015a..4fc8ad3 100644 --- a/js/src/trie.js +++ b/js/src/trie.js @@ -797,16 +797,21 @@ function instantiateProjection(p, obj) { } } -function prettyTrie(m, initialIndent) { +function prettyTrie(m, optionsOpt) { var acc = []; - walk(initialIndent || 0, m); + var options = optionsOpt || {}; + walk(options.initialIndent || 0, m); return acc.join(''); function walk(i, m) { if (m instanceof $Success) { var v = m.value; - if (Immutable.Set.isSet(v)) { v = v.toArray(); } - acc.push(" {" + JSON.stringify(v) + "}"); + if ('prettySuccess' in options) { + acc.push(" " + options.prettySuccess(v)); + } else { + if (Immutable.Set.isSet(v)) { v = v.toArray(); } + acc.push(" {" + JSON.stringify(v) + "}"); + } return; }