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
This remove support for coercing non-ReferenceCounted types that are neither default-constructible nor move-assignable, but it turns out none of the classes we really need it for matches that.
It further cuts down on the amount of code that is being generated to support coercion in cases where it makes absolutely no sense.
* 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
Work around bugs in Apple Clang that ships with XCode 4 with C++11 by disabling constexpr
Use move() instead of std::move()
It also looks like we'll have to continue using pystub for tools that use libp3interrogatedb for now.
* Support trailing return type.
* Ignore C++14 digit separators.
* Parse C++14 binary number representations.
* Support "using"-style type aliases.
* Support decltype and auto with "new".
* Remove silly "long float" and "long long float".
* Support default visibility with class inheritance.
* Remove -longlong hack since C++11 supports long long natively.
* Support unary plus operator.
* Preserve bitfield definitions.
* Support constructor inits using braces.
* Support override/final specifiers.
* Ignore [[attributes]] in certain cases
* Add support for typeid() in expressions
* Parse (but ignore) lambda expressions
* Differentiate between casts, add const_cast/reinterpret_cast
* Support thread_local variables.