pybind11/tests
Jason Rhinelander f3ce00eaed vectorize: pass-through of non-vectorizable args
This extends py::vectorize to automatically pass through
non-vectorizable arguments.  This removes the need for the documented
"explicitly exclude an argument" workaround.

Vectorization now applies to arithmetic, std::complex, and POD types,
passed as plain value or by const lvalue reference (previously only
pass-by-value types were supported).  Non-const lvalue references and
any other types are passed through as-is.

Functions with rvalue reference arguments (whether vectorizable or not)
are explicitly prohibited: an rvalue reference is inherently not
something that can be passed multiple times and is thus unsuitable to
being in a vectorized function.

The vectorize returned value is also now more sensitive to inputs:
previously it would return by value when all inputs are of size 1; this
is now amended to having all inputs of size 1 *and* 0 dimensions.  Thus
if you pass in, for example, [[1]], you get back a 1x1, 2D array, while
previously you got back just the resulting single value.

Vectorization of member function specializations is now also supported
via `py::vectorize(&Class::method)`; this required passthrough support
for the initial object pointer on the wrapping function pointer.
2017-05-24 20:43:41 -04:00
..
test_cmake_build Test with debug build of Python when DEBUG=1 on Travis 2017-02-28 00:27:26 +01:00
CMakeLists.txt Add movable cast support to type casters 2017-05-24 13:09:31 -04:00
conftest.py Minor pytest maintenance (#702) 2017-03-10 15:42:42 +01:00
constructor_stats.h Minor fixes (#613) 2017-01-31 17:28:29 +01:00
object.h Improve custom holder support (#607) 2017-01-31 17:05:44 +01:00
pybind11_tests.cpp Fix downcasting of base class pointers 2017-04-27 09:12:41 -04:00
pybind11_tests.h Replace std::cout with py::print in tests 2016-09-07 01:25:27 +02:00
pytest.ini Minor pytest maintenance (#702) 2017-03-10 15:42:42 +01:00
test_alias_initialization.cpp Implement py::init_alias<>() constructors 2016-09-09 03:04:09 -04:00
test_alias_initialization.py WIP: PyPy support (#527) 2016-12-16 15:00:46 +01:00
test_buffers.cpp Support pointers to member functions in def_buffer. 2017-05-22 17:53:37 -04:00
test_buffers.py Support pointers to member functions in def_buffer. 2017-05-22 17:53:37 -04:00
test_call_policies.cpp Add a scope guard call policy 2017-04-03 00:52:47 +02:00
test_call_policies.py Add a scope guard call policy 2017-04-03 00:52:47 +02:00
test_callbacks.cpp functional: support bound methods 2017-04-29 10:43:17 -04:00
test_callbacks.py functional: support bound methods 2017-04-29 10:43:17 -04:00
test_chrono.cpp Fix for floating point durations 2017-03-11 23:04:16 -04:00
test_chrono.py Fix for floating point durations 2017-03-11 23:04:16 -04:00
test_class_args.cpp Support std::shared_ptr holder type out of the box 2016-10-20 16:19:58 +02:00
test_class_args.py Set maximum line length for Python style checker (#552) 2016-12-13 00:59:28 +01:00
test_constants_and_functions.cpp Support binding noexcept function/methods in C++17 2016-12-14 20:40:49 +01:00
test_constants_and_functions.py Support binding noexcept function/methods in C++17 2016-12-14 20:40:49 +01:00
test_copy_move.cpp Add movable cast support to type casters 2017-05-24 13:09:31 -04:00
test_copy_move.py Add movable cast support to type casters 2017-05-24 13:09:31 -04:00
test_docstring_options.cpp Fix extra docstring newlines under options.disable_function_signatures() 2017-03-08 12:32:42 -05:00
test_docstring_options.py Fix extra docstring newlines under options.disable_function_signatures() 2017-03-08 12:32:42 -05:00
test_eigen.cpp Fix Eigen argument doc strings 2017-04-08 23:25:13 -04:00
test_eigen.py Fix Eigen shape assertion error in dense matrix caster 2017-05-11 16:10:40 +02:00
test_enum.cpp enum_: fix implicit conversion on Python 2.7 2017-04-29 16:35:28 +02:00
test_enum.py pytest target: add USE_TERMINAL flag 2017-04-29 16:35:28 +02:00
test_eval_call.py Add checks to maintain a consistent Python code style and prevent bugs (#515) 2016-11-20 21:21:54 +01:00
test_eval.cpp Add py::exec() as a shortcut for py::eval<py::eval_statements>() 2017-05-08 20:46:16 +02:00
test_eval.py Rewrite eval tests to allow for simple asserts 2016-08-19 16:31:48 +02:00
test_exceptions.cpp Add a method to check Python exception types (#772) 2017-04-02 22:38:50 +02:00
test_exceptions.py Add a method to check Python exception types (#772) 2017-04-02 22:38:50 +02:00
test_inheritance.cpp Make all classes with the same instance size derive from a common base 2017-02-23 15:45:26 +01:00
test_inheritance.py Make all classes with the same instance size derive from a common base 2017-02-23 15:45:26 +01:00
test_issues.cpp Fix debugging output for nameless py::arg_v annotations (#648) 2017-02-08 08:45:51 +01:00
test_issues.py WIP: PyPy support (#527) 2016-12-16 15:00:46 +01:00
test_kwargs_and_defaults.cpp Add support for positional args with args/kwargs 2017-01-31 17:24:41 +01:00
test_kwargs_and_defaults.py Minor pytest maintenance (#702) 2017-03-10 15:42:42 +01:00
test_methods_and_attributes.cpp Allow py::arg().none(false) argument attribute 2017-05-24 13:10:57 -04:00
test_methods_and_attributes.py Allow py::arg().none(false) argument attribute 2017-05-24 13:10:57 -04:00
test_modules.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_modules.py Add __module__ attribute to all pybind11 builtin types (#729) 2017-03-15 15:38:14 +01:00
test_multiple_inheritance.cpp Track base class pointers of instances 2017-04-27 09:12:41 -04:00
test_multiple_inheritance.py Track base class pointers of instances 2017-04-27 09:12:41 -04:00
test_numpy_array.cpp Now shape, size, ndims and itemsize are also signed integers. 2017-05-08 01:50:21 +02:00
test_numpy_array.py Now shape, size, ndims and itemsize are also signed integers. 2017-05-08 01:50:21 +02:00
test_numpy_dtypes.cpp Allow std::complex field with PYBIND11_NUMPY_DTYPE (#831) 2017-05-10 11:36:24 +02:00
test_numpy_dtypes.py Allow std::complex field with PYBIND11_NUMPY_DTYPE (#831) 2017-05-10 11:36:24 +02:00
test_numpy_vectorize.cpp vectorize: pass-through of non-vectorizable args 2017-05-24 20:43:41 -04:00
test_numpy_vectorize.py vectorize: pass-through of non-vectorizable args 2017-05-24 20:43:41 -04:00
test_opaque_types.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_opaque_types.py Prefer non-converting argument overloads 2017-02-03 20:47:17 -05:00
test_operator_overloading.cpp Fix /= operator under Python 3 2017-05-21 19:15:25 -04:00
test_operator_overloading.py Fix /= operator under Python 3 2017-05-21 19:15:25 -04:00
test_pickling.cpp fix segfault in test suite due to typo (fixes #586) 2017-01-04 15:05:20 +01:00
test_pickling.py WIP: PyPy support (#527) 2016-12-16 15:00:46 +01:00
test_python_types.cpp Improve constructor resolution in variant_caster 2017-05-10 17:47:57 +02:00
test_python_types.py Improve constructor resolution in variant_caster 2017-05-10 17:47:57 +02:00
test_sequences_and_iterators.cpp Add lightweight iterators for tuple, list and sequence 2017-02-26 23:57:03 +01:00
test_sequences_and_iterators.py Add lightweight iterators for tuple, list and sequence 2017-02-26 23:57:03 +01:00
test_smart_ptr.cpp Use dynamic cast for shared_from_this holder init 2017-05-22 11:43:21 -04:00
test_smart_ptr.py Use dynamic cast for shared_from_this holder init 2017-05-22 11:43:21 -04:00
test_stl_binders.cpp Add the buffer interface for wrapped STL vectors 2017-03-14 02:50:04 +01:00
test_stl_binders.py Keep skipping buffer tests on pypy 2017-04-18 14:21:31 -04:00
test_virtual_functions.cpp Remove obsolete comment 2017-05-02 15:21:39 -04:00
test_virtual_functions.py WIP: PyPy support (#527) 2016-12-16 15:00:46 +01:00