-
Notifications
You must be signed in to change notification settings - Fork 39
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[std-map] add more general visitor for map types, fix non-default-constructible types #504
[std-map] add more general visitor for map types, fix non-default-constructible types #504
Conversation
ManifoldFR
commented
Sep 17, 2024
- test boost::unordered_map
- pull StdMapPythonVisitor out of eigenpy::python namespace (shouldn't exist, add using-decl for backwards compatibility)
+ test boost::unordered_map + pull StdMapPythonVisitor out of eigenpy::python namespace (shouldn't exist, add using-decl for backwards compatibility)
@edantec This generalises your previous PR in release 3.9.0, and fixes a namespace issue |
Interesting point in the latest commit: Boost.Python's map_indexing_suite does something annoying which is to assume the container[i] = v; which is wrong. This is a Boost.Python design mistake I guess. I ended up overriding the indexing suite into a policy which adds |
## [3.10.0] - 2024-09-26 ### Added - `GenericMapPythonVisitor`/`StdMapPythonVisitor` can now take an extra visitor argument in the `expose()` method, similar to `StdVectorPythonVisitor` ### Changed - Move `GenericMapPythonVisitor` to its own header `eigenpy/map.hpp` - Rename `overload_base_get_item_for_std_map` to `overload_base_get_item_for_map`, move out of `eigenpy::details` namespace - Move `EmptyPythonVisitor` to new header `eigenpy/utils/empty-visitor.hpp` ## [3.9.1] - 2024-09-19 ### Added - Add test returning reference of std::pair stack-of-tasks/eigenpy#503 - Add more general visitor `GenericMapPythonVisitor` for map types test `boost::unordered_map<std::string, int>` stack-of-tasks/eigenpy#504 - Support for non-[default-contructible](https://en.cppreference.com/w/cpp/named_req/DefaultConstructible) types in map types stack-of-tasks/eigenpy#504 - Add type_info helpers stack-of-tasks/eigenpy#502 - Add NumPy 2 support stack-of-tasks/eigenpy#496 ### Changed - Move `StdMapPythonVisitor` out of `eigenpy::python` namespace, which was a mistake stack-of-tasks/eigenpy#504 ## [3.9.0] - 2024-08-31 ### Changed - The `exposeStdVectorEigenSpecificType()` template function now takes the vector allocator as a template parameter stack-of-tasks/eigenpy#500 ### Added - Add bp::dist to std::map converter stack-of-tasks/eigenpy#499 ## [3.8.2] - 2024-08-26 ### Fixed - Fix function signature on Windows stack-of-tasks/eigenpy#494 ## [3.8.1] - 2024-08-25 ### Fixed - Fix compatibility issue with NumPy 2.x on Windows stack-of-tasks/eigenpy#492 ## [3.8.0] - 2024-08-14 ### Added - Add compatibility with jrl-cmakemodules workspace stack-of-tasks/eigenpy#485 - Remove support of Python 3.7 stack-of-tasks/eigenpy#490 ### Fixed - Remove CMake CMP0167 warnings stack-of-tasks/eigenpy#487 - Fix compilation error on armhf stack-of-tasks/eigenpy#488
## [3.10.0] - 2024-09-26 ### Added - `GenericMapPythonVisitor`/`StdMapPythonVisitor` can now take an extra visitor argument in the `expose()` method, similar to `StdVectorPythonVisitor` ### Changed - Move `GenericMapPythonVisitor` to its own header `eigenpy/map.hpp` - Rename `overload_base_get_item_for_std_map` to `overload_base_get_item_for_map`, move out of `eigenpy::details` namespace - Move `EmptyPythonVisitor` to new header `eigenpy/utils/empty-visitor.hpp` ## [3.9.1] - 2024-09-19 ### Added - Add test returning reference of std::pair stack-of-tasks/eigenpy#503 - Add more general visitor `GenericMapPythonVisitor` for map types test `boost::unordered_map<std::string, int>` stack-of-tasks/eigenpy#504 - Support for non-[default-contructible](https://en.cppreference.com/w/cpp/named_req/DefaultConstructible) types in map types stack-of-tasks/eigenpy#504 - Add type_info helpers stack-of-tasks/eigenpy#502 - Add NumPy 2 support stack-of-tasks/eigenpy#496 ### Changed - Move `StdMapPythonVisitor` out of `eigenpy::python` namespace, which was a mistake stack-of-tasks/eigenpy#504 ## [3.9.0] - 2024-08-31 ### Changed - The `exposeStdVectorEigenSpecificType()` template function now takes the vector allocator as a template parameter stack-of-tasks/eigenpy#500 ### Added - Add bp::dist to std::map converter stack-of-tasks/eigenpy#499 ## [3.8.2] - 2024-08-26 ### Fixed - Fix function signature on Windows stack-of-tasks/eigenpy#494 ## [3.8.1] - 2024-08-25 ### Fixed - Fix compatibility issue with NumPy 2.x on Windows stack-of-tasks/eigenpy#492 ## [3.8.0] - 2024-08-14 ### Added - Add compatibility with jrl-cmakemodules workspace stack-of-tasks/eigenpy#485 - Remove support of Python 3.7 stack-of-tasks/eigenpy#490 ### Fixed - Remove CMake CMP0167 warnings stack-of-tasks/eigenpy#487 - Fix compilation error on armhf stack-of-tasks/eigenpy#488