1818from typing_extensions import Self as _Self
1919
2020from _libsemigroups_pybind11 import (
21+ LIBSEMIGROUPS_HPCOMBI_ENABLED as _LIBSEMIGROUPS_HPCOMBI_ENABLED ,
2122 PBR as _PBR ,
2223 Bipartition as _Bipartition ,
2324 BMat as _BMat ,
9495)
9596from .detail .decorators import copydoc as _copydoc
9697
98+ if _LIBSEMIGROUPS_HPCOMBI_ENABLED :
99+ from _libsemigroups_pybind11 import (
100+ FroidurePinHPCombiPerm16 as _FroidurePinHPCombiPerm16 ,
101+ FroidurePinHPCombiPPerm16 as _FroidurePinHPCombiPPerm16 ,
102+ FroidurePinHPCombiPTransf16 as _FroidurePinHPCombiPTransf16 ,
103+ FroidurePinHPCombiTransf16 as _FroidurePinHPCombiTransf16 ,
104+ hpcombi_Perm16 as _HPCombiPerm16 ,
105+ hpcombi_PPerm16 as _HPCombiPPerm16 ,
106+ hpcombi_PTransf16 as _HPCombiPTransf16 ,
107+ hpcombi_Transf16 as _HPCombiTransf16 ,
108+ )
109+
110+
97111########################################################################
98112# The FroidurePin python class
99113########################################################################
@@ -104,32 +118,42 @@ class FroidurePin(_CxxWrapper):
104118
105119 __doc__ = _FroidurePinPBR .__doc__
106120
107- _py_template_params_to_cxx_type = {
108- (_BMat ,): _FroidurePinBMat ,
109- (_BMat8 ,): _FroidurePinBMat8 ,
110- (_Bipartition ,): _FroidurePinBipartition ,
111- (_IntMat ,): _FroidurePinIntMat ,
112- (_MaxPlusMat ,): _FroidurePinMaxPlusMat ,
113- (_MaxPlusTruncMat ,): _FroidurePinMaxPlusTruncMat ,
114- (_MinPlusMat ,): _FroidurePinMinPlusMat ,
115- (_MinPlusTruncMat ,): _FroidurePinMinPlusTruncMat ,
116- (_NTPMat ,): _FroidurePinNTPMat ,
117- (_PBR ,): _FroidurePinPBR ,
118- (_PPerm1 ,): _FroidurePinPPerm1 ,
119- (_PPerm2 ,): _FroidurePinPPerm2 ,
120- (_PPerm4 ,): _FroidurePinPPerm4 ,
121- (_Perm1 ,): _FroidurePinPerm1 ,
122- (_Perm2 ,): _FroidurePinPerm2 ,
123- (_Perm4 ,): _FroidurePinPerm4 ,
124- (_ProjMaxPlusMat ,): _FroidurePinProjMaxPlusMat ,
125- (_Transf1 ,): _FroidurePinTransf1 ,
126- (_Transf2 ,): _FroidurePinTransf2 ,
127- (_Transf4 ,): _FroidurePinTransf4 ,
128- (_KBEStringTrie ,): _FroidurePinKBEStringRewriteTrie ,
129- (_KBEStringFromLeft ,): _FroidurePinKBEStringRewriteFromLeft ,
130- (_KBEWordTrie ,): _FroidurePinKBEWordRewriteTrie ,
131- (_KBEWordFromLeft ,): _FroidurePinKBEWordRewriteFromLeft ,
132- }
121+ _py_template_params_to_cxx_type = (
122+ {
123+ (_BMat ,): _FroidurePinBMat ,
124+ (_BMat8 ,): _FroidurePinBMat8 ,
125+ (_Bipartition ,): _FroidurePinBipartition ,
126+ (_IntMat ,): _FroidurePinIntMat ,
127+ (_MaxPlusMat ,): _FroidurePinMaxPlusMat ,
128+ (_MaxPlusTruncMat ,): _FroidurePinMaxPlusTruncMat ,
129+ (_MinPlusMat ,): _FroidurePinMinPlusMat ,
130+ (_MinPlusTruncMat ,): _FroidurePinMinPlusTruncMat ,
131+ (_NTPMat ,): _FroidurePinNTPMat ,
132+ (_PBR ,): _FroidurePinPBR ,
133+ (_PPerm1 ,): _FroidurePinPPerm1 ,
134+ (_PPerm2 ,): _FroidurePinPPerm2 ,
135+ (_PPerm4 ,): _FroidurePinPPerm4 ,
136+ (_Perm1 ,): _FroidurePinPerm1 ,
137+ (_Perm2 ,): _FroidurePinPerm2 ,
138+ (_Perm4 ,): _FroidurePinPerm4 ,
139+ (_ProjMaxPlusMat ,): _FroidurePinProjMaxPlusMat ,
140+ (_Transf1 ,): _FroidurePinTransf1 ,
141+ (_Transf2 ,): _FroidurePinTransf2 ,
142+ (_Transf4 ,): _FroidurePinTransf4 ,
143+ (_KBEStringTrie ,): _FroidurePinKBEStringRewriteTrie ,
144+ (_KBEStringFromLeft ,): _FroidurePinKBEStringRewriteFromLeft ,
145+ (_KBEWordTrie ,): _FroidurePinKBEWordRewriteTrie ,
146+ (_KBEWordFromLeft ,): _FroidurePinKBEWordRewriteFromLeft ,
147+ }
148+ | {
149+ (_HPCombiPTransf16 ,): _FroidurePinHPCombiPTransf16 ,
150+ (_HPCombiTransf16 ,): _FroidurePinHPCombiTransf16 ,
151+ (_HPCombiPerm16 ,): _FroidurePinHPCombiPerm16 ,
152+ (_HPCombiPPerm16 ,): _FroidurePinHPCombiPPerm16 ,
153+ }
154+ if _LIBSEMIGROUPS_HPCOMBI_ENABLED
155+ else {}
156+ )
133157
134158 _cxx_type_to_py_template_params = dict (
135159 zip (
0 commit comments