// HACK: if it's a ListOfCharValueNode, convert it to a ListValueNode.
// What we need is a way to guarantee the type of value node that is returned by getCommitValues().
// This is not possible with the current form of transmuteValueNode() though.
if (newValueNodeFromMap instanceof ListOfCharValueNode) {
ListOfCharValueNode charListValueNode = (ListOfCharValueNode)newValueNodeFromMap;
char[] charListValueArray = charListValueNode.getStringValue().toCharArray();
ArrayList<ValueNode> newListValue = new ArrayList<ValueNode>(charListValueArray.length);
for (final char charListValue : charListValueArray) {
newListValue.add(new LiteralValueNode(Character.valueOf(charListValue), charType));
}