rdb
090e912ce6
Cleanup of comments and whitespace
2016-02-01 22:30:43 +01:00
rdb
8a205ac100
MAKE_PROPERTY should ignore setter overloads that take the wrong number of arguments
2016-01-25 17:02:25 +01:00
rdb
da17cce447
Fix error and warnings in 32-bit Windows build
2015-11-01 16:57:52 +01:00
rdb
1d9aff0c48
Fix wrapper for operator bool of TypeHandle
2015-09-19 14:50:59 +02:00
rdb
57e5c8fb25
Wrap TypeHandle and ButtonHandle as ints in C wrappers
2015-09-10 15:29:31 +02:00
Sam Edwards
16bfd3750f
Add missing includes.
2015-07-12 19:27:13 -07:00
rdb
7026854cc2
Fixes to get the C binding generator to work
2015-07-05 16:07:08 +02:00
rdb
11ed8a4d8d
Use dynamic type lookup for interrogate to eliminate inter-module dependencies
...
It is now no longer necessary to link to core.pyd
Also includes a slight coercion optimization for trivial types
2015-06-06 19:36:40 +02:00
rdb
ff58db25ac
Fix inheritance of hash functions, restore compare_to(), slot get_hash/get_key
2015-03-28 21:55:55 +01:00
Sam Edwards
64120cd7d8
general: Add missing includes and forward-declarations.
2015-03-28 19:27:48 +01:00
rdb
de0b0dd879
Fix various issues with Python 3 support, fix samples to work with Python 3
2015-03-23 00:32:47 +01:00
rdb
b63d5fbe8c
Support cyclic garbage collection through PythonTask objects
2015-03-15 12:24:06 +01:00
rdb
da3f642902
Various interrogate improvements
2015-02-27 15:01:42 +01:00
rdb
9513046e59
Various substantial changes to Interrogate:
...
* Allow arbitrary selection of optional keyword arguments in some cases
* Reduce code bloat of generated bindings
* Work around awkward resolution of set_shader_input overloads
* Document the code a bit better
* Make coercion a bit cleaner for reference counted types
* A few optimization tweaks
* Use generic errors in NDEBUG build to reduce size of string pool
2015-02-15 13:48:13 +01:00
rdb
4dc4c9eb3d
Merge branch 'master' into interrogate-overhaul
...
Conflicts:
dtool/src/interrogate/functionRemap.cxx
dtool/src/interrogate/interfaceMakerPythonNative.cxx
panda/src/event/pythonTask.cxx
panda/src/express/multifile.h
panda/src/express/pointerToArray.I
panda/src/mathutil/config_mathutil.N
panda/src/putil/config_util.N
panda/src/putil/doubleBitMask.h
2015-02-11 14:41:58 +01:00
rdb
a6eb3fa442
Make NodePathCollection and TextureCollection constructors extensions
2015-02-11 14:14:03 +01:00
rdb
cbd70ad8af
Move all Python bindings out of core DLLs into the .pyd files.
2015-02-10 14:30:51 +01:00
rdb
6db5d0dc11
Huge cppparser and interrogate overhaul, bringing:
...
* Better support for typedefs
* Same code should compile for both 32-bit and 64-bit
* C++11 typed enum support
* Synthesize __setitem__ when operator [] returns reference
* Rewrite coerce system to have better performance
* Change semantics of __getattr__ and __setattr__ to match
Python's, add __getattribute__, __delattr__ and __delitem__
* Improve performance of slot functions a bit more
* Reduce memory overhead of type system
* Some support for wrapping arrays of numeric types
* C++11 character type support in cppparser
* Chars are handled as strings of length 1
* Template functions for CreatePyInstance that use runtime type map
* More functions from dtool as extension functions
* Code cleanup
2014-12-30 16:43:52 +01:00
rdb
c178aba639
Add property support to interrogate (using MAKE_PROPERTY or using published members)
2014-09-19 15:23:52 +00:00
rdb
e468b293d1
Fix a longstanding memory leak in certain interrogate exception handlers.
...
Raise MemoryError when constructor returns NULL.
Properly check argument count of constructors that take no arguments.
2014-08-26 17:17:37 +00:00
rdb
f02662d4e0
Improve interrogate code readability, use METH_STATIC for static methods, support anonymous enums
2014-07-22 20:06:59 +00:00
rdb
c257ce624e
Interrogate overhaul that dramatically increases performance for the simpler methods
2014-07-18 13:54:38 +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
cc3bae7e76
Big interrogate cleanup, new extension system, add __iter__ support, add buffer protocol support
2013-09-17 10:11:43 +00:00
David Rose
4785161374
squelch some more compiler warnings
2011-06-18 00:16:48 +00:00
rdb
319b8c4cb1
More stuff related to extensions
2011-01-03 08:25:13 +00:00
rdb
beb90c565f
Add functionality allowing extension functions to interrogate
2011-01-02 15:14:02 +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
816ddc0387
low-level support for python copy and pickle modules
2009-12-10 01:09:06 +00:00
David Rose
1872104e61
add per-overload comments and make_seq synthetic functions to interrogatedb
2009-09-15 13:36:07 +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
fb9c56432a
we are now using the modified BSD license
2008-05-28 18:37:20 +00:00
David Rose
4cd6d03cb5
support explicit default constructors for linmath
2008-03-25 23:53:27 +00:00
David Rose
896860c8c2
fix reference-counting on forward-reference return values
2007-07-04 00:33:49 +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
David Rose
51ede9905f
interface -> interface_maker (avoid conflicts with Windows SDK)
2006-04-06 17:55:26 +00:00
Roger Hughston
42b3ba9c82
OSX big Commit ...
2006-03-17 22:55:08 +00:00
Roger Hughston
63290756fe
*** empty log message ***
2005-05-23 21:04:31 +00:00
David Rose
b9cb0516aa
new genPyCode, INSTALL_PYTHON_SOURCE
2004-06-03 17:26:32 +00:00
David Rose
843c0331ae
update license, change remaining local #includes to use quotation marks
2004-02-13 19:27:33 +00:00
David Rose
861c762e7d
first wave of new ffi/interrogate
2001-10-02 22:25:32 +00:00