Interface ReplacementsHandler<T>

  • Functional Interface:
    This is a functional interface and can therefore be used as the assignment target for a lambda expression or method reference.

    @FunctionalInterface
    public interface ReplacementsHandler<T>
    This interface is devoted to handle synchronized replacement sequences.
    Since:
    4.0
    See Also:
    ReplacementsFinder
    • Method Detail

      • handleReplacement

        void handleReplacement​(int skipped,
                               java.util.List<T> from,
                               java.util.List<T> to)
        Handle two synchronized sequences.

        This method is called by a ReplacementsFinder instance when it has synchronized two sub-sequences of object arrays being compared, and at least one of the sequences is non-empty. Since the sequences are synchronized, the objects before the two sub-sequences are equals (if they exist). This property also holds for the objects after the two sub-sequences.

        The replacement is defined as replacing the from sub-sequence into the to sub-sequence.

        Parameters:
        skipped - number of tokens skipped since the last call (i.e. number of tokens that were in both sequences), this number should be strictly positive except on the very first call where it can be zero (if the first object of the two sequences are different)
        from - sub-sequence of objects coming from the first sequence
        to - sub-sequence of objects coming from the second sequence