| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
| |
The protected sections triggered a generation bug when avoiding
the protected hack
Change-Id: I6346cdb74a25f1ddf49263d9f74670a3b105b07a
Reviewed-by: Matthew Woehlke <mw_triad@users.sourceforge.net>
Reviewed-by: Roman Lacko <backup.rlacko@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
| |
Teach Shiboken to parse the 'noexcept' keyword. This doesn't add any
features (and we only support unconditional 'noexcept' for now), but
addresses an internal error that causes shiboken to SEGV trying to parse
modern versions of boost::intrusive_ptr. A test case to replicate the
crash (without the other changes) is also added.
Change-Id: I4713593dfd189c02ef4a2d7447d785b6d378019c
Reviewed-by: John Ehresman <jpe@wingware.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add an additional check to AbstractMetaBuilder::traverseFunction to also
perform a quick-and-dirty construction of the function signature, and to
check that against the rejections. Add a unit test for matching full
signatures.
Before, we were only testing the function name; as a result, a rejection
like 'foo()' would never match (because the name does not have ()'s).
This is especially helpful for rejecting specific overloads of functions
while allowing others to be wrapped normally. (The unit test shows a
not-so-far-fetched example why one might want to do this.)
The signature building logic isn't very sophisticated and likely
requires a very exacting match to the signature as it appears in the
wrapped sources, but that's likely not a serious issue, and at any rate
this is much better than not being able to match overloads at all.
Change-Id: Ic686377477aacf54f79c7bd2013e9aea8521a4ea
Reviewed-by: John Ehresman <jpe@wingware.com>
|
|
|
|
|
|
|
|
|
| |
Fix omission of 'const' specifier when generating binding code for
containers whose value type is 'const', which would lead to binding code
that does not compile due to 'const' mismatch. Includes test case.
Change-Id: Iff99a16ee071bb255f78e86e2456e5206cc00cfb
Reviewed-by: John Cummings <jcummings2@users.sf.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add methods to various places in the hierarchy so that the generator can
access the topologically ordered class list (in addition to the
unordered class list). Modify CppGenerator::finishGeneration to use
this.
This fixes a failure to correctly create Python wrapper classes due to
subclass wrappers being initialized before their base class (with the
result that the looked-up type object for the base class is null,
causing the derived class to be created without referencing the base).
Also change one of the test cases to test that we correctly wrap a
typedef of a template class derived from a non-template base (which was
failing before this change for the aforementioned reason).
Change-Id: Ib4dc2626a41cb7bb905ff4a302c2613ea12d026b
Reviewed-by: John Cummings <jcummings2@users.sf.net>
|
|
|
|
|
|
|
|
| |
Change libsample/transform.cpp to use the MSVC-specific _finite on
Windows, rather than std::isfinite, which MSVC does not implement.
Change-Id: If7b33e17bcb7c2e4432d670d44b559205f88796d
Reviewed-by: John Ehresman <jpe@wingware.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change '%#' substitution to use a regular expression for the 'old' text
to enforce a word boundary after '#', such that we don't perform e.g.
'%1' replacement on inputs like '%10'. This fixes problems trying to
modify functions with more than nine arguments, such as the example from
the previous commit (which now compiles and passes). Also add a test
case for this.
Change-Id: I9956804b3c65bddf7e36838866641b24ceb87c57
Reviewed-by: John Ehresman <jpe@wingware.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Classes with virtual methods but non-virtual destructors are dangerous,
because users often hold pointers-to-base-class of derived classes,
which cannot correctly destruct the derived class if deleted. As such,
there is the aforementioned warning that developers may like to promote
to an error. Add virtual (empty) destructors to some classes that were
tripping this, so that we build successfully if said flag is used, and
because they should probably be present.
Change-Id: I930ad5f5d122cf94c57e52bf28479cf3ca7950d4
Reviewed-by: John Cummings <jcummings2@users.sf.net>
Reviewed-by: John Ehresman <jpe@wingware.com>
|
|
|
|
|
| |
Change-Id: I8946a8572b608bf8ede211d270f797f135f8083a
Reviewed-by: John Cummings <jcummings2@users.sf.net>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Replaced old Nokia copyrights with Digia copyrights.
Removed "All rights reserved" strings without leading copyrights were
removed (for example, 'Copyright SomeCompany, all rights reserved
remain untouched).
Did NOT touch contact details, will change them later.
Excluded folders that have '3rdparty' in path.
Used command:
find . -path '*/3rdparty/*' -prune -o
-exec grep -ilI -E '.*Copyright.*Nokia.*' {} \; |
tee >(xargs sed -i -r '1,10 s/([ \t#*]*)(.*Copyright.*Nokia.*)/
\1Copyright \(C\) 2013 Digia Plc and\/or its subsidiary\(-ies\)\./I')
>(xargs sed -i -r '1,10 s/(^[ \t#*]*)(all rights reserved.*)/\1/I')
This excludes binary files and retains whitespace and #* characters in
the beginning of the edited lines.
Change-Id: I0d49f991c3dbd45d804843f185714e8681bc6c51
Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
Reviewed-by: Janne Anttila <janne.anttila@digia.com>
|
|
|
|
|
|
| |
Change-Id: I29674a2d758ebf4650e2fe26cdc2e663c0bae5c7
Reviewed-by: Sébastien Sablé <sable@users.sourceforge.net>
Reviewed-by: Hugo Parente Lima <hugo.lima@openbossa.org>
|
|
|
|
|
|
|
|
| |
Replace "::" with "_" in protected enum name to fix issue
Add test case to libsample and samplebinding
Change-Id: I2edea2dfa8adecfe5fa34f777da9f60cfe4c6ee4
Reviewed-by: Hugo Parente Lima <hugo.lima@openbossa.org>
|
|
|
|
|
| |
Change-Id: I77bda667d4119a7982ec93175ff0b3153277ad8e
Reviewed-by: Hugo Parente Lima <hugo.lima@openbossa.org>
|
|
|
|
|
|
|
| |
Fixes bug PYSIDE-54
Change-Id: Ic5c341741170cc77e8ebb59c46c746211582ddeb
Reviewed-by: Marcelo Lira <marcelo.lira@openbossa.org>
|
|
|
|
|
| |
Change-Id: I2e954bedfe4699a621047a757b3dbd202655e97b
Reviewed-by: Hugo Parente Lima <hugo.lima@openbossa.org>
|
|
|
|
|
|
| |
Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
Reviewed-by: Marcelo Lira <marcelo.lira@openbossa.org>
Reviewed-by: Hugo Parente Lima <hugo.pl@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
When handling typedef'd primitive types we don't need to create indices
for them, nor converters. Instead, we must use the underlying primitive
type converters.
See http://bugs.pyside.org/show_bug.cgi?id=1105.
Signed-off-by: Paulo Alcantara <pcacjr@gmail.com>
Reviewed-by: Marcelo Lira <marcelo.lira@openbossa.org>
Reviewed-by: Hugo Parente Lima <hugo.pl@gmail.com>
|
| |
|
| |
|
|
|
|
|
|
| |
protected hack.
Also added an unit test.
|
| |
|
|
|
|
|
| |
Fixes provided by Hugo Parente Lima.
Unit test added.
|
|
|
|
| |
Also added a couple of related unit tests.
|
| |
|
| |
|
| |
|
|
|
|
| |
This is only a compilation test, no Python test was provided.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
|
| |
Reviewer: Marcelo Lira <marcelo.lira@openbossa.org>
Paulo Alcantra <pcacjr@gmail.com>
|
| |
|
|
|
|
|
|
|
|
| |
functionality through a Python module"."
This reverts commit bc8448d7fb91733ff08c2a6a3a878702c14a24e0.
The PSEP didn't reach the final version yet, so this commit can't be released.
|
|
|
|
| |
through a Python module".
|
|
|
|
|
|
|
|
|
| |
methods.
Tests were added.
Reviewed by Hugo Parente <hugo.lima@openbossa.org>
Reviewed by Lauro Moura <lauro.neto@openbossa.org>
|
|
|
|
| |
Also moved a couple of tests from samplebindings to otherbindings.
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
primitive type.
The inject code has a %CONVERTTOPYTHON that receives an user's primitive type.
|
|
|
|
|
| |
Reviewer: Hugo Parente <hugo.lima@openbossa.org>
Luciano Wolf <luciano.wolf@openbossa.org>
|
|
|
|
|
|
|
|
| |
Added the SBK_UNUSED macro to libshiboken to prevent compilation warnings.
An unit test was added.
Reviewed by Hugo Parente <hugo.lima@openbossa.org>
Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
|
|
|
|
|
|
|
|
| |
This simulates a situation found in QtWebKit's QWebDatabase
and QWebSecurityOrigin classes.
Reviewed by Luciano Wolf <luciano.wolf@openbossa.org>
Reviewed by Renato Araújo <renato.filho@openbossa.org>
|
|
|
|
| |
This simulates the situation found in Qt's phonon module.
|
|
|
|
| |
An unit test was also added for it.
|
|
|
|
|
| |
The test is for an Object Type that didn't existed in Python and is
passed to it as C++ reference through a virtual method.
|
|
|
|
|
|
|
|
|
|
| |
known types.
This is in opposition of simply returning a string with a custom type
check. The details are in the docstring in ShibokenGenerator header.
Also added a new modification test and refactored here and there in the
sample binding type system.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
existing ones.
Specifically this causes the situation when there is in C++ a function
with an argument that is a reference to a Value Type, and the user adds
a very similar function with the same type, but passed as value.
Example:
C++ : function(const TYPE& a, int b)
Added: function(TYPE)
The return type of ShibokenGenerator::getArgumentReplacement() method
was modified, because the argument object is more useful than its index.
|