Striterator composition uses the
addFilter(IFilter filter) Striterator
IFilter interface provides a method to inject the transformer into
the Striterator stack:
Iterator filter(Iterator src);
Striterator.addFilter invoked this method when the
IFilter was added.
We have modified this to only create the transformation stack when the
iteration begins, or when explicitly directed. Prior to this the
IFilter objects are organized such that they can be serialized and
inspected, providing the potential for dynamic re-organization.