// AUTOGENERATED FILE - DO NOT MODIFY!
// This file generated by Djinni from derivings.djinni

#pragma once

#include <cstdint>
#include <string>
#include <utility>

namespace testsuite {

struct RecordWithDerivings final {
    int32_t key1;
    std::string key2;

    friend bool operator==(const RecordWithDerivings& lhs, const RecordWithDerivings& rhs);
    friend bool operator!=(const RecordWithDerivings& lhs, const RecordWithDerivings& rhs);

    friend bool operator<(const RecordWithDerivings& lhs, const RecordWithDerivings& rhs);
    friend bool operator>(const RecordWithDerivings& lhs, const RecordWithDerivings& rhs);

    friend bool operator<=(const RecordWithDerivings& lhs, const RecordWithDerivings& rhs);
    friend bool operator>=(const RecordWithDerivings& lhs, const RecordWithDerivings& rhs);

    RecordWithDerivings(int32_t key1_,
                        std::string key2_)
    : key1(std::move(key1_))
    , key2(std::move(key2_))
    {}
};

}  // namespace testsuite
