Sam Edwards
b2bfb31114
general: Remove `using std::*` from headers
...
Also remove most `using namespace std;` statements. The only one that remains is in py_panda.h.
Closes #350
Closes #335
2018-06-14 16:04:49 +02:00
Sam Edwards
a9ffb9630b
dtool: Generate code using nullptr over NULL/0
2018-06-03 16:36:07 -06:00
Sam Edwards
e2b4353800
general: Replace NULL (and 0 as pointer) with C++11 nullptr
...
Exceptions to this replacement are:
- .c files
- Headers included by a .c file
- stb_image.h
- dr_flac.h
- Strings
- Comments
2018-06-03 16:35:13 -06:00
Sam Edwards
d422d74abb
general: Clean up asserts which were abusing NULL
2018-06-03 16:26:44 -06:00
rdb
e0245d2777
First step towards eliminating `using namespace std;` ( #335 )
2018-06-03 20:32:23 +02:00
rdb
69b3468b2c
interrogate: more improvements to seq/map wrappers
...
Gets rid of properties defined as both MAKE_SEQ_PROPERTY/MAKE_MAP_PROPERTY, which are just a bad idea. Instead, adds a way for map properties to define a separate "keys" interface.
Fixes : #203
2017-11-27 17:29:50 +01:00
rdb
bf190f7306
interrogate: support MAKE_MAP_PROPERTY
2017-10-09 00:02:46 +02:00
rdb
7ff8b62fb8
interrogate: various fixes:
...
* handle static methods with explicit self
* fix len() and __setitem__ of mapping types
* fix inheritance of __getattr__ and __setattr__
* fix overload resolution error with nullptr_t arguments
* bool overloads now come after float/double overloads
* record whether class is final in interrogatedb
* add Dtool_EmptyTuple
* optimization for final classes: no need for downcast
2017-09-19 18:46:21 +02:00
rdb
d1c34c3360
interrogate: support static properties
2017-08-07 22:04:56 +02:00
rdb
4283a63a7d
Merge branch 'release/1.9.x'
2016-06-11 01:29:14 +02:00
rdb
ba919b0948
Fix crash running TaskTester
2016-06-11 01:11:03 +02:00
rdb
5543716660
Interrogate wraps vector<unsigned char> as Python 3 bytes object
2016-06-03 01:47:54 +02:00
rdb
ce29ae490d
Interrogate improvements, more properties, MAKE_SEQ_PROPERTY
2016-05-11 00:16:53 +02:00
tobspr
0fcfb8e372
New file headers, new comment style
2016-02-17 17:47:48 +01:00
rdb
db6f0342cc
Add properties with has/clear (interrogatedb v3.1)
2015-12-24 14:25:45 +01:00
rdb
ac1c036cac
interrogatedb 3.0 to restructure make_seq, improve make_seq handling and performance
2015-11-09 18:03:30 +01:00
rdb
920210c999
Fix the vast majority of Interrogate parse issues and warnings, add support for inline namespace and constexpr
2015-10-16 14:57:40 +02:00
rdb
7026854cc2
Fixes to get the C binding generator to work
2015-07-05 16:07:08 +02:00
rdb
b63d5fbe8c
Support cyclic garbage collection through PythonTask objects
2015-03-15 12:24:06 +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
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
52e4acc0ce
fix a crash with the python-obj, python and c interface makers
2013-11-08 10:30:27 +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
9294ea77f7
interrogate supports wchar_t * and L"foo"
2011-11-29 23:25:23 +00:00
David Rose
4785161374
squelch some more compiler warnings
2011-06-18 00:16:48 +00:00
David Rose
aa76a9f59d
support class method versions of MAKE_SEQ
2010-06-13 22:03:46 +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
383a6e512c
support tinyxml's (const string *) return types.
2009-08-11 17:24:56 +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
Roger Hughston
42b3ba9c82
OSX big Commit ...
2006-03-17 22:55:08 +00:00
David Rose
59ceb897ed
fix leaks, parameter checking in interrogate
2005-09-09 16:26:52 +00:00
David Rose
01c82da5df
interrogate supports wstring
2005-07-13 15:37:56 +00:00
David Rose
ac748503b4
dos2unix
2005-07-04 18:35:38 +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
23d9bf4583
properly enquote spam text
2002-12-04 21:08:44 +00:00
David Rose
c77fcbe00a
resurrect -spam
2002-11-27 21:33:27 +00:00
David Rose
756d334463
oops, invalid downcasts
2001-10-03 22:23:14 +00:00
David Rose
4cc5da5af0
robustify further for windows
2001-10-02 23:34:26 +00:00
David Rose
861c762e7d
first wave of new ffi/interrogate
2001-10-02 22:25:32 +00:00