- 03 Aug, 2016 3 commits
-
-
Eigen::Ref is a common way to pass eigen dense types without needing a template, e.g. the single definition `void func(Eigen::Ref<Eigen::MatrixXd> x)` can be called with any double matrix-like object. The current pybind11 eigen support fails with internal errors if attempting to bind a function with an Eigen::Ref<...> argument because Eigen::Ref<...> satisfies the "is_eigen_dense" requirement, but can't compile if actually used: Eigen::Ref<...> itself is not default constructible, and so the argument std::tuple containing an Eigen::Ref<...> isn't constructible, which results in compilation failure. This commit adds support for Eigen::Ref<...> by giving it its own type_caster implementation which consists of an internal type_caster of the referenced type, load/cast methods that dispatch to the internal type_caster, and a unique_ptr to an Eigen::Ref<> instance that gets set during load(). There is, of course, no performance advantage for pybind11-using code of using Eigen::Ref<...>--we are allocating a matrix of the derived type when loading it--but this has the advantage of allowing pybind11 to bind transparently to C++ methods taking Eigen::Refs.
Jason Rhinelander committed -
Fix zero valued enum comparison error
Wenzel Jakob committed -
Pim Schellart committed
-
- 02 Aug, 2016 4 commits
-
-
Enable comparisons between enums and their underlying types
Wenzel Jakob committed -
Pim Schellart committed
-
Wenzel Jakob committed
-
Mark pybind11 include dir as PRIVATE to avoid a CMake error message.
Wenzel Jakob committed
-
- 01 Aug, 2016 6 commits
-
-
Improve CI test coverage: eigen, numpy and C++14
Wenzel Jakob committed -
Dean Moldovan committed
-
Wenzel Jakob committed
-
Changes accessor::operator=() to throw error_already_set() instead of using pybind11_fail().
Wenzel Jakob committed -
Mark the pybind11 headers as private to the target. Fixes #305
Trygve Laugstøl committed -
PyObject_SetItem and PyObject_SetAttr both throws an exception on failure so this will show the underlying exception instead of masking it. Fixes #303.
Trygve Laugstøl committed
-
- 30 Jul, 2016 1 commit
-
-
Dean Moldovan committed
-
- 19 Jul, 2016 4 commits
-
-
Wenzel Jakob committed
-
Wenzel Jakob committed
-
Wenzel Jakob committed
-
Wenzel Jakob committed
-
- 18 Jul, 2016 7 commits
-
-
Rename examples files, as per #288
Wenzel Jakob committed -
Jason Rhinelander committed
-
This renames example files from `exampleN` to `example-description`. Specifically, the following renaming is applied: example1 -> example-methods-and-attributes example2 -> example-python-types example3 -> example-operator-overloading example4 -> example-constants-and-functions example5 -> example-callbacks (*) example6 -> example-sequence-and-iterators example7 -> example-buffers example8 -> example-custom-ref-counting example9 -> example-modules example10 -> example-numpy-vectorize example11 -> example-arg-keywords-and-defaults example12 -> example-virtual-functions example13 -> example-keep-alive example14 -> example-opaque-types example15 -> example-pickling example16 -> example-inheritance example17 -> example-stl-binders example18 -> example-eval example19 -> example-custom-exceptions * the inheritance parts of example5 are moved into example-inheritance (previously example16), and the remainder is left as example-callbacks. This commit also renames the internal variables ("Example1", "Example2", "Example4", etc.) into non-numeric names ("ExampleMandA", "ExamplePythonTypes", "ExampleWithEnum", etc.) to correspond to the file renaming. The order of tests is preserved, but this can easily be changed if there is some more natural ordering by updating the list in examples/CMakeLists.txt.Jason Rhinelander committed -
Wenzel Jakob committed
-
Wenzel Jakob committed
-
Wenzel Jakob committed
-
Fix #283: don't print first arg of constructor
Wenzel Jakob committed
-
- 17 Jul, 2016 1 commit
-
-
This changes the exception error message of a bad-arguments error to suppress the constructor argument when the failure is a constructor. This changes both the "Invoked with: " output to omit the object instances, and rewrites the constructor signature to make it look like a constructor (changing the first argument to the object name, and removing the ' -> NoneType' return type.
Jason Rhinelander committed
-
- 12 Jul, 2016 5 commits
-
-
Add missing scipy run-time dep to eigen test
Wenzel Jakob committed -
scipy is imported in pybind11/eigen.h when it encounters a sparse matrix, which gets tested in the eigen test.
Jason Rhinelander committed -
Wenzel Jakob committed
-
Wenzel Jakob committed
-
Wenzel Jakob committed
-
- 11 Jul, 2016 4 commits
-
-
Wenzel Jakob committed
-
Wenzel Jakob committed
-
Add support for user defined exception translators
Wenzel Jakob committed -
Pim Schellart committed
-
- 10 Jul, 2016 3 commits
-
-
Wenzel Jakob committed
-
Wenzel Jakob committed
-
Wenzel Jakob committed
-
- 09 Jul, 2016 2 commits
-
-
Skip eigen test when eigen header available but NumPy not
Wenzel Jakob committed -
This allows (and changes the current examples) to exit with status 99 to skip a test instead of outputting a special string ("NumPy missing"). This also fixes the eigen test, which currently fails when eigen headers are available but NumPy is not, to skip instead of failing when NumPy isn't available.Jason Rhinelander committed
-