blob: c6287bac0c913a04ebb9123d9c0ee32ac9da4cf6 [file] [log] [blame]
// Part of the Crubit project, under the Apache License v2.0 with LLVM
// Exceptions. See /LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
// Automatically @generated Rust bindings for the following C++ target:
// //rs_bindings_from_cc/test/golden:inheritance_cc
#include "support/internal/cxx20_backports.h"
#include "support/internal/offsetof.h"
#include "support/internal/sizeof.h"
#include <cstddef>
#include <memory>
// Public headers of the C++ library being wrapped.
#include "rs_bindings_from_cc/test/golden/inheritance.h"
#pragma clang diagnostic push
#pragma clang diagnostic ignored "-Wthread-safety-analysis"
static_assert(sizeof(class Base0) == 1);
static_assert(alignof(class Base0) == 1);
extern "C" void __rust_thunk___ZN5Base0C1Ev(class Base0* __this) {
crubit::construct_at(__this);
}
static_assert(CRUBIT_SIZEOF(class Base1) == 16);
static_assert(alignof(class Base1) == 8);
extern "C" void __rust_thunk___ZN5Base1C1Ev(class Base1* __this) {
crubit::construct_at(__this);
}
static_assert(CRUBIT_SIZEOF(class Base2) == 2);
static_assert(alignof(class Base2) == 2);
extern "C" void __rust_thunk___ZN5Base2C1Ev(class Base2* __this) {
crubit::construct_at(__this);
}
static_assert(CRUBIT_SIZEOF(struct Derived) == 16);
static_assert(alignof(struct Derived) == 8);
static_assert(CRUBIT_OFFSET_OF(derived_1, struct Derived) == 12);
extern "C" void __rust_thunk___ZN7DerivedC1Ev(struct Derived* __this) {
crubit::construct_at(__this);
}
static_assert(CRUBIT_SIZEOF(class VirtualBase1) == 24);
static_assert(alignof(class VirtualBase1) == 8);
extern "C" void __rust_thunk___ZN12VirtualBase1C1Ev(
class VirtualBase1* __this) {
crubit::construct_at(__this);
}
static_assert(CRUBIT_SIZEOF(class VirtualBase2) == 24);
static_assert(alignof(class VirtualBase2) == 8);
extern "C" void __rust_thunk___ZN12VirtualBase2C1Ev(
class VirtualBase2* __this) {
crubit::construct_at(__this);
}
static_assert(CRUBIT_SIZEOF(class VirtualDerived) == 32);
static_assert(alignof(class VirtualDerived) == 8);
extern "C" void __rust_thunk___ZN14VirtualDerivedC1Ev(
class VirtualDerived* __this) {
crubit::construct_at(__this);
}
static_assert(CRUBIT_SIZEOF(class MyAbstractClass) == 8);
static_assert(alignof(class MyAbstractClass) == 8);
static_assert(sizeof(class MethodBase1) == 1);
static_assert(alignof(class MethodBase1) == 1);
extern "C" void __rust_thunk___ZN11MethodBase1C1Ev(class MethodBase1* __this) {
crubit::construct_at(__this);
}
static_assert((void (::MethodBase1::*)())&MethodBase1::Public);
static_assert(
(void (::MethodBase1::*)(class MethodBase1 const*))&MethodBase1::Equals);
static_assert((void (::MethodBase1::*)())&MethodBase1::Colliding1);
static_assert((void (::MethodBase1::*)())&MethodBase1::Colliding2);
static_assert(sizeof(class MethodBase2) == 1);
static_assert(alignof(class MethodBase2) == 1);
extern "C" void __rust_thunk___ZN11MethodBase2C1Ev(class MethodBase2* __this) {
crubit::construct_at(__this);
}
static_assert((void (::MethodBase2::*)())&MethodBase2::Colliding1);
static_assert((void (::MethodBase2::*)())&MethodBase2::Colliding2);
static_assert(sizeof(class MethodDerived) == 1);
static_assert(alignof(class MethodDerived) == 1);
extern "C" void __rust_thunk___ZN13MethodDerivedC1Ev(
class MethodDerived* __this) {
crubit::construct_at(__this);
}
#pragma clang diagnostic pop