/****************************************************************************
** Meta object code from reading C++ file 'addressformat.h'
**
** Created by: The Qt Meta Object Compiler version 69 (Qt 6.11.0)
**
** WARNING! All changes made in this file will be lost!
*****************************************************************************/

#include "../../../../kcontacts-6.26.0/src/addressformat.h"
#include <QtCore/qmetatype.h>
#include <QtCore/QList>

#include <QtCore/qtmochelpers.h>

#include <memory>


#include <QtCore/qxptype_traits.h>
#if !defined(Q_MOC_OUTPUT_REVISION)
#error "The header file 'addressformat.h' doesn't include <QObject>."
#elif Q_MOC_OUTPUT_REVISION != 69
#error "This file was generated using the moc from 6.11.0. It"
#error "cannot be used with the include files from this version of Qt."
#error "(The moc has changed too much.)"
#endif

#ifndef Q_CONSTINIT
#define Q_CONSTINIT
#endif

QT_WARNING_PUSH
QT_WARNING_DISABLE_DEPRECATED
QT_WARNING_DISABLE_GCC("-Wuseless-cast")
namespace {
struct qt_meta_tag_ZN9KContacts20AddressFormatElementE_t {};
} // unnamed namespace

template <> constexpr inline auto KContacts::AddressFormatElement::qt_create_metaobjectdata<qt_meta_tag_ZN9KContacts20AddressFormatElementE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "KContacts::AddressFormatElement",
        "isField",
        "field",
        "KContacts::AddressFormatField",
        "isLiteral",
        "literal",
        "isSeparator"
    };

    QtMocHelpers::UintData qt_methods {
    };
    QtMocHelpers::UintData qt_properties {
        // property 'isField'
        QtMocHelpers::PropertyData<bool>(1, QMetaType::Bool, QMC::DefaultPropertyFlags),
        // property 'field'
        QtMocHelpers::PropertyData<KContacts::AddressFormatField>(2, 0x80000000 | 3, QMC::DefaultPropertyFlags | QMC::EnumOrFlag),
        // property 'isLiteral'
        QtMocHelpers::PropertyData<bool>(4, QMetaType::Bool, QMC::DefaultPropertyFlags),
        // property 'literal'
        QtMocHelpers::PropertyData<QString>(5, QMetaType::QString, QMC::DefaultPropertyFlags),
        // property 'isSeparator'
        QtMocHelpers::PropertyData<bool>(6, QMetaType::Bool, QMC::DefaultPropertyFlags),
    };
    QtMocHelpers::UintData qt_enums {
    };
    return QtMocHelpers::metaObjectData<AddressFormatElement, qt_meta_tag_ZN9KContacts20AddressFormatElementE_t>(QMC::PropertyAccessInStaticMetaCall, qt_stringData,
            qt_methods, qt_properties, qt_enums);
}
Q_CONSTINIT static const QMetaObject::SuperData qt_meta_extradata_ZN9KContacts20AddressFormatElementE[] = {
    QMetaObject::SuperData::link<KContacts::staticMetaObject>(),
    nullptr
};

Q_CONSTINIT const QMetaObject KContacts::AddressFormatElement::staticMetaObject = { {
    nullptr,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN9KContacts20AddressFormatElementE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN9KContacts20AddressFormatElementE_t>.data,
    qt_static_metacall,
    qt_meta_extradata_ZN9KContacts20AddressFormatElementE,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN9KContacts20AddressFormatElementE_t>.metaTypes,
    nullptr
} };

void KContacts::AddressFormatElement::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = reinterpret_cast<AddressFormatElement *>(_o);
    if (_c == QMetaObject::ReadProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: *reinterpret_cast<bool*>(_v) = _t->isField(); break;
        case 1: *reinterpret_cast<KContacts::AddressFormatField*>(_v) = _t->field(); break;
        case 2: *reinterpret_cast<bool*>(_v) = _t->isLiteral(); break;
        case 3: *reinterpret_cast<QString*>(_v) = _t->literal(); break;
        case 4: *reinterpret_cast<bool*>(_v) = _t->isSeparator(); break;
        default: break;
        }
    }
}
namespace {
struct qt_meta_tag_ZN9KContacts13AddressFormatE_t {};
} // unnamed namespace

template <> constexpr inline auto KContacts::AddressFormat::qt_create_metaobjectdata<qt_meta_tag_ZN9KContacts13AddressFormatE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "KContacts::AddressFormat",
        "country",
        "elements",
        "QList<KContacts::AddressFormatElement>",
        "requiredFields",
        "KContacts::AddressFormatFields",
        "usedFields",
        "upperCaseFields",
        "postalCodeRegularExpression"
    };

    QtMocHelpers::UintData qt_methods {
    };
    QtMocHelpers::UintData qt_properties {
        // property 'country'
        QtMocHelpers::PropertyData<QString>(1, QMetaType::QString, QMC::DefaultPropertyFlags),
        // property 'elements'
        QtMocHelpers::PropertyData<QList<KContacts::AddressFormatElement>>(2, 0x80000000 | 3, QMC::DefaultPropertyFlags | QMC::EnumOrFlag),
        // property 'requiredFields'
        QtMocHelpers::PropertyData<KContacts::AddressFormatFields>(4, 0x80000000 | 5, QMC::DefaultPropertyFlags | QMC::EnumOrFlag),
        // property 'usedFields'
        QtMocHelpers::PropertyData<KContacts::AddressFormatFields>(6, 0x80000000 | 5, QMC::DefaultPropertyFlags | QMC::EnumOrFlag),
        // property 'upperCaseFields'
        QtMocHelpers::PropertyData<KContacts::AddressFormatFields>(7, 0x80000000 | 5, QMC::DefaultPropertyFlags | QMC::EnumOrFlag),
        // property 'postalCodeRegularExpression'
        QtMocHelpers::PropertyData<QString>(8, QMetaType::QString, QMC::DefaultPropertyFlags),
    };
    QtMocHelpers::UintData qt_enums {
    };
    return QtMocHelpers::metaObjectData<AddressFormat, qt_meta_tag_ZN9KContacts13AddressFormatE_t>(QMC::PropertyAccessInStaticMetaCall, qt_stringData,
            qt_methods, qt_properties, qt_enums);
}
Q_CONSTINIT static const QMetaObject::SuperData qt_meta_extradata_ZN9KContacts13AddressFormatE[] = {
    QMetaObject::SuperData::link<KContacts::staticMetaObject>(),
    nullptr
};

Q_CONSTINIT const QMetaObject KContacts::AddressFormat::staticMetaObject = { {
    nullptr,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN9KContacts13AddressFormatE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN9KContacts13AddressFormatE_t>.data,
    qt_static_metacall,
    qt_meta_extradata_ZN9KContacts13AddressFormatE,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN9KContacts13AddressFormatE_t>.metaTypes,
    nullptr
} };

void KContacts::AddressFormat::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = reinterpret_cast<AddressFormat *>(_o);
    if (_c == QMetaObject::ReadProperty) {
        void *_v = _a[0];
        switch (_id) {
        case 0: *reinterpret_cast<QString*>(_v) = _t->country(); break;
        case 1: *reinterpret_cast<QList<KContacts::AddressFormatElement>*>(_v) = _t->elementsForQml(); break;
        case 2: *reinterpret_cast<KContacts::AddressFormatFields*>(_v) = _t->requiredFields(); break;
        case 3: *reinterpret_cast<KContacts::AddressFormatFields*>(_v) = _t->usedFields(); break;
        case 4: *reinterpret_cast<KContacts::AddressFormatFields*>(_v) = _t->upperCaseFields(); break;
        case 5: *reinterpret_cast<QString*>(_v) = _t->postalCodeRegularExpression(); break;
        default: break;
        }
    }
}
namespace {
struct qt_meta_tag_ZN9KContacts23AddressFormatRepositoryE_t {};
} // unnamed namespace

template <> constexpr inline auto KContacts::AddressFormatRepository::qt_create_metaobjectdata<qt_meta_tag_ZN9KContacts23AddressFormatRepositoryE_t>()
{
    namespace QMC = QtMocConstants;
    QtMocHelpers::StringRefStorage qt_stringData {
        "KContacts::AddressFormatRepository",
        "formatForCountry",
        "KContacts::AddressFormat",
        "",
        "countryCode",
        "KContacts::AddressFormatScriptPreference",
        "scriptPref",
        "KContacts::AddressFormatPreference",
        "formatPref"
    };

    QtMocHelpers::UintData qt_methods {
        // Method 'formatForCountry'
        QtMocHelpers::MethodData<KContacts::AddressFormat(const QString &, KContacts::AddressFormatScriptPreference, KContacts::AddressFormatPreference)>(1, 3, QMC::AccessPublic, 0x80000000 | 2, {{
            { QMetaType::QString, 4 }, { 0x80000000 | 5, 6 }, { 0x80000000 | 7, 8 },
        }}),
        // Method 'formatForCountry'
        QtMocHelpers::MethodData<KContacts::AddressFormat(const QString &, KContacts::AddressFormatScriptPreference)>(1, 3, QMC::AccessPublic | QMC::MethodCloned, 0x80000000 | 2, {{
            { QMetaType::QString, 4 }, { 0x80000000 | 5, 6 },
        }}),
    };
    QtMocHelpers::UintData qt_properties {
    };
    QtMocHelpers::UintData qt_enums {
    };
    return QtMocHelpers::metaObjectData<AddressFormatRepository, qt_meta_tag_ZN9KContacts23AddressFormatRepositoryE_t>(QMC::PropertyAccessInStaticMetaCall, qt_stringData,
            qt_methods, qt_properties, qt_enums);
}
Q_CONSTINIT const QMetaObject KContacts::AddressFormatRepository::staticMetaObject = { {
    nullptr,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN9KContacts23AddressFormatRepositoryE_t>.stringdata,
    qt_staticMetaObjectStaticContent<qt_meta_tag_ZN9KContacts23AddressFormatRepositoryE_t>.data,
    qt_static_metacall,
    nullptr,
    qt_staticMetaObjectRelocatingContent<qt_meta_tag_ZN9KContacts23AddressFormatRepositoryE_t>.metaTypes,
    nullptr
} };

void KContacts::AddressFormatRepository::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    auto *_t = reinterpret_cast<AddressFormatRepository *>(_o);
    if (_c == QMetaObject::InvokeMetaMethod) {
        switch (_id) {
        case 0: { KContacts::AddressFormat _r = _t->formatForCountry((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<KContacts::AddressFormatScriptPreference>>(_a[2])),(*reinterpret_cast<std::add_pointer_t<KContacts::AddressFormatPreference>>(_a[3])));
            if (_a[0]) *reinterpret_cast<KContacts::AddressFormat*>(_a[0]) = std::move(_r); }  break;
        case 1: { KContacts::AddressFormat _r = _t->formatForCountry((*reinterpret_cast<std::add_pointer_t<QString>>(_a[1])),(*reinterpret_cast<std::add_pointer_t<KContacts::AddressFormatScriptPreference>>(_a[2])));
            if (_a[0]) *reinterpret_cast<KContacts::AddressFormat*>(_a[0]) = std::move(_r); }  break;
        default: ;
        }
    }
}
QT_WARNING_POP
