I'm definitively not a fan of public apply methods taking a mutable set as a parameter...
Wouldn't it be better to just take a generic Set (scala.collections.Set) and clone it / create a local mutable set with values taken from it?