Commit Graph

240 Commits

Author SHA1 Message Date
Wenzel Jakob 17b10d7cbf functional.h: acquire GIL before calling Python function 2016-04-25 09:17:41 +02:00
Wenzel Jakob 2f6662e174 Python 2.7.x fixes for new gil_scoped_release 2016-04-25 09:16:41 +02:00
Wenzel Jakob 084ca0e553 compilation fixes 2016-04-25 04:00:47 +02:00
Wenzel Jakob 39e97e6a49 significant redesign of GIL state handling 2016-04-25 03:27:32 +02:00
Wenzel Jakob 18fb3e323a added a pybind11::none class 2016-04-25 03:27:32 +02:00
Wenzel Jakob 9b880ba743 keep_alive: don't fail when there is no patient 2016-04-25 03:26:36 +02:00
Wenzel Jakob 7d0162a2df minor cleanups 2016-04-25 03:26:35 +02:00
Wenzel Jakob 7ca2755880 new type wrapper for iterable objects 2016-04-22 09:33:19 +02:00
Wenzel Jakob 54b6fdd43d starting work on the v1.6 release 2016-04-21 12:29:17 +02:00
Wenzel Jakob dbe43ffcce completed implicit type casters for reference_wrapper 2016-04-21 12:21:14 +02:00
Wenzel Jakob f54ded74f1 added caster for std::reference_wrapper (fixes #171) 2016-04-20 17:00:57 +02:00
Wenzel Jakob e65e58716e slight generalization of cast_op_type 2016-04-18 21:22:22 +02:00
Wenzel Jakob 8cb6cb33ef minor cleanups in common.h; updated author info and copyright year 2016-04-18 10:53:38 +02:00
Wenzel Jakob bf0c7dcc22 convenience overload for make_iterator() 2016-04-18 10:52:12 +02:00
Wenzel Jakob 1dc940d4b7 quenched -pendantic warnings (closes #167) 2016-04-18 10:41:44 +02:00
Wenzel Jakob b2b44a9af8 fix for virtual dispatch on newly created threads 2016-04-15 17:59:53 +02:00
Wenzel Jakob 8bd31c71e4 New automatic return value policy for cat() and make_tuple(), fixed an ambiguity issue 2016-04-14 15:00:30 +02:00
Wenzel Jakob b282595bba convenience wrapper for constructing iterators (fixes #142) 2016-04-14 00:23:37 +02:00
Wenzel Jakob 5a6aa49105 Added len() function 2016-04-13 22:48:05 +02:00
Wenzel Jakob d7efa4ff7b return best representation of polymorphic types (fixes #105) 2016-04-13 13:51:33 +02:00
Wenzel Jakob 1c329aab5a pickling support (fixes #144) 2016-04-13 02:58:56 +02:00
Wenzel Jakob 505466ff0e added variadic make_tuple() function 2016-04-13 02:49:03 +02:00
Wenzel Jakob f5c154ade9 address issue with virtual function dispatch (fixes #159) 2016-04-11 18:13:08 +02:00
Wenzel Jakob 95dc0695b7 starting work on version 1.5 2016-04-07 08:59:15 +02:00
Wenzel Jakob 9f0dfce84b returning unique pointers is now allowed 2016-04-06 17:38:18 +02:00
Wenzel Jakob a3ee1a4591 improved pair type caster (fixes #155) 2016-04-06 11:51:00 +02:00
Wenzel Jakob 912feec119 improve debug error message when default parameter construction fails 2016-04-01 12:17:10 +02:00
Wenzel Jakob b90e68de7e another corner case (fixes #151) 2016-03-27 00:19:32 +01:00
Wenzel Jakob 08927e9809 tabs->spaces 2016-03-26 23:38:46 +01:00
Wenzel Jakob 9883ec01d7 allow nullptr string values (closes #138) 2016-03-26 23:37:51 +01:00
Wenzel Jakob 7393343f69 removed unnecessary code 2016-03-26 23:04:40 +01:00
Wenzel Jakob d3349af48b modularized logic in preceding change, fixed issue with char (fixes #150) 2016-03-26 23:04:10 +01:00
Wenzel Jakob 0772967ecf allow nullptr when passing void* values 2016-03-26 20:41:28 +01:00
Wenzel Jakob de1bca864e added feature to pass void* pointers by popular demand 2016-03-26 17:51:09 +01:00
Wenzel Jakob 12cf543804 address compilation issue in MSVC 2016-03-26 17:29:33 +01:00
Wenzel Jakob 048373c1b4 explicitly route type casting operations to desired casting operator (fixes #147) 2016-03-26 17:21:19 +01:00
Wenzel Jakob 0b4895885b improve default parameters for properties 2016-03-25 16:13:10 +01:00
Wenzel Jakob 84ec78feeb minor redesign/generalization of def_property mechanism 2016-03-21 17:54:24 +01:00
Wenzel Jakob eda978e003 support for opaque types 2016-03-15 15:07:55 +01:00
Ben Pritchard 1b52246f5d Better testing for callable python functions 2016-03-10 16:31:38 -05:00
Wenzel Jakob 17cdb06c1b fix severe regression involving character arrays (fixes #137) 2016-03-10 13:24:10 +01:00
Wenzel Jakob eb5277b38e Merge pull request #119 from SylvainCorlay/docstring
Signature formatting for sphinx
2016-03-09 16:37:44 +01:00
Sylvain Corlay 4c7bf9bb94 Add return type 2016-03-08 18:44:04 -05:00
Sylvain Corlay 0e04fdf3f6 Add generic signature for overloads 2016-03-08 17:22:22 -05:00
Sylvain Corlay 13b22bf4f6 Signature formatting for sphinx 2016-03-08 16:06:05 -05:00
Wenzel Jakob 81dfd2c51f Working type casters for wide strings and wide characters 2016-03-08 20:48:07 +01:00
Wenzel Jakob 504f7553e3 starting to work on next version 2016-03-08 18:12:24 +01:00
Wenzel Jakob 309a85ba59 support std::shared_ptr<const X> and types that indirectly derive from std::enable_shared_from_this 2016-03-08 17:59:10 +01:00
Wenzel Jakob 77586fd6a2 add version suffix to internal pybind11 data structures to avoid conflicts with future versions 2016-03-06 13:50:26 +01:00
Wenzel Jakob bce8a4b95c force explicit cast (fixes #130) 2016-03-06 13:30:23 +01:00
Ben Pritchard f4902ece17 Use emplace for casting to map 2016-03-05 17:36:46 -05:00
Wenzel Jakob 52f4c3aef3 handle nullptr arguments with custom holder types (fixes #124) 2016-03-03 14:05:06 +01:00
hulucc a88334f9c2 add wchar_t caster 2016-03-02 15:07:08 +08:00
hulucc c8f68b3d92 add wstring caster 2016-03-02 13:59:39 +08:00
Wenzel Jakob 218b6ce246 Revert "trim docstrings (closes #112)"
This reverts commit b3ef54a544.
2016-02-28 23:52:37 +01:00
Johan Mabille 25dd4789a8 Python overloading of virtual functions defined in class template 2016-02-28 23:26:29 +01:00
Wenzel Jakob b3ef54a544 trim docstrings (closes #112) 2016-02-24 13:49:04 +01:00
Wenzel Jakob 4a50fa5cd4 Address issue with handle::cast<bool>(), quench warning in example 12 (fixes #110) 2016-02-23 23:51:01 +01:00
Wenzel Jakob 347e6eaf68 allow a broader set of types in STL containers 2016-02-23 17:37:10 +01:00
Wenzel Jakob 82ba330080 stl.h: transparent conversion of STL linked lists 2016-02-23 17:28:45 +01:00
Wenzel Jakob a3861b54c4 type_caster_generic::load(): accept Py_None as input 2016-02-23 13:37:14 +01:00
Wenzel Jakob d6e4cef65f minor formatting changes, removed missing header files referenced in setup.py 2016-02-20 12:17:17 +01:00
Wenzel Jakob 5e31d891fc Merge pull request #102 from jmabille/vectorize 2016-02-20 12:15:31 +01:00
Johan Mabille 1dc960c37f NumPy-style broadcasting support in pybind11::vectorize 2016-02-20 12:14:52 +01:00
Ben Pritchard 33f3430d0c Add intel warning push/pop 2016-02-18 15:25:51 -05:00
Ben Pritchard 2de6e1d142 Remove some unnecessary semicolons (compilers warn on higher levels) 2016-02-18 13:20:15 -05:00
Ben Pritchard 70ee47ddcf Add Intel to cmake file. Supress Intel inline/noinline warning 2016-02-18 13:06:43 -05:00
Ben Pritchard 0b6cff3d1d Fixes for compilation/segfault problems with Intel (issue 94) 2016-02-18 12:38:27 -05:00
Wenzel Jakob f8584b630b quench some warnings in operators.h 2016-02-16 13:36:04 +01:00
Wenzel Jakob 0880294924 support unordered set/map data structures (fixes #100) 2016-02-13 00:22:26 +01:00
Wenzel Jakob 4fee179900 better debug info when arg::operator=() fails 2016-02-09 11:31:20 +01:00
Wenzel Jakob 4f8902a931 starting development cycle for v1.3 2016-02-07 17:33:12 +01:00
Wenzel Jakob 8ed2808239 pybind11, version 1.2 2016-02-07 17:32:37 +01:00
Wenzel Jakob 10c74c6f34 transparent std::array conversion (fixes #97) 2016-02-07 16:36:51 +01:00
Wenzel Jakob 1f7a8096b7 support for string default arguments specified as static arrays 2016-02-07 13:29:17 +01:00
Wenzel Jakob e206564ebf removed a redundant tag 2016-02-04 23:29:29 +01:00
Wenzel Jakob a65017902e set __module__ attribute of functions (fixes #95) 2016-02-04 23:03:58 +01:00
Wenzel Jakob b6cf75d66a address issue with std::type_info across module boundaries (fixes #86) 2016-01-29 11:39:32 +01:00
Felipe Lema 2547ca468c deal with Python versions compiled without thread support (fixes #81) 2016-01-28 18:16:42 +01:00
Wenzel Jakob 15f6a0030e enum comparison and conversion operations (closes #80) 2016-01-24 14:05:12 +01:00
Wenzel Jakob fa92f6796f Merge pull request #76 from ax3l/fix-unusedVar
Close #69 Unused Var: Warning
2016-01-21 19:03:51 +01:00
Axel Huebl 30214adc0a Fix #75 <complex> may define macro I
Fix #75 as described by undefining the macro `I` from `<complex>`
if defined (as in `glibc`).

This seems to be the only include of it.
2016-01-21 17:44:43 +01:00
Axel Huebl 2dd5e3bc2a Close #69 Unused Var: Warning
Close #69
[This](http://stackoverflow.com/a/3418951)
stackoverflow post recommended
[that](http://herbsutter.com/2009/10/18/mailbag-shutting-up-compiler-warnings/)
Herb Sutter blog post with a general and portable solution and it
works great! :)
2016-01-21 17:18:47 +01:00
Wenzel Jakob 80a06745d3 hopefully final(?) adjustment to detail::is_copy_constructible (fixes #70) 2016-01-20 11:34:07 +01:00
Wenzel Jakob b670b77060 minor adjustment to detail::is_copy_constructible (fixes #70) 2016-01-20 01:26:43 +01:00
Wenzel Jakob 88d1d04132 another attempt to fix the offsetof warnings 2016-01-20 01:26:42 +01:00
Axel Huebl 7cd569c703 Fix Compile Error: str Naming
This fixes a build error compiling with `nvcc/7.5` + `gcc/4.9.2`
causing a
```
./include/pybind11/pybind11.h(952): here

./include/pybind11/pytypes.h: In member function ‘pybind11::str pybind11::handle::str() const’:
./include/pybind11/pytypes.h:269:8: error: expected primary-expression before ‘class’
     return pybind11::str(str, false);
        ^
./include/pybind11/pytypes.h:269:8: error: expected ‘;’ before ‘class’
./include/pybind11/pytypes.h:269:8: error: expected primary-expression before ‘class’
```
2016-01-19 01:26:52 +01:00
Wenzel Jakob 260bc58f57 improved SFINAE in type_caster_generic (closes #70) 2016-01-18 22:15:20 +01:00
Wenzel Jakob 92b2f452f0 fix regression in stl.h 2016-01-18 22:15:20 +01:00
Wenzel Jakob 2983d5e1de quench warnings (closes #69) 2016-01-18 22:15:16 +01:00
Wenzel Jakob 48548ea4a5 general cleanup of the codebase
- new pybind11::base<> attribute to indicate a subclass relationship
- unified infrastructure for parsing variadic arguments in class_ and cpp_function
- use 'handle' and 'object' more consistently everywhere
2016-01-17 22:31:15 +01:00
Wenzel Jakob 1ae77fe4d3 added a changelog file and version defines 2016-01-17 22:31:15 +01:00
Wenzel Jakob 53b26549d0 python 3.2 compatiblity (closes #56) 2016-01-17 22:31:15 +01:00
Wenzel Jakob ba0732e7dc fixed a terrible bug in def_property_static and switched to the faster PyObject_CallFunctionObjArgs API call 2016-01-17 22:31:15 +01:00
Wenzel Jakob 678d787ca4 do more work with classes from pytypes.h (especially for STL container casting) 2016-01-17 22:31:15 +01:00
Wenzel Jakob d561cb010c fully moved __pybind11__ Python attributes to the C++ side, cleanup & documentation pass over the main header file 2016-01-17 22:31:15 +01:00
Wenzel Jakob e45b29047a numpy.h: fixed a leak, added some comments to buffer_info 2016-01-17 22:31:15 +01:00
Wenzel Jakob d33361a6d7 moved lifetime management of Py_buffer to pybind11::buffer_info, renamed count->size to match NumPy naming (fixes #34) 2016-01-17 22:31:15 +01:00
Wenzel Jakob 95d18691c9 minor fixes & removed a leak when freeing functions 2016-01-17 22:31:15 +01:00
Wenzel Jakob b2c2c79240 improved handling of shared/smart pointers
Previously, pybind11 required classes using std::shared_ptr<> to derive
from std::enable_shared_from_this<> (or compilation failures would ensue).

Everything now also works for classes that don't do this, assuming that
some basic rules are followed (e.g. never passing "raw" pointers of
instances manged by shared pointers). The safer
std::enable_shared_from_this<> approach continues to be supported.
2016-01-17 22:31:15 +01:00