aboutsummaryrefslogtreecommitdiffstats
path: root/tools/qtpy2cpp_lib/visitor.py
Commit message (Collapse)AuthorAgeFilesLines
* Move qtpy2cpp to sources/pyside-toolsFriedemann Kleint2022-09-021-443/+0
| | | | | | | | Preparing the entry point. Task-number: PYSIDE-1945 Change-Id: I4a2fbe6d35b4f97bf0ab7cfc2085b86a40bc2558 Reviewed-by: Christian Tismer <tismer@stackless.com>
* qtpy2cpp: Further improvementsFriedemann Kleint2022-06-211-2/+3
| | | | | | | | | | | | | - Fix indentation of context manager scopes - Fix indentation of augmented assignments - Handle range based for over variable - Remove FIXME comment for function types - Write base name in header comment for testability Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: Ib30af672e56434c30d98f8dce2cb73ef0a1512a8 Reviewed-by: Christian Tismer <tismer@stackless.com>
* qtpy2cpp: Handle "augmented assignment" (operator +=, -=)Friedemann Kleint2022-06-151-7/+24
| | | | | | | | | As a drive-by add missing operators -, /. Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: I6d43d5e03930232ebba1d0d6308f70d03fafde03 Reviewed-by: Christian Tismer <tismer@stackless.com>
* qtpy2cpp: Qualify the Qt namespace with "::" instead of "->"Friedemann Kleint2022-06-101-1/+5
| | | | | | | Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: I1be5386df81bd548a72b86dfee1474a6c8b941a2 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* qtpy2cpp: Handle indexesFriedemann Kleint2022-06-101-0/+10
| | | | | | | Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: Idb4f34931bc00e5677e95faa231b5dbf071dfb70 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* qtpy2cpp: Improve function definitionsFriedemann Kleint2022-06-041-10/+43
| | | | | | | | | | | | | | | - Handle type annotations in function definitions with some heuristics how to pass typical Qt classes. - Fix the formatting of default parameters. - Handle Slot decorators. - Ignore the above elements later when the parser traverses them Introduce concenience functions for checking visitor scope. Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: I489088025b0d6a76d43da6154af4db58b748adbe Reviewed-by: Christian Tismer <tismer@stackless.com>
* qtpy2cpp: Handle context managersFriedemann Kleint2022-06-031-0/+20
| | | | | | | Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: I70dd4c139ef690964f1a65c6d995a0112d3dcfa3 Reviewed-by: Christian Tismer <tismer@stackless.com>
* qtpy2cpp: Move Qt class information to a separate fileFriedemann Kleint2022-06-031-10/+2
| | | | | | | | | Add some flags for more fine-grained information. Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: Ib195284d1c9ee4d50fe8bce25f96c499967262e7 Reviewed-by: Christian Tismer <tismer@stackless.com>
* qtpy2cpp: Handle chained function calls a()->b()->c()Friedemann Kleint2022-06-011-2/+33
| | | | | | | Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: I41d32000d4221f604fe87dd36ece3f287e9b1a30 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* qtpy2cpp: Handle main()Friedemann Kleint2022-06-011-0/+25
| | | | | | | | | | Check for the if __name__ == '__main__' statement and convert that into a C main function. Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: I75e38aca9ebc9dc0f79dc97a18e61c28b6b17505 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* qtpy2cpp: Improve construction of Qt classesFriedemann Kleint2022-06-011-2/+47
| | | | | | | | | | | | | Check if a variable assignment is likely a construction of a Qt class. Add some smartness there, construct some classes on stack and add "new" for the others. Store stack variables per function scope in a list for future use. Task-number: PYSIDE-1945 Pick-to: 6.3 Change-Id: Id71d1a8c14e57f3bfaf32fc202b260d390589382 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* qtpy2cpp: Add return tokenFriedemann Kleint2022-06-011-2/+7
| | | | | | | | | | | As a drive-by remove some new lines produced which were apparently necessary due to the missing handling of return statements. Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: Id8187b599e3163c2b6e5359c4a79214f70fe4b1d Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* qtpy2cpp: Improve error handlingFriedemann Kleint2022-06-011-7/+10
| | | | | | | | | | | Format messages in a file:line: format. Fix an error causing an exception. Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: I16a1fd6daa96521adfe53f23090f61fbbc581e84 Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io> Reviewed-by: Shyamnath Premnadh <Shyamnath.Premnadh@qt.io>
* qtpy2cpp: Add more operatorsFriedemann Kleint2022-05-311-2/+38
| | | | | | | Pick-to: 6.3 Task-number: PYSIDE-1945 Change-Id: I802ded1388918a8f5b72f8f9382a052e09e936ee Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* Use SPDX license identifiersLucie Gérard2022-05-271-38/+2
| | | | | | | | | | | Replace the current license disclaimer in files by a SPDX-License-Identifier. Files that have to be modified by hand are modified. License files are organized under LICENSES directory. Task-number: QTBUG-67283 Change-Id: I065150015bdb84a3096b5b39c061cf0a20ab637d Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Cristian Maureira-Fredes <cristian.maureira-fredes@qt.io>
* flake8: fix styling issues in tools/Cristián Maureira-Fredes2022-04-021-5/+2
| | | | | | Change-Id: I8cbf5d521900df4f55abf8f68997f8a71437f722 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
* Add Python to Qt/C++ conversion toolFriedemann Kleint2020-03-051-0/+260
Change-Id: I275e776248bd55c3c38f5fedd83088bf475a1cf9 Reviewed-by: Christian Tismer <tismer@stackless.com>