xieite ::any ::operator /*???*/ ()
Defined in header <xieite/meta/any.hpp>
A declared implicit cast operator to any type. Must be used in unevaluated context, as it is not actually implemented.
This is not marked
constexpr
because it would otherwise have to be [implicitly instantiated if the existence of its definition affects the semantics of the program] if it is [needed for constant evaluation (even if not required)] if this function is [named by an expression that is potentially constant evaluated] if the expression is [an immediate subexpression of a brace initializer list].Basically, this function would behave differently in a case like
int { xieite ::any () }
.
Declaration
template <typename T >explicit (false )operator T ()const noexcept ;
Example
Output:void f (int ,float ,char16_t***&& ) {}int main () {xieite ::any any ;// Check if `f` is callable with three arguments of any type xieite ::dump (requires {f (any ,any ,any ); }); }
[View in Compiler Explorer]true