forked from kljohann/genpybind
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathbase-classes-can-be-hidden.h
47 lines (36 loc) · 1.21 KB
/
base-classes-can-be-hidden.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
// SPDX-FileCopyrightText: 2024 Johann Klähn <[email protected]>
//
// SPDX-License-Identifier: MIT
#pragma once
#include "genpybind.h"
namespace deeply {
namespace nested {
struct GENPYBIND(visible, expose_as(NestedBase)) Base {};
} // namespace nested
} // namespace deeply
struct GENPYBIND(visible) Base {};
struct GENPYBIND(visible) Base2 {};
struct GENPYBIND(visible, hide_base) HideAll : deeply::nested::Base,
Base,
Base2 {};
struct GENPYBIND(visible, hide_base("Base")) HideUnqualified
: deeply::nested::Base,
Base,
Base2 {};
struct GENPYBIND(visible, hide_base("::Base")) HideQualified
: deeply::nested::Base,
Base,
Base2 {};
struct GENPYBIND(visible, hide_base("deeply::nested::Base")) HideQualifiedNested
: deeply::nested::Base,
Base,
Base2 {};
struct GENPYBIND(visible, hide_base("::Base", "::Base2")) HideMultiple
: deeply::nested::Base,
Base,
Base2 {};
template <typename T> struct GENPYBIND(visible) BaseTemplate {};
struct GENPYBIND(visible, hide_base("::BaseTemplate")) HideTemplate
: Base,
BaseTemplate<int>,
BaseTemplate<bool> {};