=str #15152 ast transformations

* for feedback
* only supports Flow map operation
cool
question is if we need `nextOpHas`, or if we should only provide this variant

I guess this can be formatted something like this:

    Flow[String].
      map(_.toLowerCase()).
      opChainHas(name = Some(name)) {   
        _.map(_.toUpperCase).
        map(_.reverse)
      }.
      map(_.toLowerCase) 

Perhaps we need a better name than `opChainHas`?