/*
 * Interface wrapper code.
 *
 * Generated by SIP 6.6.2
 *
 * Copyright (c) 2022 Riverbank Computing Limited <info@riverbankcomputing.com>
 * 
 * This file is part of PyQt5.
 * 
 * This file may be used under the terms of the GNU General Public License
 * version 3.0 as published by the Free Software Foundation and appearing in
 * the file LICENSE included in the packaging of this file.  Please review the
 * following information to ensure the GNU General Public License version 3.0
 * requirements will be met: http://www.gnu.org/copyleft/gpl.html.
 * 
 * If you do not wish to use this file under the terms of the GPL version 3.0
 * then you may purchase a commercial license.  For more information contact
 * info@riverbankcomputing.com.
 * 
 * This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
 * WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
 */

#include "sipAPIQtCore.h"

#line 169 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qmetaobject.sip"
#include <qmetaobject.h>
#line 29 "/build/pyqt5/src/PyQt5-5.15.7/build/QtCore/sipQtCoreQMetaProperty.cpp"

#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qmetaobject.sip"
#include <qmetaobject.h>
#line 33 "/build/pyqt5/src/PyQt5-5.15.7/build/QtCore/sipQtCoreQMetaProperty.cpp"
#line 28 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qobject.sip"
#include <qobject.h>
#line 36 "/build/pyqt5/src/PyQt5-5.15.7/build/QtCore/sipQtCoreQMetaProperty.cpp"
#line 26 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qvariant.sip"
#include <qvariant.h>
#line 39 "/build/pyqt5/src/PyQt5-5.15.7/build/QtCore/sipQtCoreQMetaProperty.cpp"
#line 142 "/build/pyqt5/src/PyQt5-5.15.7/sip/QtCore/qmetaobject.sip"
#include <qmetaobject.h>
#line 42 "/build/pyqt5/src/PyQt5-5.15.7/build/QtCore/sipQtCoreQMetaProperty.cpp"


PyDoc_STRVAR(doc_QMetaProperty_name, "name(self) -> str");

extern "C" {static PyObject *meth_QMetaProperty_name(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_name(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            const char*sipRes;

            sipRes = sipCpp->name();

            if (sipRes == SIP_NULLPTR)
            {
                Py_INCREF(Py_None);
                return Py_None;
            }

            return PyUnicode_DecodeASCII(sipRes, strlen(sipRes), SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_name, doc_QMetaProperty_name);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_typeName, "typeName(self) -> str");

extern "C" {static PyObject *meth_QMetaProperty_typeName(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_typeName(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            const char*sipRes;

            sipRes = sipCpp->typeName();

            if (sipRes == SIP_NULLPTR)
            {
                Py_INCREF(Py_None);
                return Py_None;
            }

            return PyUnicode_DecodeASCII(sipRes, strlen(sipRes), SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_typeName, doc_QMetaProperty_typeName);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_type, "type(self) -> QVariant.Type");

extern "C" {static PyObject *meth_QMetaProperty_type(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_type(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
             ::QVariant::Type sipRes;

            sipRes = sipCpp->type();

            return sipConvertFromEnum(static_cast<int>(sipRes), sipType_QVariant_Type);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_type, doc_QMetaProperty_type);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isReadable, "isReadable(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isReadable(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isReadable(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isReadable();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isReadable, doc_QMetaProperty_isReadable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isWritable, "isWritable(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isWritable(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isWritable(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isWritable();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isWritable, doc_QMetaProperty_isWritable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isDesignable, "isDesignable(self, object: QObject = None) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isDesignable(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isDesignable(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QObject* a0 = 0;
        const  ::QMetaProperty *sipCpp;

        static const char *sipKwdList[] = {
            sipName_object,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "B|J8", &sipSelf, sipType_QMetaProperty, &sipCpp, sipType_QObject, &a0))
        {
            bool sipRes;

            sipRes = sipCpp->isDesignable(a0);

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isDesignable, doc_QMetaProperty_isDesignable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isScriptable, "isScriptable(self, object: QObject = None) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isScriptable(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isScriptable(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QObject* a0 = 0;
        const  ::QMetaProperty *sipCpp;

        static const char *sipKwdList[] = {
            sipName_object,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "B|J8", &sipSelf, sipType_QMetaProperty, &sipCpp, sipType_QObject, &a0))
        {
            bool sipRes;

            sipRes = sipCpp->isScriptable(a0);

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isScriptable, doc_QMetaProperty_isScriptable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isStored, "isStored(self, object: QObject = None) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isStored(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isStored(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QObject* a0 = 0;
        const  ::QMetaProperty *sipCpp;

        static const char *sipKwdList[] = {
            sipName_object,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "B|J8", &sipSelf, sipType_QMetaProperty, &sipCpp, sipType_QObject, &a0))
        {
            bool sipRes;

            sipRes = sipCpp->isStored(a0);

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isStored, doc_QMetaProperty_isStored);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isFlagType, "isFlagType(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isFlagType(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isFlagType(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isFlagType();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isFlagType, doc_QMetaProperty_isFlagType);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isEnumType, "isEnumType(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isEnumType(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isEnumType(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isEnumType();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isEnumType, doc_QMetaProperty_isEnumType);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_enumerator, "enumerator(self) -> QMetaEnum");

extern "C" {static PyObject *meth_QMetaProperty_enumerator(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_enumerator(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
             ::QMetaEnum*sipRes;

            sipRes = new  ::QMetaEnum(sipCpp->enumerator());

            return sipConvertFromNewType(sipRes,sipType_QMetaEnum,SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_enumerator, doc_QMetaProperty_enumerator);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_read, "read(self, QObject) -> Any");

extern "C" {static PyObject *meth_QMetaProperty_read(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_read(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QObject* a0;
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8", &sipSelf, sipType_QMetaProperty, &sipCpp, sipType_QObject, &a0))
        {
             ::QVariant*sipRes;

            sipRes = new  ::QVariant(sipCpp->read(a0));

            return sipConvertFromNewType(sipRes,sipType_QVariant,SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_read, doc_QMetaProperty_read);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_write, "write(self, QObject, Any) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_write(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_write(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
         ::QObject* a0;
        const  ::QVariant* a1;
        int a1State = 0;
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8J1", &sipSelf, sipType_QMetaProperty, &sipCpp, sipType_QObject, &a0, sipType_QVariant, &a1, &a1State))
        {
            bool sipRes;

            sipRes = sipCpp->write(a0,*a1);
            sipReleaseType(const_cast< ::QVariant *>(a1), sipType_QVariant, a1State);

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_write, doc_QMetaProperty_write);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_reset, "reset(self, QObject) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_reset(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_reset(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
         ::QObject* a0;
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "BJ8", &sipSelf, sipType_QMetaProperty, &sipCpp, sipType_QObject, &a0))
        {
            bool sipRes;

            sipRes = sipCpp->reset(a0);

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_reset, doc_QMetaProperty_reset);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_hasStdCppSet, "hasStdCppSet(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_hasStdCppSet(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_hasStdCppSet(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->hasStdCppSet();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_hasStdCppSet, doc_QMetaProperty_hasStdCppSet);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isValid, "isValid(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isValid(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isValid(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isValid();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isValid, doc_QMetaProperty_isValid);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isResettable, "isResettable(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isResettable(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isResettable(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isResettable();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isResettable, doc_QMetaProperty_isResettable);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isUser, "isUser(self, object: QObject = None) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isUser(PyObject *, PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isUser(PyObject *sipSelf, PyObject *sipArgs, PyObject *sipKwds)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QObject* a0 = 0;
        const  ::QMetaProperty *sipCpp;

        static const char *sipKwdList[] = {
            sipName_object,
        };

        if (sipParseKwdArgs(&sipParseErr, sipArgs, sipKwds, sipKwdList, SIP_NULLPTR, "B|J8", &sipSelf, sipType_QMetaProperty, &sipCpp, sipType_QObject, &a0))
        {
            bool sipRes;

            sipRes = sipCpp->isUser(a0);

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isUser, doc_QMetaProperty_isUser);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_userType, "userType(self) -> int");

extern "C" {static PyObject *meth_QMetaProperty_userType(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_userType(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            int sipRes;

            sipRes = sipCpp->userType();

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_userType, doc_QMetaProperty_userType);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_hasNotifySignal, "hasNotifySignal(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_hasNotifySignal(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_hasNotifySignal(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->hasNotifySignal();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_hasNotifySignal, doc_QMetaProperty_hasNotifySignal);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_notifySignal, "notifySignal(self) -> QMetaMethod");

extern "C" {static PyObject *meth_QMetaProperty_notifySignal(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_notifySignal(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
             ::QMetaMethod*sipRes;

            sipRes = new  ::QMetaMethod(sipCpp->notifySignal());

            return sipConvertFromNewType(sipRes,sipType_QMetaMethod,SIP_NULLPTR);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_notifySignal, doc_QMetaProperty_notifySignal);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_notifySignalIndex, "notifySignalIndex(self) -> int");

extern "C" {static PyObject *meth_QMetaProperty_notifySignalIndex(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_notifySignalIndex(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            int sipRes;

            sipRes = sipCpp->notifySignalIndex();

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_notifySignalIndex, doc_QMetaProperty_notifySignalIndex);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_propertyIndex, "propertyIndex(self) -> int");

extern "C" {static PyObject *meth_QMetaProperty_propertyIndex(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_propertyIndex(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            int sipRes;

            sipRes = sipCpp->propertyIndex();

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_propertyIndex, doc_QMetaProperty_propertyIndex);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isConstant, "isConstant(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isConstant(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isConstant(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isConstant();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isConstant, doc_QMetaProperty_isConstant);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isFinal, "isFinal(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isFinal(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isFinal(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isFinal();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isFinal, doc_QMetaProperty_isFinal);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_relativePropertyIndex, "relativePropertyIndex(self) -> int");

extern "C" {static PyObject *meth_QMetaProperty_relativePropertyIndex(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_relativePropertyIndex(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            int sipRes;

            sipRes = sipCpp->relativePropertyIndex();

            return PyLong_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_relativePropertyIndex, doc_QMetaProperty_relativePropertyIndex);

    return SIP_NULLPTR;
}


PyDoc_STRVAR(doc_QMetaProperty_isRequired, "isRequired(self) -> bool");

extern "C" {static PyObject *meth_QMetaProperty_isRequired(PyObject *, PyObject *);}
static PyObject *meth_QMetaProperty_isRequired(PyObject *sipSelf, PyObject *sipArgs)
{
    PyObject *sipParseErr = SIP_NULLPTR;

    {
        const  ::QMetaProperty *sipCpp;

        if (sipParseArgs(&sipParseErr, sipArgs, "B", &sipSelf, sipType_QMetaProperty, &sipCpp))
        {
            bool sipRes;

            sipRes = sipCpp->isRequired();

            return PyBool_FromLong(sipRes);
        }
    }

    sipNoMethod(sipParseErr, sipName_QMetaProperty, sipName_isRequired, doc_QMetaProperty_isRequired);

    return SIP_NULLPTR;
}


/* Call the instance's destructor. */
extern "C" {static void release_QMetaProperty(void *, int);}
static void release_QMetaProperty(void *sipCppV, int)
{
    delete reinterpret_cast< ::QMetaProperty *>(sipCppV);
}


extern "C" {static void *array_QMetaProperty(Py_ssize_t);}
static void *array_QMetaProperty(Py_ssize_t sipNrElem)
{
    return new  ::QMetaProperty[sipNrElem];
}


extern "C" {static void array_delete_QMetaProperty(void *);}
static void array_delete_QMetaProperty(void *sipCpp)
{
    delete[] reinterpret_cast< ::QMetaProperty *>(sipCpp);
}


extern "C" {static void assign_QMetaProperty(void *, Py_ssize_t, void *);}
static void assign_QMetaProperty(void *sipDst, Py_ssize_t sipDstIdx, void *sipSrc)
{
    reinterpret_cast< ::QMetaProperty *>(sipDst)[sipDstIdx] = *reinterpret_cast< ::QMetaProperty *>(sipSrc);
}


extern "C" {static void *copy_QMetaProperty(const void *, Py_ssize_t);}
static void *copy_QMetaProperty(const void *sipSrc, Py_ssize_t sipSrcIdx)
{
    return new  ::QMetaProperty(reinterpret_cast<const  ::QMetaProperty *>(sipSrc)[sipSrcIdx]);
}


extern "C" {static void dealloc_QMetaProperty(sipSimpleWrapper *);}
static void dealloc_QMetaProperty(sipSimpleWrapper *sipSelf)
{
    if (sipIsOwnedByPython(sipSelf))
    {
        release_QMetaProperty(sipGetAddress(sipSelf), 0);
    }
}


extern "C" {static void *init_type_QMetaProperty(sipSimpleWrapper *, PyObject *, PyObject *, PyObject **, PyObject **, PyObject **);}
static void *init_type_QMetaProperty(sipSimpleWrapper *, PyObject *sipArgs, PyObject *sipKwds, PyObject **sipUnused, PyObject **, PyObject **sipParseErr)
{
     ::QMetaProperty *sipCpp = SIP_NULLPTR;

    {
        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, sipUnused, ""))
        {
            sipCpp = new  ::QMetaProperty();

            return sipCpp;
        }
    }

    {
        const  ::QMetaProperty* a0;

        if (sipParseKwdArgs(sipParseErr, sipArgs, sipKwds, SIP_NULLPTR, sipUnused, "J9", sipType_QMetaProperty, &a0))
        {
            sipCpp = new  ::QMetaProperty(*a0);

            return sipCpp;
        }
    }

    return SIP_NULLPTR;
}


static PyMethodDef methods_QMetaProperty[] = {
    {sipName_enumerator, meth_QMetaProperty_enumerator, METH_VARARGS, doc_QMetaProperty_enumerator},
    {sipName_hasNotifySignal, meth_QMetaProperty_hasNotifySignal, METH_VARARGS, doc_QMetaProperty_hasNotifySignal},
    {sipName_hasStdCppSet, meth_QMetaProperty_hasStdCppSet, METH_VARARGS, doc_QMetaProperty_hasStdCppSet},
    {sipName_isConstant, meth_QMetaProperty_isConstant, METH_VARARGS, doc_QMetaProperty_isConstant},
    {sipName_isDesignable, SIP_MLMETH_CAST(meth_QMetaProperty_isDesignable), METH_VARARGS|METH_KEYWORDS, doc_QMetaProperty_isDesignable},
    {sipName_isEnumType, meth_QMetaProperty_isEnumType, METH_VARARGS, doc_QMetaProperty_isEnumType},
    {sipName_isFinal, meth_QMetaProperty_isFinal, METH_VARARGS, doc_QMetaProperty_isFinal},
    {sipName_isFlagType, meth_QMetaProperty_isFlagType, METH_VARARGS, doc_QMetaProperty_isFlagType},
    {sipName_isReadable, meth_QMetaProperty_isReadable, METH_VARARGS, doc_QMetaProperty_isReadable},
    {sipName_isRequired, meth_QMetaProperty_isRequired, METH_VARARGS, doc_QMetaProperty_isRequired},
    {sipName_isResettable, meth_QMetaProperty_isResettable, METH_VARARGS, doc_QMetaProperty_isResettable},
    {sipName_isScriptable, SIP_MLMETH_CAST(meth_QMetaProperty_isScriptable), METH_VARARGS|METH_KEYWORDS, doc_QMetaProperty_isScriptable},
    {sipName_isStored, SIP_MLMETH_CAST(meth_QMetaProperty_isStored), METH_VARARGS|METH_KEYWORDS, doc_QMetaProperty_isStored},
    {sipName_isUser, SIP_MLMETH_CAST(meth_QMetaProperty_isUser), METH_VARARGS|METH_KEYWORDS, doc_QMetaProperty_isUser},
    {sipName_isValid, meth_QMetaProperty_isValid, METH_VARARGS, doc_QMetaProperty_isValid},
    {sipName_isWritable, meth_QMetaProperty_isWritable, METH_VARARGS, doc_QMetaProperty_isWritable},
    {sipName_name, meth_QMetaProperty_name, METH_VARARGS, doc_QMetaProperty_name},
    {sipName_notifySignal, meth_QMetaProperty_notifySignal, METH_VARARGS, doc_QMetaProperty_notifySignal},
    {sipName_notifySignalIndex, meth_QMetaProperty_notifySignalIndex, METH_VARARGS, doc_QMetaProperty_notifySignalIndex},
    {sipName_propertyIndex, meth_QMetaProperty_propertyIndex, METH_VARARGS, doc_QMetaProperty_propertyIndex},
    {sipName_read, meth_QMetaProperty_read, METH_VARARGS, doc_QMetaProperty_read},
    {sipName_relativePropertyIndex, meth_QMetaProperty_relativePropertyIndex, METH_VARARGS, doc_QMetaProperty_relativePropertyIndex},
    {sipName_reset, meth_QMetaProperty_reset, METH_VARARGS, doc_QMetaProperty_reset},
    {sipName_type, meth_QMetaProperty_type, METH_VARARGS, doc_QMetaProperty_type},
    {sipName_typeName, meth_QMetaProperty_typeName, METH_VARARGS, doc_QMetaProperty_typeName},
    {sipName_userType, meth_QMetaProperty_userType, METH_VARARGS, doc_QMetaProperty_userType},
    {sipName_write, meth_QMetaProperty_write, METH_VARARGS, doc_QMetaProperty_write}
};

PyDoc_STRVAR(doc_QMetaProperty, "\1QMetaProperty()\n"
"QMetaProperty(QMetaProperty)");


static pyqt5ClassPluginDef plugin_QMetaProperty = {
    SIP_NULLPTR,
    0,
    SIP_NULLPTR,
    SIP_NULLPTR
};


sipClassTypeDef sipTypeDef_QtCore_QMetaProperty = {
    {
        -1,
        SIP_NULLPTR,
        SIP_NULLPTR,
        SIP_TYPE_SUPER_INIT|SIP_TYPE_LIMITED_API|SIP_TYPE_CLASS,
        sipNameNr_QMetaProperty,
        SIP_NULLPTR,
        &plugin_QMetaProperty
    },
    {
        sipNameNr_QMetaProperty,
        {0, 0, 1},
        27, methods_QMetaProperty,
        0, SIP_NULLPTR,
        0, SIP_NULLPTR,
        {SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR, SIP_NULLPTR},
    },
    doc_QMetaProperty,
    -1,
    sipNameNr_sip_simplewrapper,
    SIP_NULLPTR,
    SIP_NULLPTR,
    init_type_QMetaProperty,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    dealloc_QMetaProperty,
    assign_QMetaProperty,
    array_QMetaProperty,
    copy_QMetaProperty,
    release_QMetaProperty,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    SIP_NULLPTR,
    array_delete_QMetaProperty,
    sizeof ( ::QMetaProperty),
};
