Creates an iterator over the preparsed segments of a filter. The first object returned by an iterator is an integer indicating the type of filter components. Subseqence values are returned. If a component is of type 'AND' or 'OR' or 'NOT' then the value returned is another iterator. This iterator is used by toString.