aboutsummaryrefslogtreecommitdiffstats
path: root/sources/shiboken2
Commit message (Collapse)AuthorAgeFilesLines
* Cleanup version strings for 5.15.2 releasev5.15.2Simo Fält2020-11-121-3/+3
| | | | | | Change-Id: I7329fe88ed77e705c57a4991655600942471f6ae Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Update SmartPointers conversionsRenato Araujo Oliveira Filho2020-10-214-4/+113
| | | | | | | | | | | | | * Updated test to accept base types derived using std::shared_ptr; * Generate new coode to be able to convert smart pointers into shared pointers of base class. Functions that accepts SharedPointer<A> as argument should be able to accept SharedPointer<B> if B is derived from A. Task-number: PYSIDE-1397 Change-Id: I7e5235980daaf4651dad3ab1c880373f1c64e134 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix SmartPointer conversion name registerRenato Araujo Oliveira Filho2020-10-211-11/+30
| | | | | | | Register the correct name for smart pointers. Change-Id: If12701901319b0578602ff5b5ab8eecad820d969 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken2: Fix one more instance of an invalid metatype passed aroundFriedemann Kleint2020-10-211-1/+3
| | | | | | | Add the missing call to decideUsagePattern(). Change-Id: Ibfe07afa3f830cefc953b8702aeca57e2b615f36 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* doc: update versions and comandsCristian Maureira-Fredes2020-10-211-3/+14
| | | | | | | | | | | | | | | | | * add new way of building rst-only documentation * Updating recommended libclang for 5.15 * recommending python 3.5+ * link commercial license * Show videos as grid * changing title of a tutorial to be more specific * add missing step to build only shiboken * add venv as an option before virtualenv * add problem on windows and python 3.8.0 * add section to create a virtual environment * only show titles of tutorials to avoid having a long page Change-Id: Iebb99d2cd776c3d5b72dc44153f325f74a1626cc Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Extend SharedPtr API with std::shared_ptrRenato Araujo Oliveira Filho2020-10-202-49/+26
| | | | | | | | | | | Make sure that we have copy constructor for SharedPtr with derived types. This will be necessary for test SharedPtr implicit conversions. Task-number: PYSIDE-1397 Change-Id: Ic970c84bef025403a0fbef79dce97433254d2f56 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken2/ApiExtractor tests: Avoid detaching of listsFriedemann Kleint2020-10-2022-132/+152
| | | | | | | Use constFirst/Last() instead of first()/last(). Change-Id: I3e7c72e3ab72b86565eea087b470f2a51b2999f8 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Fix testnumericaltypedef failing with Qt 6Friedemann Kleint2020-10-201-6/+6
| | | | | | | | | The test uses "ushort" as a type name, which is apparently pulled from some header with increased language level. Use a real custom name to circumvent this. Change-Id: I6f3ba16d8f25f5b12edcfd53b1397de9f7c1d583 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Fix an assert crash in debug modeFriedemann Kleint2020-10-201-3/+0
| | | | | | | | | | Do not consider RValue-references as invalid types; this causes an assert crash by 556c13f39244b4eb75638cd8f4434167eadf0c98. They are filtered out later. Change-Id: I6c477bb8319aa99ad73ff9a002ec11992a9ac538 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Ensure there are no AbstractMetaType with Invalid usageFriedemann Kleint2020-10-203-4/+14
| | | | | | | | | | Introduce new values for the pattern enum representing template parameters, which were previously invalid and add a missing call to decideUsagePattern(). Change-Id: I7edeb80a67ab1edfe895e96311d54c9128fad5a3 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add some more classes from QtConcurrentFriedemann Kleint2020-10-161-0/+10
| | | | | | | | | This lays the foundation for adding further specializations of QFuture and QFutureWatcher to dependent modules. Task-number: PYSIDE-1202 Change-Id: I82f9940db9d50ced95d4e1388c6460c6efc0469b Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Enable typesystem typedefs across modulesFriedemann Kleint2020-10-1511-9/+212
| | | | | | | | | | | | | | | | | | | Adding a specialization of template type ValueWithUnit from libsample to libother would fail since the SBK index array of libsample would be used with the index from libother for it. Build up the inheritance for typesystem typedefs early on and add a lookup which matches the template specializations found during traversing functions to the type def and the class that is generated for it so that it can be used. As a side effect, special case entries for template specializations can be deleted from the signature mappings since they change to the class name and thus are normal types. Task-number: PYSIDE-1202 Change-Id: I5cc9650f70e9dc975171c80919685ebf5e752749 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Enable setting up inheritance for templates early onFriedemann Kleint2020-10-152-17/+25
| | | | | | | | | | | Split the code adding the specialized template functions from AbstractMetaBuilderPrivate::inheritTemplate() into a separate function. The part setting up the base classes can then be called at an earlier stage so that it is known when traversing the functions. Task-number: PYSIDE-1202 Change-Id: I958d357b78572c9b5130dbe1bf517d2af82a6f1a Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Add a test for typesystem typedefsFriedemann Kleint2020-10-157-0/+161
| | | | | | | | | Mimicks some template which might be used trying to enforce correctness of units by type checking. Task-number: PYSIDE-725 Change-Id: Ia7008d7db5638920eee3d0ef36cc32a63796b98e Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Find all template classes for added functionsFriedemann Kleint2020-10-141-3/+11
| | | | | | Task-number: PYSIDE-1202 Change-Id: I7039b113ffd43289f96f890ca55cb5b9b4607c92 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Some RefactoringsFriedemann Kleint2020-10-147-62/+37
| | | | | | | | | | | | | - AbstractMetaType: Pass TypeEntry to constructor - AbstractMetaType: Return instantiations() by const ref - AbstractMetaClass: Make baseTemplateInstantiations a member instead of a global hash. Simplify the code accordingly. Task-number: PYSIDE-1202 Change-Id: I1a18aa4ff97481af8cb13e8732fe3952c48edb29 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Use an AbstractMetaType for "void"Friedemann Kleint2020-10-139-79/+89
| | | | | | | | | | | | | | Previously, nullptr for an AbstractMetaType meant "void", particularly for function return types. The problem with this is that it causes unexpected crashes when dealing with template types like QFuture<void> due to one of the instantiations of the AbstractMetaType being nullptr. Use an AbstractMetaType based on the existing "void" type entry for this. Task-number: PYSIDE-1202 Change-Id: Ib06035cc7903480fd509f7e927d9114c55d51b62 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* shiboken2: Improve debug output of type entriesFriedemann Kleint2020-10-131-3/+12
| | | | | | | | | | | Don't output the generateCode field in hex after 4761ea81d1789d153ae986be6f749853f5a68332. Output typedef entries of type database. Task-number: PYSIDE-725 Task-number: PYSIDE-1202 Change-Id: Ib194eceedf2764a9c23353f4a833cb1e57a6e359 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* feature_select: finish properties and postpone static propertiesChristian Tismer2020-10-092-1/+4
| | | | | | | | | | | | | | | | Static properties are not easy to support. They need an extra property subtype and support in the meta-class. A problem is that the implementation needs to go deeply into the innards of things and need to use `_PyType_Lookup`. That is hard to circumvent when the limited API is used. Therefore, the current implementation will be it for 5.15 . At most we might add a few missing properties through XML. Task-number: PYSIDE-1019 Change-Id: I56a9eabe5f774c1ff04c149227e06318c8bf4f29 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken2: Recurse to generated base class for baseFriedemann Kleint2020-10-081-2/+9
| | | | | | | | | Skip base classes whose generation was disabled by reject or generate='no'. This can happen for typedef entries. Task-number: PYSIDE-1202 Change-Id: Ie6fac2408a6aa7b3303b4f06e744a2d2405e2a30 Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Rearrange values of enum TypeEntry::CodeGenerationFriedemann Kleint2020-10-086-34/+25
| | | | | | | | | | | | | | | | | | | | TypeEntry::CodeGeneration::GenerateCpp was unused. Consequently, the GenerateAll mask is not needed, either. Replace GenerateCpp and GenerateTargetLang by a generic GenerateCode value. Introduce a new GenerationDisabled value to be able to distinguish a generate='no' XML attribute from a plain rejection. Fix many invalid usages of bool generateCode() testing against the flag value. Use the enum instead of uint for the code generation field. Task-number: PYSIDE-1202 Change-Id: I0aec5bd1ebfb9a50b80d5a187372c4271490e1b3 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Generate extra includes into wrapper headerFriedemann Kleint2020-10-083-8/+18
| | | | | | | | | | For wrapper types, generate the class-related extra includes into the wrapper header since they might be required for it (for example, instantiation type of a typedef typesystem entry). Task-number: PYSIDE-1202 Change-Id: I9f57bdfe54d6273e4a1ffa9570e3352959dea480 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Enable includes and modifications on typedef entriesFriedemann Kleint2020-10-081-5/+18
| | | | | | | | | | | | | Extra includes might be required for the template instantiation type. Add the includes and modifications obtained from parsing the sub-elements to the target entry in endElement(). Complements bfd1de3495b18c0ecc251260442a9a46009861e. Task-number: PYSIDE-725 Task-number: PYSIDE-1202 Change-Id: I71e399879feb641238d4d6035faa3f4c34932a87 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* __feature__: avoid sys._geframe(1) error when embeddingChristian Tismer2020-10-071-1/+3
| | | | | | Change-Id: Ife42d7a3f855816c66dcbd4b8062b72f947510e7 Fixes: PYSIDE-1398 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix leak in static string destruction, addendumChristian Tismer2020-10-061-3/+8
| | | | | | | | | | | | | | | | | | When checking a debug build, refcounting problems showed up. The reason was that somewhere the static strings were treated with normal refcounting. This is easily possible if some string is used in the interpreter: The string becomes interned, maybe before it is used by us, and will be deallocated without our knowledge. We are turning the list of referenced strings into a set. Also, the strings are made immortal by adding one extra count. This way, our set does not need to cope with deletions and will work either way. The final cleanup removes that, anyway. Change-Id: I192ea47f739cc785ea3e354cfb82c5fa5a6eac78 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Fix leak in static string destructionChristian Tismer2020-10-061-5/+12
| | | | | | | | | | | | | | When checking a debug build, refcounting problems showed up. It is unclear where references are lost, at the moment at the strings "__div__" and "__idiv__". It is possible that these strings were already in a destruction list of another module. When turning the list into a set, the problem vanishes, because we no longer know how much references to expect. Because they are not negative, this seems to be ok. Change-Id: I0bc59b83f43becf5ee5f5f19213fc46513041909 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken2: Simplify the export of the generated module init functionFriedemann Kleint2020-10-062-10/+2
| | | | | | | | Replace the macro generated into the code by the one introduced by 430d02db24b95a56ae0acc6a9df6a0effe49da0d. Change-Id: I8e713ff25c180a22569a3ba589d04dca43fdc804 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Generate flags operator methods for QFlags on hidden top level namespaceRenato Araujo Oliveira Filho2020-10-062-12/+16
| | | | | | | | | | Factor out method to write the operator functions and call it for the module wrapper, too. Fixes: PYSIDE-1326 Change-Id: I5b6faf19d253d5828474dec36b454aa20753123c Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Move the annotations for parsing Qt-based headers to shiboken2Friedemann Kleint2020-10-024-5/+26
| | | | | | | | | | | | | | | | | It is one of the lesser known things that any project generating bindings for Qt-based code needs to include pyside2_global.h in order for signals, slots and properties to be recognized, since the annotation macro definitions are in this file. Move the definitions over to shiboken2 to remove the need to include it. [ChangeLog][shiboken2] Projects generating bindings for Qt-based code no longer need to include pyside2_global.h. Change-Id: I531bb7444561ccfc352f3be09ecdf854f9f7dd3d Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Consolidate export/import macrosFriedemann Kleint2020-10-012-17/+18
| | | | | | | | | | | | | | | | | | | For the 3 libraries that need to export symbols, (libshiboken, libpyside, pysidetest), fix up the export/import macros to follow the Qt convention: - Define generic export/import macros LIBSHIBOKEN_EX/IMPORT equivalent to Q_DECL_EX/IMPORT. Remove definitions for the ancient g++ 4.X. - Reuse those in libpyside, pysidetest as PYSIDE_EX/IMPORT and PYSIDETEST_EX/IMPORT. - While building, define some BUILD_ macro indicating export. - Define the _API macros depending on the BUILD_ macro to be export or import, respectively as is done in Qt. Remove the ugly hack in pysidetest that tried to re-use the PYSIDE_API macro. - Brush up the headers a bit. Change-Id: I635891b7eec5a52a1dcf45022f7bfb6a9cfee83f Reviewed-by: Christian Tismer <tismer@stackless.com>
* Fix up the generated flag operator methodsFriedemann Kleint2020-09-301-11/+11
| | | | | | | | Remove space and use reinterpret_cast. Task-number: PYSIDE-1326 Change-Id: I1adfc545c97278eb7da01aec550cb6e2e15945ba Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* shiboken2: Generate functions from invisible namespaces into their parent ↵Friedemann Kleint2020-09-305-1/+18
| | | | | | | | | | | namespaces Add them in ShibokenGenerator::getFunctionGroupsImpl() with some helpers. Fixes: PYSIDE-1075 Change-Id: Ie627c6e12f82e40cdb4f306ddac6b682e77124c5 Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Generate functions from invisible top level namespaces as global ↵Friedemann Kleint2020-09-307-6/+34
| | | | | | | | | | | functions Mainly add those in ShibokenGenerator::getGlobalFunctionGroups() with some adaptions. Task-number: PYSIDE-1075 Change-Id: I6dabac72c204904e76162542b5aa3ea1ac3b56ec Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Refactor handling of invisible top level namespacesFriedemann Kleint2020-09-307-31/+64
| | | | | | | | | | | | | | | | To avoid having to add a ShibokenGenerator::lookForFunctionsInClassesNotToBeGenerated() to fix the function issue, replace ShibokenGenerator::lookForEnumsInClassesNotToBeGenerated() by several helper functions: - Add a list of top level invisible namespace to the generators - Add functions to retrieve enumerations of nested invisible namespaces to AbstractMetaClass with recursion helpers. Task-number: PYSIDE-1075 Change-Id: I421113770e622611caeb221498b872d0a6ba1aeb Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Refactor global enum handling in HeaderGeneratorFriedemann Kleint2020-09-301-16/+13
| | | | | | | | | | | | | | | | Generate the sbk-index values for enums in writeTypeIndexValueLines(AbstractMetaClass *) for invisible namespaces as well instead of adding them to the global enum list. Remove checks for private/protected on global enums as they originate from namespaces. This removes one usage of ShibokenGenerator::lookForFunctionsInClassesNotToBeGenerated() which will be removed in a consecutive change. Task-number: PYSIDE-1075 Change-Id: I9ee7aba20802e9794f371006f9fdbd7ab8d67cab Reviewed-by: Christian Tismer <tismer@stackless.com>
* Add command to build rst documentation onlyCristian Maureira-Fredes2020-09-291-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | Since the process to get the documentation built is to build the whole project, that is too time consuming. Additionally, using qdoc on the Qt API takes a lot of time. This patch introduces the setup.py option called 'build_rst_docs' which skip the general build, and only generates HTML documentation based on all the .rst files we have for shiboken and pyside. To use it: python setup.py build_rst_docs The build will throw warnings related missing directories, and files, which are generated on the 'qdoc' process, but since they are skipped they are not present. Some missing references warnings are skipped due to also come from the qdoc-based step. Task-number: PYSIDE-1106 Fixes: PYSIDE-1390 Change-Id: I4118fd3b64e217717df6cae093138f6951d37094 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken2: Correctly generate final classes with protected methods without ↵Friedemann Kleint2020-09-292-5/+12
| | | | | | | | | | | | protected hack Add a missing check for final class. Amends 170756fa1e5de0ce7ba33521f1eb168d70ad276d. Fixes: PYSIDE-1388 Change-Id: I6b7cd5c9a769838287ac7165bdc2d5ad63b289a1 Reviewed-by: Renato Araujo Oliveira Filho <renato.araujo@kdab.com> Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Consolidate tests for invisible namespacesFriedemann Kleint2020-09-298-45/+37
| | | | | | | | | | | | Move the tests for PYSIDE-1074 from samplenamespace.h to removednamespaces.h. The latter has also a test case for an invisible namespace under a visible namespace besides the invisible top level namespace test. Task-number: PYSIDE-1074 Task-number: PYSIDE-1075 Change-Id: I5d1c6428f6ceadf929063c2c69723a7871173f4e Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Add convenience for indenterFriedemann Kleint2020-09-293-117/+85
| | | | | | | | | Add functions that indent/outdent for usage in a stream statement. Streamline the code accordingly, removing unneeded braces in one case. Change-Id: Iac4a16919eebdb667bbc302b0f937cc03a01c724 Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Change AbstractMetaClass::enums() to return const refFriedemann Kleint2020-09-297-18/+8
| | | | | | | | This allows for removing a few temporary variables and/or qAsConst(). Task-number: PYSIDE-1075 Change-Id: Ib48070950ac682ec66e19af3dc8c0be5bfdffcee Reviewed-by: Christian Tismer <tismer@stackless.com>
* Feature-select: Implement signature-awareness of snake_caseChristian Tismer2020-09-296-4/+82
| | | | | | | | | | | | | | | | | | | | | After implementing selectable features, support from the signature module was quite much missing. It was not clear for some time what to do the best. It turned out to have the smallest impact and runtime penalty to use the Python parser output dictionaries and create copies with snake case naming. That has almost no overhead. Also, it was necessary to augment the internal map_dict with snake_case versions. It may be possible to simplify that map_dict further in another check-in. Remaining is the problem of static properties. This will be tried using the PySide Property objects which can be improved. Change-Id: Ied83ccb197a3c15932c4202b5f1ade772416e17b Task-number: PYSIDE-1019 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* doc: fix more sphinx warningsCristian Maureira-Fredes2020-09-293-4/+4
| | | | | Change-Id: I07a87ad49546534f3492b534b2a2dd4945304de7 Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Fix the tests for enums in removed namespacesFriedemann Kleint2020-09-282-24/+18
| | | | | | | | | Change the formatting for better readability and use the "visible" attribute instead of the deprecated "generate". Task-number: PYSIDE-1075 Change-Id: Ibbb33d2482c1d682f74d2edce2dd7d3bb1a50821 Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: MetaBuilder/ApiExtractor/Generator: Return class/enum/function ↵Friedemann Kleint2020-09-289-38/+31
| | | | | | | | | | lists by const ref This allows for removing a few temporary variables and/or qAsConst(). Task-number: PYSIDE-1075 Change-Id: I0fe3544f0ce4d3a8d56de9c93e300972e0844177 Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Generate properties as fieldsFriedemann Kleint2020-09-2814-42/+258
| | | | | | | | | | | | | | | | - Add an XML attribute specifying whether code is to be generated to the XML properties. - Split the generator functions for field setters and getters apart so that they can be used for generating property setters and getters. - Generate code for all properties from XML when the PySide extension is not used, otherwise only for those with the attribute set. Task-number: PYSIDE-1019 Change-Id: Iab2ba38b90038edc667a233c23c7113fdc6fb438 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Signature: Break the source into multiple filesChristian Tismer2020-09-259-1266/+1549
| | | | | | | | | | | | | | | The signature module has grown groups of rather unrelated topics. In order to reduce the complexity, we break up the source into a number of files. Reason for this change was building support for selectable features, which should not get lost in all the unrelated helper functions. Task-number: PYSIDE-510 Task-number: PYSIDE-1019 Change-Id: I8e22a91db1882f8c5428b8def13bf9f1cea431fb Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* shiboken2: Fix formatting of field getter codeFriedemann Kleint2020-09-241-3/+8
| | | | | | | | Properly indent and join the else if statement. Task-number: PYSIDE-1019 Change-Id: I8d5dc6c84e19b97b55f1ba29094da1e31dc7ca1c Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Remove unused code from AbstractMetaFieldFriedemann Kleint2020-09-242-103/+0
| | | | | | | | | | Remove the getter/setter functions and related code. Apparently this was some early, unfinished attempt at properties. Task-number: PYSIDE-1019 Change-Id: Iff196da7b7bfb7b30b724405405decf36201b259 Reviewed-by: Christian Tismer <tismer@stackless.com>
* Signature: Revert SbkSpecial_Type_Ready to PyType_ReadyChristian Tismer2020-09-245-24/+13
| | | | | | | | | | | | | | | The early signature module tried to minimize the visible changes to the code base. It replaced the `PyType_Ready` call by a special version which did other things as well. We replace that special call by a more intuitive function `InitSignatureStrings` that does exactly that and nothing more. The functionality of the module is unchanged. Change-Id: Ic2f9cd29b0352f0a24daa55b01420c77d103c0b2 Task-number: PYSIDE-510 Reviewed-by: Christian Tismer <tismer@stackless.com>
* shiboken2: Add a way of specifying properties in typesystem XMLFriedemann Kleint2020-09-239-2/+115
| | | | | | | | | | Add a list of TypeSystemProperty to ComplexTypeEntry, parse it from XML and add those properties in AbstractMetaBuilderPrivate::parseQ_Properties(). Task-number: PYSIDE-1019 Change-Id: Idf6ecde7c9de6bf1e56be423921672152e97de70 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>