Well the instance size of an XmlParser shouldn't be very large (~34 bytes), but in a high-performance environment it might be nice to just use the same instance so your garbarge collector has less work to do.

How would a reset(ch[] newText) method work for this purpose?

If you get a chance to test the parser, do tell about your experience.

Well the instance size of an XmlParser shouldn't be very large (~34 bytes), but in a high-performance environment it might be nice to just use the same instance so your garbarge collector has less work to do.

How would a reset(ch[] newText) method work for this purpose?

If you get a chance to test the parser, do tell about your experience.

Yours,
Aaron

You are right, not very large, but if you use 3 to serve a single request, and you are doing 1000 requests/second, you are now 'leaking' 30KB/second that the GC has to clean up.

This method would do nicely.

Could you also put convenience methods on XmlForwardNodeParser like:
* a ctor that takes a char[] (implicitly creates the string iterator and xml parser behind the scenes.)
* a reset method there as well.
* tango Buffer support would be really nice.