@@ -91,7 +91,7 @@ class CompoundIterator {
9191} // namespace
9292
9393template <>
94- void defineClass (py::class_ <CompoundRegion, std::unique_ptr<CompoundRegion> , Region> &cls) {
94+ void defineClass (py::classh <CompoundRegion, Region> &cls) {
9595 cls.def (" nOperands" , &CompoundRegion::nOperands);
9696 cls.def (" __len__" , &CompoundRegion::nOperands);
9797 cls.def (
@@ -113,15 +113,15 @@ void defineClass(py::class_<CompoundRegion, std::unique_ptr<CompoundRegion>, Reg
113113}
114114
115115template <>
116- void defineClass (py::class_ <UnionRegion, std::unique_ptr<UnionRegion> , CompoundRegion> &cls) {
116+ void defineClass (py::classh <UnionRegion, CompoundRegion> &cls) {
117117 cls.attr (" TYPE_CODE" ) = py::int_ (UnionRegion::TYPE_CODE);
118118 cls.def (py::init (&_args_factory<UnionRegion>));
119119 cls.def (py::pickle (&python::encode, &python::decode<UnionRegion>));
120120 cls.def (" __repr__" , [](CompoundRegion const &self) { return _repr (" UnionRegion" , self); });
121121}
122122
123123template <>
124- void defineClass (py::class_ <IntersectionRegion, std::unique_ptr<IntersectionRegion> , CompoundRegion> &cls) {
124+ void defineClass (py::classh <IntersectionRegion, CompoundRegion> &cls) {
125125 cls.attr (" TYPE_CODE" ) = py::int_ (IntersectionRegion::TYPE_CODE);
126126 cls.def (py::init (&_args_factory<IntersectionRegion>));
127127 cls.def (py::pickle (&python::encode, &python::decode<IntersectionRegion>));
0 commit comments