Wenzel Jakob
22201d08e4
Merge pull request #268 from bennorth/stricter-test
...
Tighten check() test in eigen.py
2016-07-06 05:45:56 +02:00
Wenzel Jakob
f57133aa2e
correction to #266 fix
2016-07-06 05:43:52 +02:00
Ben North
150a0fa786
check(): Stricter check in tests
...
Previous version would give false 'OK' if, for example, we were supposed
to get [1, 2, 3] but instead got [2, 1, 3].
2016-07-05 21:46:50 +01:00
Ben North
676e29885b
Test that check() catches wrong order of elements
...
Fails --- next commit will tighten test.
2016-07-05 21:46:50 +01:00
Wenzel Jakob
c2f6841c22
Merge pull request #267 from bennorth/non-contiguous-arrays
...
Non-contiguous arrays
2016-07-05 22:34:36 +02:00
Ben North
7b8d9e0246
Test eigen converts slices of 3d arrays correctly
2016-07-05 21:13:24 +01:00
Ben North
3e0e779322
Tests: Add further '2*' functions for matrices
...
Add and declare to Python functions
double_mat_cm() --- compute 2* a column-major matrix
double_mat_rm() --- compute 2* a row-major matrix
to 'eigen.cpp' tests / example.
2016-07-05 21:13:24 +01:00
Ben North
4a22091d45
Add tests for doubling row- and col-vectors
...
Passing a non-contiguous one-dimensional numpy array gives incorrect
results, so three of these tests fail. The only one passing is the
simple case where the numpy array is contiguous and we are building a
column-major vector. Subsequent commit will fix the three failing
cases.
2016-07-05 21:13:20 +01:00
Ben North
b063e64b19
Eigen tests: '2*' functions for col-, row-vectors
2016-07-05 21:12:25 +01:00
Jason Rhinelander
f23e0b5e95
Fix test diff output under python2.7
...
PR #220 broke failed test output under python2.7, which doesn't support
the keepends argument to splitlines.
2016-07-05 16:03:43 -04:00
Wenzel Jakob
fb0e2e5dac
minor formatting fix
2016-07-01 14:54:24 +02:00
Brad Harmon
835fc06ca4
Add callback examples with named parameters
2016-06-16 13:19:15 -05:00
Jerry Gamache
c6e0cdfa54
Allow pybind11::arg to have 0, false, or "" as default values.
2016-06-15 12:48:15 -04:00
Dean Moldovan
96017dd7cd
Add _a literal for named arguments
2016-06-03 23:15:22 +02:00
Dean Moldovan
1fe5901062
Add a more informative diff output for failed tests
2016-06-02 00:06:09 +02:00
Dean Moldovan
4337a5d86a
Fix typo which caused the C++ set test to be skipped
...
It used to pass anyway because the expected output was identical
to the Python set.
2016-06-01 23:48:24 +02:00
Dean Moldovan
f2b36c2ed2
Fix a couple of warnings
...
- Conversion warning on clang: 'long' to 'size_t'
- Unused variable warning on MSVC
2016-06-01 23:48:23 +02:00
Wenzel Jakob
38d8b8cfe2
don't allow registering a class twice ( fixes #218 )
2016-05-31 09:53:28 +02:00
Wenzel Jakob
5dd33d880d
fix issues with std::vector<bool> overload in STL ( fixes #216 )
2016-05-30 11:28:21 +02:00
Wenzel Jakob
0a07805ab6
fixed many conversion warnings on clang
2016-05-29 13:40:40 +02:00
Wenzel Jakob
c48da92561
Merge branch 'cygwin' of https://github.com/BorisSchaeling/pybind11 into BorisSchaeling-cygwin
2016-05-29 12:46:21 +02:00
Wenzel Jakob
67a6392987
very minor cmake adjustments
2016-05-29 12:35:16 +02:00
Wenzel Jakob
1503d2fb50
Merge pull request #207 from dean0x7d/cmake
...
Simplify CMake build using add_subdirectory
2016-05-29 12:29:36 +02:00
Boris Schäling
20ee935203
Use decltype to deduce return type of PyThread_create_key
2016-05-28 12:26:18 +02:00
Dean Moldovan
9fb50c56d0
Add LTO and strip to pybind11_add_module
2016-05-27 21:42:43 +02:00
Wenzel Jakob
86d825f330
Redesigned virtual call mechanism and user-facing syntax (breaking change!)
...
Sergey Lyskov pointed out that the trampoline mechanism used to override
virtual methods from within Python caused unnecessary overheads when
instantiating the original (i.e. non-extended) class.
This commit removes this inefficiency, but some syntax changes were
needed to achieve this. Projects using this features will need to make a
few changes:
In particular, the example below shows the old syntax to instantiate a
class with a trampoline:
class_<TrampolineClass>("MyClass")
.alias<MyClass>()
....
This is what should be used now:
class_<MyClass, std::unique_ptr<MyClass, TrampolineClass>("MyClass")
....
Importantly, the trampoline class is now specified as the *third*
argument to the class_ template, and the alias<..>() call is gone. The
second argument with the unique pointer is simply the default holder
type used by pybind11.
2016-05-26 13:36:24 +02:00
Yung-Yu Chen
114bfeb762
pybind11::args should have been derived from tuple
...
args was derived from list, but cpp_function::dispatcher sends a tuple to it->impl (line #346 and #392 in pybind11.h). As a result args::size() and args::operator[] don't work at all. On my mac args::size() returns -1. Making args a subclass of tuple fixes it.
2016-05-25 21:09:35 +08:00
Wenzel Jakob
1e3be73a52
PYBIND11_OVERLOAD_NAME and PYBIND11_OVERLOAD_PURE_NAME ( fixes #205 )
2016-05-24 23:42:14 +02:00
Andreas Bergmeier
2dd215711a
Fixed expected test examples for more verbose error output.
2016-05-24 10:15:43 +02:00
Dean Moldovan
8c6b0b8333
Don't build tests when project is used via add_subdirectory
2016-05-23 00:12:37 +02:00
Wenzel Jakob
43b09af3a9
example12 clarifications
2016-05-21 01:11:11 +02:00
Wenzel Jakob
b47a9de035
ability to prevent force casts in numpy arguments
2016-05-19 16:02:09 +02:00
Wenzel Jakob
3f200fab22
don't implicitly convert doubles to ints
2016-05-17 15:35:29 +02:00
Wenzel Jakob
00c7d6ccc7
Merge branch 'stl_bind'
2016-05-16 12:33:20 +02:00
Wenzel Jakob
25c03cecfa
stl_bind redesign & cleanup pass
2016-05-16 12:12:58 +02:00
Sergey Lyskov
9ee4f92b06
Refactoring vector_binder so it now a function
2016-05-15 20:46:07 +02:00
Sergey Lyskov
a95bde1ea5
Adding documentation for value_error. Fixing various formatting issues. Removing redundant binding for C++ style methods. Adding bindings for iterator and slicing protocol. Extending examples.
2016-05-15 20:46:07 +02:00
Sergey Lyskov
a315c7a25a
Adding Python-style modifiers for vector. Wrapping has_insertion_operator_implementation in _MSC_VER ifdef’s. Adding ‘!=0’ instead of bool cast’s.
2016-05-15 20:46:07 +02:00
Sergey Lyskov
eae7744c0e
adding stl_binders
2016-05-15 20:46:07 +02:00
Wenzel Jakob
178c8a899d
nicer type_caster::load() calling conventions
2016-05-15 20:23:27 +02:00
Wenzel Jakob
9f272ddc73
updated testcase reference result
2016-05-08 14:40:57 +02:00
Wenzel Jakob
6c03beb867
enable *args and **kwargs notation ( closes #190 )
2016-05-08 14:34:09 +02:00
Wenzel Jakob
9e0a0568fe
transparent conversion of dense and sparse Eigen types
2016-05-05 21:44:29 +02:00
Wenzel Jakob
876eeab4ca
redesigned format_descriptor<> and npy_format_descriptor<>
...
This somewhat heavyweight solution will avoid size_t/long long/long/int
mismatches on various platforms once and for all. The previous template
overloads could e.g. not handle size_t on Darwin.
One gotcha: the 'format_descriptor<T>::value()' syntax changed to just
'format_descriptor<T>::value'
2016-05-04 22:36:57 +02:00
Wenzel Jakob
bd57eb484d
don't try to cast 'None' into a C++ lvalue reference
2016-05-01 14:42:20 +02:00
Wenzel Jakob
9059bd8134
added test for issue #70
2016-05-01 10:39:45 +02:00
Wenzel Jakob
fc92d82bba
added [[noreturn]] attribute to pybind11_fail
2016-04-30 23:55:44 +02:00
Wenzel Jakob
d2b628bba4
added testcase for issue #187
2016-04-30 23:19:19 +02:00
Wenzel Jakob
81e0975b82
clarified pickle version requirements ( fixes #186 )
2016-04-30 23:16:31 +02:00
Wenzel Jakob
e707497019
restructured code in issues.cpp
2016-04-30 22:44:00 +02:00