copyable.hpp
Go to the documentation of this file.
1 //
2 // Copyright (c) 2016-2021 CNRS INRIA
3 //
4 
5 #ifndef __eigenpy_utils_copyable_hpp__
6 #define __eigenpy_utils_copyable_hpp__
7 
8 #include <boost/python.hpp>
9 
10 namespace eigenpy {
11 
16 template <class C>
17 struct CopyableVisitor : public bp::def_visitor<CopyableVisitor<C> > {
18  template <class PyClass>
19  void visit(PyClass& cl) const {
20  cl.def("copy", &copy, bp::arg("self"), "Returns a copy of *this.");
21  }
22 
23  private:
24  static C copy(const C& self) { return C(self); }
25 };
26 } // namespace eigenpy
27 
28 #endif // ifndef __eigenpy_utils_copyable_hpp__
static C copy(const C &self)
Definition: copyable.hpp:24
void visit(PyClass &cl) const
Definition: copyable.hpp:19
Add the Python method copy to allow a copy of this by calling the copy constructor.
Definition: copyable.hpp:17


eigenpy
Author(s): Justin Carpentier, Nicolas Mansard
autogenerated on Fri Jun 2 2023 02:10:26