ComplexTemplateClass Class | Qt 1.0
Description: A class with functions that have complex template signatures.
Keywords: class

# ComplexTemplateClass Class

A class with functions that have complex template signatures. More...

Header: | `#include <complextemplates.h>`

- List of all members, including inherited members

## Public Functions

void | complexDefaults(SetupHandler setup = SetupHandler(), DoneHandler done = DoneHandler())
void | fourParamsWithDefault(First a, Second b, Third c, Fourth d = Fourth())
void | threeParams(T t, U u, V v)
Result | transformFiltered(Input input, Pred pred)

## Detailed Description

This class tests QDoc's ability to render template signatures with many parameters in a readable multi-line format.

## Member Function Documentation

### template < typename SetupHandler = ComplexTemplateClass, typename DoneHandler = ComplexTemplateClass, typename ErrorHandler = ComplexTemplateClass > void ComplexTemplateClass::complexDefaults(SetupHandler setup = SetupHandler(), DoneHandler done = DoneHandler())

Configures setup and done handlers.

This has template parameters with very long default type names.

### template < typename First, typename Second, typename Third, typename Fourth = int > void ComplexTemplateClass::fourParamsWithDefault(First a, Second b, Third c, Fourth d = Fourth())

Processes values a, b, c, and d.

Complex default values make single-line rendering unreadable.

### template < typename T, typename U, typename V > void ComplexTemplateClass::threeParams(T t, U u, V v)

Processes values t, u, and v.

This should trigger multi-line rendering since it has more than two template parameters.

### template < typename Input, typename Pred, typename Result > requires (sizeof(Input) > 0) Result ComplexTemplateClass::transformFiltered(Input input, Pred pred)

Transforms input using pred to filter and returns Result.

Tests multi-line template rendering combined with a requires clause. The requires clause should appear after the closing '>' on the same line.