Function Set.opBinary

Support for set operations. "+": set union "-": set difference "*": set intersection "%": set symmetric difference (A + B - A * B)

Set!T opBinary(string op) (
  Set!T rhs
)
if (op == "+" || op == "-");

See also https://dlang.org/phobos/std_algorithm_setops.html

https

//github.com/BBasile/iz/blob/master/import/iz/enumset.d

https

//dlang.org/library/std/typecons/flag.html