QDocTests::SfinaeContainer Class

class QDocTests::SfinaeContainer

A container with SFINAE-constrained member functions. More...

Header: #include <sfinae_constraints.h>

Public Functions

void mixedConstraints(const T &value)
void multiConstrained(const T &value)
void multiLayerSugar(const T &value)
void namespacedAlias(const T &value)
void process(const T &value)

Detailed Description

This class demonstrates SFINAE constraint detection in QDoc.

Member Function Documentation

template <typename T> requires if_integral<T> && (std::is_integral<T>::value) void SfinaeContainer::mixedConstraints(const T &value)

Processes the given value using both SFINAE and an explicit requires clause. The combined constraint ensures the type T satisfies both the SFINAE alias and the direct type trait.

template <typename T> requires if_arithmetic<T> && if_signed<T> void SfinaeContainer::multiConstrained(const T &value)

Processes the given value with multiple constraints. This function is only available when the type T is both arithmetic and signed.

template <typename T> requires if_numeric<T> void SfinaeContainer::multiLayerSugar(const T &value)

Processes the given value using an alias that itself wraps another alias, testing multi-layer sugar chain detection.

template <typename T> requires QtPrivate::if_scoped<T> void SfinaeContainer::namespacedAlias(const T &value)

Processes the given value using a namespaced SFINAE alias. The rendered constraint preserves the QtPrivate qualification.

template <typename T> requires if_integral<T> void SfinaeContainer::process(const T &value)

Processes the given value. This function is only available when the type T satisfies the if_integral constraint.