...
That enables the infoset to be built up in the inverted direction (that is, children point to parents, not the other way round, or doubly-linked as in DOM/JDOM-style trees.)
Or... children of the current infoset node can be added to an array. If the node is successfully parsed, then the array is handed off for inclusion in the infoset. Otherwise we recursively free the array and its contained children back to a infoset node array pool, which enables reuse of these node arrays.
...