On 2014-10-03T21:10:47+01:00, SJM wrote:
Show quoted text> I'd like to be able to subclass Set::Equivalence, but the creation of
> new sets via set arithmetic can't really be controlled. I'd be nice
> to somehow control the $maker coderef returned by _args().
It is somewhat intentional that _args() cannot be overridden. If you've got two Set::Equivalence subclasses, there's a danger they'd both try to override _args() which might lead to weird behaviour when $maker is being used to combine two sets (like in the union and intersection methods).
However, _args() has a bug on line 265 - it should be checking $_[$_]->isa(__PACKAGE__). Looking at the sub again, there's another few changes that probably ought to be made to it as well.
What extra functionality would you like to be able to squeeze into $maker? I may be able to provide some hooks you can use.