Having a method like the following:
def select(arg: scala.collection.Seq[SelectClause]): SelectClause
that informs you which SelectClause is selected is useful. Golang for example has such capability. One instance that I found this to be of use is (s: Source[Source[T]]).flatten #197 #198 where we should run a select on a merged set of both the parent source and its the children as they are discovered.
It would be even more fool proof if it still functions if a mutable Seq is passed to it, which fits better a broader range of use cases (including (s: Source[Source[T]]).flatten functionality)