This file contains class templates for adapting a user-defined type for use with the algorithms in libsemigroups. There are explicit implementations for relevant element types from libsemigroups and HPCombi.
The following adapters have no default implementation for arbitrary types:
The following adapters do have a default implementation for arbitrary types:
The following explicit specializations of some of the adapters listed above are implemented in libsemigroups for the following types: