I think the use case is slim. The class doesn't look thread safe (with the usage of Input), so most of the time, new instances will be created. And if an instance is kept around, it is likely for a really specific purpose.

Speaking of which, it would be good to add a line in the ScalaDoc stating that the class is not thread safe.