Commit Graph

235 Commits

Author SHA1 Message Date
rdb d5d5de1d7e Make iterators work with interrogate by mapping None to NULL for the iternext method. Not the best solution, but is easy and fits most use cases. 2014-03-27 15:15:58 +00:00
rdb ae4bddd7f7 Fix Python 3 compile issue 2014-03-09 01:00:23 +00:00
rdb c213712600 fix windows build when the module is in different dll than the library defs 2014-02-20 18:38:35 +00:00
rdb 5f2c0a6e04 Big commit aiding in separation of Python bindings:
* Most extension functions have been moved to C++.
 * In makepanda, Python bindings are compiled into panda3d/<module>.pyd.
2014-02-20 13:33:26 +00:00
rdb f29c4681e1 Fix broken Python 3 support. 2013-12-17 17:42:16 +00:00
rdb 7926a5fa7b backward compatibility with Python 2.7 2013-10-27 18:51:20 +00:00
rdb cc3bae7e76 Big interrogate cleanup, new extension system, add __iter__ support, add buffer protocol support 2013-09-17 10:11:43 +00:00
rdb 8fff339477 A lot of code cleanup 2013-09-01 15:05:43 +00:00
David Rose 5178fb9523 fix problem with infinite recursion on coercion within constructors 2013-03-25 15:15:08 +00:00
rdb a9014cf933 reenable tp_richcompare (thanks David) 2013-02-20 10:44:48 +00:00
David Rose 53b472756b fix rich compare 2013-02-20 00:37:12 +00:00
rdb da44b3ae3b oops, disable broken rich compare for now 2013-02-19 19:21:41 +00:00
rdb 0f8361d730 Fix compile errors with Python 2 2013-02-18 12:28:52 +00:00
rdb 192d10b937 Experimental Python 3 support to the C++ code including interrogate. Also adds support for rich comparison in interrogate. 2013-02-16 19:22:26 +00:00
David Rose 9294ea77f7 interrogate supports wchar_t * and L"foo" 2011-11-29 23:25:23 +00:00
David Rose 134e9a9e92 dual names for interrogate 2011-10-11 00:45:51 +00:00
David Rose 6bed0cf394 bool should return a bool 2011-09-28 17:42:46 +00:00
rdb 319b8c4cb1 More stuff related to extensions 2011-01-03 08:25:13 +00:00
David Rose d51e49516a allow __py__ functions for python-only optimizations 2010-06-16 21:57:37 +00:00
David Rose aa76a9f59d support class method versions of MAKE_SEQ 2010-06-13 22:03:46 +00:00
David Rose bb96117de2 interrogate fix for ode::get_id() 2010-05-25 21:12:44 +00:00
David Rose a942ce5fbf lists and strings will be automatically coerced into a PTA_blah 2010-02-11 22:38:34 +00:00
David Rose f6f9e269f4 introduce stdpy.pickle module with support for common-node NodePaths within a pickle stream 2010-02-10 19:43:58 +00:00
David Rose 816ddc0387 low-level support for python copy and pickle modules 2009-12-10 01:09:06 +00:00
David Rose 1d3719ccb7 add tinyxml.h, fix char *NULL return value case 2009-10-13 21:28:18 +00:00
David Rose 8f5102d889 interrogate fix 2009-09-30 22:35:58 +00:00
David Rose 383a6e512c support tinyxml's (const string *) return types. 2009-08-11 17:24:56 +00:00
David Rose 1db044ca4e add hash(Filename) 2009-08-07 15:27:58 +00:00
David Rose 0e773c8684 respect __nonzero__ 2009-08-05 21:51:28 +00:00
David Rose 70e1e46a61 coercion memory leak fix, part 1 2009-06-10 14:33:44 +00:00
David Rose 2982ca3187 python 2.4 2009-02-19 00:38:44 +00:00
David Rose 221862b432 squelch compiler warnings about (char *) 2009-02-18 23:27:04 +00:00
David Rose f477db0b19 might as well expose int and float typecasts, too 2009-01-20 19:51:31 +00:00
David Rose a6f4fb2377 operator bool () -> __nonzero__() 2009-01-20 03:17:44 +00:00
David Rose 4cd50fa68d fix performance issues with implicit parameter coercion 2009-01-07 20:05:57 +00:00
David Rose 1462bee771 better Filename usage 2008-11-11 23:28:14 +00:00
David Rose 587f000ab5 correct prototype for setitem 2008-11-08 16:55:57 +00:00
David Rose 58e0537e3c wide interrogate improvements: sequence protocol, MAKE_SEQ, __setitem__, and parameter coercion 2008-11-07 21:12:42 +00:00
David Rose 9468e4583c further refinements to local_this checking 2008-10-29 19:06:57 +00:00
David Rose f7105a081b raise an exception if 'this' is null 2008-10-29 00:53:27 +00:00
David Rose e81660a741 check PyErr_Occurred() even in ndebug mode 2008-09-27 00:12:08 +00:00
David Rose 524128b9fd wip: starting experimental C-based task manager 2008-09-19 00:58:04 +00:00
David Rose fb9c56432a we are now using the modified BSD license 2008-05-28 18:37:20 +00:00
David Rose ef5b2fe57e squelch warning 2007-09-20 18:22:16 +00:00
David Rose 3804f89682 wchar_t might not be two bytes wide 2007-09-05 18:02:47 +00:00
David Rose 06a36aff63 get runtime info for things that don't inherit from TypedObject 2007-06-22 22:35:57 +00:00
David Rose 8d2bdc39fd first pass at SIMPLE_THREADS 2007-06-21 15:33:27 +00:00
David Rose 137998a5c7 track_in_interpreter 2007-05-09 22:07:48 +00:00
David Rose 346928ece7 support BLOCKING keyword 2007-04-18 21:51:36 +00:00
David Rose 0be53cccf6 interrogate changes: respect const, use Python names in diagnostic messages 2007-02-08 20:15:54 +00:00