Reading http://www.scala-lang.org/api/2.11.1/index.html#scala.collection.TraversableOnce:
Directly subclassing TraversableOnce is not recommended - instead, consider declaring an Iterator with a next and hasNext method, creating an Iterator with one of the methods on the Iterator object, or declaring a subclass of Traversable.
Why is subclassing TraversableOnce not recommended?