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
9180519d8c
added an example on using fancier kinds of default arguments
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
678d787ca4
do more work with classes from pytypes.h (especially for STL container casting)
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
Wenzel Jakob
5f218b3f2c
keep_alive call policy (analogous to Boost.Python's with_custodian_and_ward, fixes #62 )
2016-01-17 22:31:15 +01:00
Wenzel Jakob
82ffd40870
type of void fixed (None -> NoneType)
2016-01-17 22:31:15 +01:00
Wenzel Jakob
27e8e1066b
added new type pybind11::bytes, cleanup of various macros ( fixes #49 )
2016-01-17 22:31:15 +01:00
Wenzel Jakob
66c9a40213
Much more efficient generation of function signatures, updated docs
...
This modification taps into some newer C++14 features (if present) to
generate function signatures considerably more efficiently at compile
time rather than at run time.
With this change, pybind11 binaries are now *2.1 times* smaller compared
to the Boost.Python baseline in the benchmark. Compilation times get a
nice improvement as well.
Visual Studio 2015 unfortunately doesn't implement 'constexpr' well
enough yet to support this change and uses a runtime fallback.
2016-01-17 22:31:15 +01:00
mk kim
b62c1203f5
Fix typographical error
2015-12-14 16:00:58 +09:00
Wenzel Jakob
76269b70b6
fix test harness for windows debug builds
2015-12-13 11:33:41 +01:00
Wenzel Jakob
60c36db1c9
generic integer type handling
2015-11-30 12:45:34 +01:00
Wenzel Jakob
6e213c9ca0
improved shared pointer support ( fixes #14 )
2015-11-24 23:18:32 +01:00
Wenzel Jakob
3ee91b2f0a
renamed pybind11::set::insert -> add to match C api naming
2015-11-15 13:03:07 +01:00
Wenzel Jakob
333e889ef2
Improved STL support, support for std::set
2015-11-14 19:04:49 +01:00
Wenzel Jakob
fab881caf4
appveyor CI script
2015-10-18 18:01:33 +02:00
Wenzel Jakob
b1b714023a
consistent macro naming throughout the project
2015-10-18 16:48:30 +02:00
Wenzel Jakob
8f4eb00690
last breaking change: be consistent about the project name
2015-10-15 18:23:56 +02:00
Wenzel Jakob
607654f7ec
windows fixes
2015-10-13 23:58:10 +02:00
Wenzel Jakob
db028d685c
added module::import statement
2015-10-13 23:44:25 +02:00
Wenzel Jakob
b50872acf2
A few breaking changes for consistency just before the 1.0 release
...
1. Renamed PYTHON_* to PYBIND_* everywhere
2. Renamed pybind::array_dtype<> to pybind::array_t<>
2015-10-13 17:46:31 +02:00
Wenzel Jakob
19208fe9a4
install a cleanup handler for nontrivial lambda closures
2015-10-13 17:46:27 +02:00
Wenzel Jakob
3b806d41eb
Added configuration files for Travis CI integration
2015-10-11 18:31:46 +02:00
Wenzel Jakob
2cf192f578
fixed testcase to take enum->int conversion into account
2015-10-04 15:17:12 +02:00
Wenzel Jakob
6d6fd099db
fixed testing infrastructure
2015-10-01 17:34:26 +02:00
Wenzel Jakob
be0e834b82
updated reference output
2015-10-01 17:13:38 +02:00
Wenzel Jakob
a2f6fde0dc
support for overriding virtual functions
2015-10-01 17:13:35 +02:00
Wenzel Jakob
73a50a0441
Fix for radd/rsub/rmul/rdiv operator convenience wrappers
2015-09-11 17:09:47 +02:00
Wenzel Jakob
5116b02e68
python 2.7 fix
2015-09-05 02:14:39 +02:00
Wenzel Jakob
570822102c
support for ancient Python versions (2.7.x)
2015-09-04 23:49:23 +02:00
Wenzel Jakob
d557e1d3ad
example6 fix
2015-09-01 22:56:40 +02:00
Wenzel Jakob
7b8e032c26
added a few basic number types
2015-08-28 17:49:15 +02:00
Wenzel Jakob
281aa0e668
nicer code separation, cleanup logic, std::function type caster
2015-07-31 04:10:38 +02:00
Wenzel Jakob
a576e6a8ca
keyword argument support, removed last traces of std::function<> usage
2015-07-29 23:39:11 +02:00
Wenzel Jakob
43398a8548
complex number support
2015-07-28 16:12:20 +02:00
Wenzel Jakob
d4258bafef
generate more compact binaries
2015-07-28 03:10:15 +02:00
Wenzel Jakob
38bd71134a
Initial commit
2015-07-09 15:27:32 +02:00