copy_add_generators¶
-
template<typename TCollection>
FroidurePin *libsemigroups::FroidurePin::copy_add_generators(TCollection const &coll) const¶ Returns a new semigroup generated by
this
andcoll
.This member function is equivalent to copying
this
using FroidurePin::FroidurePin(const FroidurePin& copy) and then calling FroidurePin::add_generators on the copy, but this member function avoids copying the parts ofthis
that are immediately invalidated by FroidurePin::add_generators.The elements the argument
coll
are copied into the semigroup, and should be deleted by the caller. If an element incoll
has a degree different tothis->degree()
, a LibsemigroupsException will be thrown.