welder
0.1.0
Bindings for annotated C++ types, from C++26 reflection
Toggle main menu visibility
Loading...
Searching...
No Matches
diag.hpp
Go to the documentation of this file.
1
#pragma once
2
24
25
namespace
welder::inline v0::
diag
{
26
30
struct
lang_out_of_mask_range
{
32
const
char
*
what
=
33
"welder: this lang value is not a language-mask bit index (it lies "
34
"past the 32-bit mask); mint user languages with "
35
"welder::user_lang<Slot>, which cannot go out of range"
;
36
};
37
41
struct
dangling_return_policy
{
43
const
char
*
what
=
44
"welder: return_policy requests a reference-category policy "
45
"(rv::reference / rv::reference_internal) on a callable returning BY "
46
"VALUE - the target-language view would reference a destroyed "
47
"temporary; drop the policy, or return a pointer/reference"
;
48
};
49
53
struct
bare_mark_only
{
55
const
char
*
what
=
56
"welder: a bare [[=welder::mark::only]] is meaningless ('only, for "
57
"every language' restricts nothing); call it with the languages the "
58
"member may bind for: mark::only(welder::lang::py, ...)"
;
59
};
60
64
struct
no_matching_virtual_slot
{
66
const
char
*
what
=
67
"welder: no overridable virtual of this class matches the given name "
68
"and function type; check the spelling and the FULL function type - "
69
"parameter types and trailing cv/ref qualifiers included - against "
70
"the base's declaration"
;
71
};
72
77
struct
stale_hook_signature
{
79
const
char
*
what
=
80
"welder: this resolution's protected_participates hook gained a "
81
"trailing `std::meta::info bound_into` parameter (the entity whose "
82
"binding receives the member); update its signature to "
83
"(mem, lang, bound_into)"
;
84
};
85
86
}
// namespace welder::inline v0::diag
welder::diag
Definition
diag.hpp:25
welder::diag::bare_mark_only
Thrown by member_bound (<welder/reflect.hpp>) when a member carries a bare [[=welder::mark::only]] — ...
Definition
diag.hpp:53
welder::diag::bare_mark_only::what
const char * what
What went wrong and how to fix it.
Definition
diag.hpp:55
welder::diag::dangling_return_policy
Thrown by validate_return_policy (<welder/reflect.hpp>) — every rod runs it at its per-overload bind ...
Definition
diag.hpp:41
welder::diag::dangling_return_policy::what
const char * what
What went wrong and how to fix it.
Definition
diag.hpp:43
welder::diag::lang_out_of_mask_range
Thrown by lang_bit (<welder/annotations.hpp>) when a lang value lies past the 32-bit language-mask wi...
Definition
diag.hpp:30
welder::diag::lang_out_of_mask_range::what
const char * what
What went wrong and how to fix it.
Definition
diag.hpp:32
welder::diag::no_matching_virtual_slot
Thrown by virtual_slot (<welder/rods/python/trampoline.hpp>, reached through WELDER_PY_OVERRIDE_AS) w...
Definition
diag.hpp:64
welder::diag::no_matching_virtual_slot::what
const char * what
What went wrong and how to fix it.
Definition
diag.hpp:66
welder::diag::stale_hook_signature
Thrown by member_access_admitted (<welder/bind_traits.hpp>) when a resolution still declares its opti...
Definition
diag.hpp:77
welder::diag::stale_hook_signature::what
const char * what
What went wrong and how to fix it.
Definition
diag.hpp:79
src
welder
diag.hpp
Generated by
1.17.0