ifThen(condition, sequenceTransformation) {
        return condition ? new Seq(sequenceTransformation(this)) : this;
    }
Conditionally applies a transformation to the sequence.
If the given condition is false, the original sequence is returned.
If the given condition is true, the sequence is run through the given transformation and the result is returned.

This method mainly exists for syntactic convenience, so a dotted pipeline can be done in a single expression.
For example, <code>seq.map(e => e + 1).ifThen(filterFlag, s => s.filter(e => e == 1)).toArray()</code>

@param {!boolean} condition
@param {!function(!Seq<T>) : ((!Seq<T>)|(!Iterable.<T>)|(!(T[]))|*)} sequenceTransformation
@template T