While implementing this, try to reduce the number of memory allocations. Currently every access to data in a segment requires eight allocations.
Idea is to work on the unchanged stream data. Process release char ? but leave it in place while drilling down from segment to composite to element. Only if an element contains a release character ? an allocation should be needed to remove the release character.
While implementing this, try to reduce the number of memory allocations. Currently every access to data in a segment requires eight allocations. Idea is to work on the unchanged stream data. Process release char ? but leave it in place while drilling down from segment to composite to element. Only if an element contains a release character ? an allocation should be needed to remove the release character.