pybind11/tests
Dean Moldovan c743e1b1b4 Support keyword arguments and generalized unpacking in C++
A Python function can be called with the syntax:
```python
foo(a1, a2, *args, ka=1, kb=2, **kwargs)
```
This commit adds support for the equivalent syntax in C++:
```c++
foo(a1, a2, *args, "ka"_a=1, "kb"_a=2, **kwargs)
```

In addition, generalized unpacking is implemented, as per PEP 448,
which allows calls with multiple * and ** unpacking:
```python
bar(*args1, 99, *args2, 101, **kwargs1, kz=200, **kwargs2)
```
and
```c++
bar(*args1, 99, *args2, 101, **kwargs1, "kz"_a=200, **kwargs2)
```
2016-09-06 16:41:50 +02:00
..
CMakeLists.txt Make test initialization self-registering 2016-09-03 17:34:41 -04:00
conftest.py Fix test suite failure without numpy and improve module init diagnostics 2016-08-25 17:08:09 +02:00
constructor_stats.h Port tests to pytest 2016-08-19 13:19:38 +02:00
object.h minor doc & style fixes 2016-09-06 13:02:29 +09:00
pybind11_tests.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
pybind11_tests.h Support keyword arguments and generalized unpacking in C++ 2016-09-06 16:41:50 +02:00
test_buffers.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_buffers.py Port tests to pytest 2016-08-19 13:19:38 +02:00
test_callbacks.cpp Support keyword arguments and generalized unpacking in C++ 2016-09-06 16:41:50 +02:00
test_callbacks.py Support keyword arguments and generalized unpacking in C++ 2016-09-06 16:41:50 +02:00
test_constants_and_functions.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_constants_and_functions.py Move enum tests into a new file 2016-08-19 13:19:38 +02:00
test_eigen.cpp minor doc & style fixes 2016-09-06 13:02:29 +09:00
test_eigen.py Fix test suite failure without numpy and improve module init diagnostics 2016-08-25 17:08:09 +02:00
test_enum.cpp minor doc & style fixes 2016-09-06 13:02:29 +09:00
test_enum.py Move enum tests into a new file 2016-08-19 13:19:38 +02:00
test_eval_call.py Rewrite eval tests to allow for simple asserts 2016-08-19 16:31:48 +02:00
test_eval.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_eval.py Rewrite eval tests to allow for simple asserts 2016-08-19 16:31:48 +02:00
test_exceptions.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_exceptions.py Port tests to pytest 2016-08-19 13:19:38 +02:00
test_inheritance.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_inheritance.py Move inheritance tests into the proper file 2016-08-19 13:19:38 +02:00
test_issues.cpp minor code style checker update 2016-09-04 23:00:49 +09:00
test_issues.py Simplify more tests by replacing capture with assert 2016-08-19 16:31:48 +02:00
test_keep_alive.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_keep_alive.py Port tests to pytest 2016-08-19 13:19:38 +02:00
test_kwargs_and_defaults.cpp Support keyword arguments and generalized unpacking in C++ 2016-09-06 16:41:50 +02:00
test_kwargs_and_defaults.py Simplify more tests by replacing capture with assert 2016-08-19 16:31:48 +02:00
test_methods_and_attributes.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_methods_and_attributes.py Port tests to pytest 2016-08-19 13:19:38 +02:00
test_modules.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_modules.py Simplify tests by replacing output capture with asserts where possible 2016-08-19 13:19:38 +02:00
test_numpy_dtypes.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_numpy_dtypes.py Fix test suite failure without numpy and improve module init diagnostics 2016-08-25 17:08:09 +02:00
test_numpy_vectorize.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_numpy_vectorize.py Simplify tests by replacing output capture with asserts where possible 2016-08-19 13:19:38 +02:00
test_opaque_types.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_opaque_types.py Simplify tests by replacing output capture with asserts where possible 2016-08-19 13:19:38 +02:00
test_operator_overloading.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_operator_overloading.py Port tests to pytest 2016-08-19 13:19:38 +02:00
test_pickling.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_pickling.py Port tests to pytest 2016-08-19 13:19:38 +02:00
test_python_types.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_python_types.py Port tests to pytest 2016-08-19 13:19:38 +02:00
test_sequences_and_iterators.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_sequences_and_iterators.py Add tests for generalized iterators 2016-08-24 23:30:00 +01:00
test_smart_ptr.cpp Make unique_ptr's with non-default deleters work 2016-09-04 18:23:55 -04:00
test_smart_ptr.py Make unique_ptr's with non-default deleters work 2016-09-04 18:23:55 -04:00
test_stl_binders.cpp minor doc & style fixes 2016-09-06 13:02:29 +09:00
test_stl_binders.py Adding bind_map 2016-09-05 17:11:16 -04:00
test_virtual_functions.cpp Make test initialization self-registering 2016-09-03 17:34:41 -04:00
test_virtual_functions.py Fix template trampoline overload lookup failure 2016-08-29 19:41:44 -04:00