/* This file is autogenerated. DO NOT CHANGE. All changes will be lost */

#include "fieldindexrange.qpb.h"
#include <QProtobufSerializer>

namespace qtprotobufnamespace::tests {
FieldIndexTest1Message::~FieldIndexTest1Message() = default;

static constexpr struct {
    QtProtobufPrivate::QProtobufPropertyOrdering::Data data;
    const std::array<uint, 5> qt_protobuf_FieldIndexTest1Message_uint_data;
    const char qt_protobuf_FieldIndexTest1Message_char_data[60];
} qt_protobuf_FieldIndexTest1Message_metadata {
    // data
    {
        0, /* = version */
        1, /* = num fields */
        2, /* = field number offset */
        3, /* = property index offset */
        4, /* = field flags offset */
        48, /* = message full name length */
    },
    // uint_data
    {
        // JSON name offsets:
        49, /* = testField */
        59, /* = end-of-string-marker */
        // Field numbers:
        31, /* = testField */
        // Property indices:
        0, /* = testField */
        // Field flags:
        QtProtobufPrivate::NoFlags, /* = testField */
    },
    // char_data
    /* metadata char_data: */
    "qtprotobufnamespace.tests.FieldIndexTest1Message\0" /* = full message name */
    /* field char_data: */
    "testField\0"
};

const QtProtobufPrivate::QProtobufPropertyOrdering FieldIndexTest1Message::propertyOrdering = {
    &qt_protobuf_FieldIndexTest1Message_metadata.data
};

void FieldIndexTest1Message::registerTypes()
{
    qRegisterMetaType<FieldIndexTest1Message>();
    qRegisterMetaType<FieldIndexTest1MessageRepeated>();
}
FieldIndexTest1Message::FieldIndexTest1Message() : QProtobufMessage(&FieldIndexTest1Message::staticMetaObject),
    m_testField(0)
{
}
FieldIndexTest1Message::FieldIndexTest1Message(const FieldIndexTest1Message &other) : QProtobufMessage(other),
    m_testField(other.m_testField)
{
}
FieldIndexTest1Message &FieldIndexTest1Message::operator =(const FieldIndexTest1Message &other)
{
    QProtobufMessage::operator=(other);
    setTestField(other.m_testField);
    return *this;
}
FieldIndexTest1Message::FieldIndexTest1Message(FieldIndexTest1Message &&other) noexcept : QProtobufMessage(std::move(other))
{
    setTestField(std::exchange(other.m_testField, 0));
}
FieldIndexTest1Message &FieldIndexTest1Message::operator =(FieldIndexTest1Message &&other) noexcept
{
    QProtobufMessage::operator=(std::move(other));
    setTestField(std::exchange(other.m_testField, 0));
    return *this;
}
bool FieldIndexTest1Message::operator ==(const FieldIndexTest1Message &other) const
{
    return QProtobufMessage::isEqual(*this, other)
        && m_testField == other.m_testField;
}
bool FieldIndexTest1Message::operator !=(const FieldIndexTest1Message &other) const
{
    return !this->operator ==(other);
}

FieldIndexTest2Message::~FieldIndexTest2Message() = default;

static constexpr struct {
    QtProtobufPrivate::QProtobufPropertyOrdering::Data data;
    const std::array<uint, 5> qt_protobuf_FieldIndexTest2Message_uint_data;
    const char qt_protobuf_FieldIndexTest2Message_char_data[60];
} qt_protobuf_FieldIndexTest2Message_metadata {
    // data
    {
        0, /* = version */
        1, /* = num fields */
        2, /* = field number offset */
        3, /* = property index offset */
        4, /* = field flags offset */
        48, /* = message full name length */
    },
    // uint_data
    {
        // JSON name offsets:
        49, /* = testField */
        59, /* = end-of-string-marker */
        // Field numbers:
        8191, /* = testField */
        // Property indices:
        0, /* = testField */
        // Field flags:
        QtProtobufPrivate::NoFlags, /* = testField */
    },
    // char_data
    /* metadata char_data: */
    "qtprotobufnamespace.tests.FieldIndexTest2Message\0" /* = full message name */
    /* field char_data: */
    "testField\0"
};

const QtProtobufPrivate::QProtobufPropertyOrdering FieldIndexTest2Message::propertyOrdering = {
    &qt_protobuf_FieldIndexTest2Message_metadata.data
};

void FieldIndexTest2Message::registerTypes()
{
    qRegisterMetaType<FieldIndexTest2Message>();
    qRegisterMetaType<FieldIndexTest2MessageRepeated>();
}
FieldIndexTest2Message::FieldIndexTest2Message() : QProtobufMessage(&FieldIndexTest2Message::staticMetaObject),
    m_testField(0)
{
}
FieldIndexTest2Message::FieldIndexTest2Message(const FieldIndexTest2Message &other) : QProtobufMessage(other),
    m_testField(other.m_testField)
{
}
FieldIndexTest2Message &FieldIndexTest2Message::operator =(const FieldIndexTest2Message &other)
{
    QProtobufMessage::operator=(other);
    setTestField(other.m_testField);
    return *this;
}
FieldIndexTest2Message::FieldIndexTest2Message(FieldIndexTest2Message &&other) noexcept : QProtobufMessage(std::move(other))
{
    setTestField(std::exchange(other.m_testField, 0));
}
FieldIndexTest2Message &FieldIndexTest2Message::operator =(FieldIndexTest2Message &&other) noexcept
{
    QProtobufMessage::operator=(std::move(other));
    setTestField(std::exchange(other.m_testField, 0));
    return *this;
}
bool FieldIndexTest2Message::operator ==(const FieldIndexTest2Message &other) const
{
    return QProtobufMessage::isEqual(*this, other)
        && m_testField == other.m_testField;
}
bool FieldIndexTest2Message::operator !=(const FieldIndexTest2Message &other) const
{
    return !this->operator ==(other);
}

FieldIndexTest3Message::~FieldIndexTest3Message() = default;

static constexpr struct {
    QtProtobufPrivate::QProtobufPropertyOrdering::Data data;
    const std::array<uint, 5> qt_protobuf_FieldIndexTest3Message_uint_data;
    const char qt_protobuf_FieldIndexTest3Message_char_data[60];
} qt_protobuf_FieldIndexTest3Message_metadata {
    // data
    {
        0, /* = version */
        1, /* = num fields */
        2, /* = field number offset */
        3, /* = property index offset */
        4, /* = field flags offset */
        48, /* = message full name length */
    },
    // uint_data
    {
        // JSON name offsets:
        49, /* = testField */
        59, /* = end-of-string-marker */
        // Field numbers:
        2097151, /* = testField */
        // Property indices:
        0, /* = testField */
        // Field flags:
        QtProtobufPrivate::NoFlags, /* = testField */
    },
    // char_data
    /* metadata char_data: */
    "qtprotobufnamespace.tests.FieldIndexTest3Message\0" /* = full message name */
    /* field char_data: */
    "testField\0"
};

const QtProtobufPrivate::QProtobufPropertyOrdering FieldIndexTest3Message::propertyOrdering = {
    &qt_protobuf_FieldIndexTest3Message_metadata.data
};

void FieldIndexTest3Message::registerTypes()
{
    qRegisterMetaType<FieldIndexTest3Message>();
    qRegisterMetaType<FieldIndexTest3MessageRepeated>();
}
FieldIndexTest3Message::FieldIndexTest3Message() : QProtobufMessage(&FieldIndexTest3Message::staticMetaObject),
    m_testField(0)
{
}
FieldIndexTest3Message::FieldIndexTest3Message(const FieldIndexTest3Message &other) : QProtobufMessage(other),
    m_testField(other.m_testField)
{
}
FieldIndexTest3Message &FieldIndexTest3Message::operator =(const FieldIndexTest3Message &other)
{
    QProtobufMessage::operator=(other);
    setTestField(other.m_testField);
    return *this;
}
FieldIndexTest3Message::FieldIndexTest3Message(FieldIndexTest3Message &&other) noexcept : QProtobufMessage(std::move(other))
{
    setTestField(std::exchange(other.m_testField, 0));
}
FieldIndexTest3Message &FieldIndexTest3Message::operator =(FieldIndexTest3Message &&other) noexcept
{
    QProtobufMessage::operator=(std::move(other));
    setTestField(std::exchange(other.m_testField, 0));
    return *this;
}
bool FieldIndexTest3Message::operator ==(const FieldIndexTest3Message &other) const
{
    return QProtobufMessage::isEqual(*this, other)
        && m_testField == other.m_testField;
}
bool FieldIndexTest3Message::operator !=(const FieldIndexTest3Message &other) const
{
    return !this->operator ==(other);
}

FieldIndexTest4Message::~FieldIndexTest4Message() = default;

static constexpr struct {
    QtProtobufPrivate::QProtobufPropertyOrdering::Data data;
    const std::array<uint, 5> qt_protobuf_FieldIndexTest4Message_uint_data;
    const char qt_protobuf_FieldIndexTest4Message_char_data[60];
} qt_protobuf_FieldIndexTest4Message_metadata {
    // data
    {
        0, /* = version */
        1, /* = num fields */
        2, /* = field number offset */
        3, /* = property index offset */
        4, /* = field flags offset */
        48, /* = message full name length */
    },
    // uint_data
    {
        // JSON name offsets:
        49, /* = testField */
        59, /* = end-of-string-marker */
        // Field numbers:
        536870911, /* = testField */
        // Property indices:
        0, /* = testField */
        // Field flags:
        QtProtobufPrivate::NoFlags, /* = testField */
    },
    // char_data
    /* metadata char_data: */
    "qtprotobufnamespace.tests.FieldIndexTest4Message\0" /* = full message name */
    /* field char_data: */
    "testField\0"
};

const QtProtobufPrivate::QProtobufPropertyOrdering FieldIndexTest4Message::propertyOrdering = {
    &qt_protobuf_FieldIndexTest4Message_metadata.data
};

void FieldIndexTest4Message::registerTypes()
{
    qRegisterMetaType<FieldIndexTest4Message>();
    qRegisterMetaType<FieldIndexTest4MessageRepeated>();
}
FieldIndexTest4Message::FieldIndexTest4Message() : QProtobufMessage(&FieldIndexTest4Message::staticMetaObject),
    m_testField(0)
{
}
FieldIndexTest4Message::FieldIndexTest4Message(const FieldIndexTest4Message &other) : QProtobufMessage(other),
    m_testField(other.m_testField)
{
}
FieldIndexTest4Message &FieldIndexTest4Message::operator =(const FieldIndexTest4Message &other)
{
    QProtobufMessage::operator=(other);
    setTestField(other.m_testField);
    return *this;
}
FieldIndexTest4Message::FieldIndexTest4Message(FieldIndexTest4Message &&other) noexcept : QProtobufMessage(std::move(other))
{
    setTestField(std::exchange(other.m_testField, 0));
}
FieldIndexTest4Message &FieldIndexTest4Message::operator =(FieldIndexTest4Message &&other) noexcept
{
    QProtobufMessage::operator=(std::move(other));
    setTestField(std::exchange(other.m_testField, 0));
    return *this;
}
bool FieldIndexTest4Message::operator ==(const FieldIndexTest4Message &other) const
{
    return QProtobufMessage::isEqual(*this, other)
        && m_testField == other.m_testField;
}
bool FieldIndexTest4Message::operator !=(const FieldIndexTest4Message &other) const
{
    return !this->operator ==(other);
}

} // namespace qtprotobufnamespace::tests

#include "moc_fieldindexrange.qpb.cpp"
