summaryrefslogtreecommitdiffstats
path: root/src/dbus/qdbusintrospection_p.h
Commit message (Collapse)AuthorAgeFilesLines
* QDBusIntrospection: make DiagnosticsReporter safe to useMarc Mutz2024-02-221-1/+4
| | | | | | | | | | | | | Add a virtual destructor to this polymorphic class and disable copying (requires to bring the default ctor back manually, and to export the class nested in an exported class). Amends 248d2103b5ef8f9cf8c1189cb67d78e1b6e741b7. Pick-to: 6.7 Change-Id: I9008e4ecebca34feac6ae92fa026f2673b652ba9 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
* QDBusIntrospection: fix position of Annotation definitionMarc Mutz2024-02-221-12/+12
| | | | | | | | | | | | | | | | | | | | | When 2e8a48c1cdc8547ec47f097a41dd53c641715b77 made Annotations::mapped_type a struct Annotation instead of just QString, it inserted the Annotation definition after the first inline user of Annotations (struct Method). I don't know why this compiled in the first place, but it did, probably because of the re-parse-everything-at-closing-of-class rule, but there's no reason to not move it to before the first users, so do that. Found while trying to make QDBusIntrospection a namespace instead of a struct. Amends 2e8a48c1cdc8547ec47f097a41dd53c641715b77. Pick-to: 6.7 Change-Id: I316cb5e49f3476adc5ff5abb023b9d74303ab640 Reviewed-by: Ivan Solovev <ivan.solovev@qt.io>
* Remove redundant QPair includesAhmad Samir2023-09-061-1/+0
| | | | | | | | Nothing in those files uses QPair; and a local build finished fine without them. Task-number: QTBUG-115841 Change-Id: I669cfecaa9129bce6b31e464826287f138b159db Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QDBusIntrospection: Pass diagnostics reporter to parserIevgenii Meshcheriakov2023-07-061-3/+4
| | | | | | | | | | This would allow to emit parser-related diagnostics from tools like qdbusxml2cpp. Also such tools could stop processing if there were parse errors. Task-number: QTBUG-2597 Change-Id: I573296bb57613d5a443b8c4dbe645b7e82f65adc Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QDBusIntrospection: Add Annotation structIevgenii Meshcheriakov2023-07-061-1/+14
| | | | | | | | | | | | Add a structure for annotation data containing name, value and location information. This is done to be able to emit diagnostics related to annotations that include source location. Task-number: QTBUG-2597 Change-Id: Ie990bcd0a16752b5f44f4314f8d730dd1b1a30b4 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QDBus: Add diagnostics reporting interfaceIevgenii Meshcheriakov2023-07-061-0/+9
| | | | | | | | | | | | | | | | | | | Add an abstract class QDBusIntrospection::DiagnosticsReporter for reporting errors and warnings. Extend QDBusXmlParser to accept optional diagnostics reporter and use it when available. Report unexpected elements as warnings and the rest of problems as errors. This will allow tools like qdbusxml2cpp to show parsing diagnostics using a custom format. While at it, s/D-BUS/D-Bus/a Task-number: QTBUG-2597 Change-Id: Ibec3f5f282cf717d1127eb64c82b4fc695f14a74 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QDBusIntrospection: Add source location fieldsIevgenii Meshcheriakov2023-07-061-0/+13
| | | | | | | | | | | Add source location to the introspection structs so that errors and warning produced by qdbusxml2cpp can be related to the source location. Task-number: QTBUG-2597 Change-Id: I9a6ada45f9c0357dbfb846f13789c5f261e59d55 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Use SPDX license identifiersLucie Gérard2022-05-161-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: Id880c92784c40f3bbde861c0d93f58151c18b9f1 Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Lars Knoll <lars.knoll@qt.io> Reviewed-by: Jörg Bornemann <joerg.bornemann@qt.io>
* Use QList instead of QVector in dbusJarek Kobus2020-06-251-4/+4
| | | | | | | | Omitted type replacement in qDBusParametersForMethod() for now. Task-number: QTBUG-84469 Change-Id: Ieb9fbb30b431c5e4183ad57acd35640e9556bf6c Reviewed-by: Lars Knoll <lars.knoll@qt.io>
* Add qtdbusglobal.h and qtdbusglobal_p.hLars Knoll2016-07-141-1/+1
| | | | | | | | | | | | | | The new modular configuration system requires one global header per module, that is included by all other files in this module. QtDBus already had such a header, but its name (qdbusmacros.h) was not in line with what's being used in all other modules. So add a qtdbusglobal.h header, and turn qdbusmacros.h into a a forwarding header to that new global header file. Change-Id: Ib7eb2484c7b8b588eb89bf3290cb6c1c7c391fe2 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
* Updated license headersJani Heikkinen2016-01-151-14/+20
| | | | | | | | | | | From Qt 5.7 -> LGPL v2.1 isn't an option anymore, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new LGPL header instead of LGPL21 one (in those files which will be under LGPL v3) Change-Id: I046ec3e47b1876cd7b4b0353a576b352e3a946d9 Reviewed-by: Lars Knoll <lars.knoll@theqtcompany.com>
* Remove Q_DECLARE_TYPEINFO that causes a build errorThiago Macieira2015-08-221-1/+0
| | | | | | | | | | ICC doesn't like it qdbusintrospection_p.h(162): error: explicit specialization of class "QTypeInfo<QDBusIntrospection::Argument>" must precede its first use It's used by the QVector in the same class Change-Id: I7de033f80b0e4431b7f1ffff13f958971617b657 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* QtDBus: replace some inefficient QLists with QVectorMarc Mutz2015-07-101-2/+3
| | | | | | | | | | | | | | QDBusIntrospection::Argument and the QPair are larger than a void*, so holding them in QLists is needlessly inefficient. Worse, the code could come to depend on the fragile property of (inefficient) QLists that references to elements therein never are invalidated. Fix by marking the types movable, if not already done, and holding them in QVector instead. Change-Id: I1cf88287cc3a1d87e1fcd5061ed8d6d19d2f0722 Reviewed-by: Alex Blasche <alexander.blasche@theqtcompany.com> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update copyright headersJani Heikkinen2015-02-111-7/+7
| | | | | | | | | | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Outdated header.LGPL removed (use header.LGPL21 instead) Old header.LGPL3 renamed to header.LGPL3-COMM to match actual licensing combination. New header.LGPL-COMM taken in the use file which were using old header.LGPL3 (src/plugins/platforms/android/extract.cpp) Added new header.LGPL3 containing Commercial + LGPLv3 + GPLv2 license combination Change-Id: I6f49b819a8a20cc4f88b794a8f6726d975e8ffbe Reviewed-by: Matti Paaso <matti.paaso@theqtcompany.com>
* Update license headers and add new license filesMatti Paaso2014-09-241-19/+11
| | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 - Removed LICENSE.GPL Change-Id: Iec3406e3eb3f133be549092015cefe33d259a3f2 Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
* Whitespace cleanup: remove trailing whitespaceAxel Waggershauser2013-03-161-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | Remove all trailing whitespace from the following list of files: *.cpp *.h *.conf *.qdoc *.pro *.pri *.mm *.rc *.pl *.qps *.xpm *.txt *README excluding 3rdparty, test-data and auto generated code. Note A): the only non 3rdparty c++-files that still have trailing whitespace after this change are: * src/corelib/codecs/cp949codetbl_p.h * src/corelib/codecs/qjpunicode.cpp * src/corelib/codecs/qbig5codec.cpp * src/corelib/xml/qxmlstream_p.h * src/tools/qdoc/qmlparser/qqmljsgrammar.cpp * src/tools/uic/ui4.cpp * tests/auto/other/qtokenautomaton/tokenizers/* * tests/benchmarks/corelib/tools/qstring/data.cpp * util/lexgen/tokenizer.cpp Note B): in about 30 files some overlapping 'leading tab' and 'TAB character in non-leading whitespace' issues have been fixed to make the sanity bot happy. Plus some general ws-fixes here and there as asked for during review. Change-Id: Ia713113c34d82442d6ce4d93d8b1cf545075d11d Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-181-1/+1
| | | | | Change-Id: Ic804938fc352291d011800d21e549c10acac66fb Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-221-24/+24
| | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If1cc974286d29fd01ec6c19dd4719a67f4c3f00e Reviewed-by: Lars Knoll <lars.knoll@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* QtDBus: added missing QT_NO_DBUS guardsJ-P Nurmi2012-09-141-0/+3
| | | | | | Change-Id: If3bbba7765a4949e5a7aefca063dc56c21c06687 Reviewed-by: Qt Doc Bot <qt_docbot@qt-project.org> Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Fix missing or improper include guard in headersSergio Ahumada2012-09-091-2/+2
| | | | | | | | Use an include guard in headers to ensure the header is not included more than once. Make the header guard match its file name. Change-Id: Icf7d7d4bed91443b3b21ef5d4219dbd260dffef3 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-301-1/+1
| | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: I311e001373776812699d6efc045b5f742890c689 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update contact information in license headers.Jason McDonald2012-01-231-1/+1
| | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I431bbbf76d7c27d8b502f87947675c116994c415 Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Remove dependency of QtDBus onto QtXmlHarald Fernengel2012-01-221-11/+1
| | | | | | | | | Replace the QDom based code in qdbusxmlparser with code using QXmlStreamReader. Task-number: QTBUG-20856 Change-Id: I294e3ebd6faa813c20806be3ae225ac00befb622 Reviewed-by: Thiago Macieira <thiago.macieira@intel.com>
* Update copyright year in license headers.Jason McDonald2012-01-051-1/+1
| | | | | Change-Id: I02f2c620296fcd91d4967d58767ea33fc4e1e7dc Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update licenseheader text in source files for qtbase Qt moduleJyri Tahtela2011-05-241-17/+17
| | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* Initial import from the monolithic Qt.Qt by Nokia2011-04-271-0/+180
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12