File indexing completed on 2024-05-19 05:47:17

0001 /****************************************************************************
0002 **
0003 ** Copyright (C) 2016 The Qt Company Ltd.
0004 ** Contact: https://www.qt.io/licensing/
0005 **
0006 ** This file is part of Qt Creator.
0007 **
0008 ** Commercial License Usage
0009 ** Licensees holding valid commercial Qt licenses may use this file in
0010 ** accordance with the commercial license agreement provided with the
0011 ** Software or, alternatively, in accordance with the terms contained in
0012 ** a written agreement between you and The Qt Company. For licensing terms
0013 ** and conditions see https://www.qt.io/terms-conditions. For further
0014 ** information use the contact form at https://www.qt.io/contact-us.
0015 **
0016 ** GNU General Public License Usage
0017 ** Alternatively, this file may be used under the terms of the GNU
0018 ** General Public License version 3 as published by the Free Software
0019 ** Foundation with exceptions as appearing in the file LICENSE.GPL3-EXCEPT
0020 ** included in the packaging of this file. Please review the following
0021 ** information to ensure the GNU General Public License requirements will
0022 ** be met: https://www.gnu.org/licenses/gpl-3.0.html.
0023 **
0024 ****************************************************************************/
0025 
0026 // Include qobjectdefs.h from Qt ...
0027 #include_next <qobjectdefs.h>
0028 
0029 #pragma clang diagnostic push
0030 #pragma clang diagnostic ignored "-Wmacro-redefined"
0031 
0032 // ...and redefine macros for tagging signals/slots
0033 #ifdef signals
0034 #  define signals public __attribute__((annotate("qt_signal")))
0035 #endif
0036 
0037 #ifdef slots
0038 #  define slots __attribute__((annotate("qt_slot")))
0039 #endif
0040 
0041 #ifdef Q_SIGNALS
0042 #  define Q_SIGNALS public __attribute__((annotate("qt_signal")))
0043 #endif
0044 
0045 #ifdef Q_SLOTS
0046 #  define Q_SLOTS __attribute__((annotate("qt_slot")))
0047 #endif
0048 
0049 #ifdef Q_SIGNAL
0050 #  define Q_SIGNAL __attribute__((annotate("qt_signal")))
0051 #endif
0052 
0053 #ifdef Q_SLOT
0054 #  define Q_SLOT __attribute__((annotate("qt_slot")))
0055 #endif
0056 
0057 #pragma clang diagnostic pop