c++-gtk-utils
Public Attributes | List of all members
Cgu::Param< T > Class Template Reference

Struct for automatic typing of function parameter arguments. More...

#include <c++-gtk-utils/param.h>

Public Attributes

const typedef T & ParamType
 

Detailed Description

template<class T>
class Cgu::Param< T >

Struct for automatic typing of function parameter arguments.

This struct uses template partial specialisation in order to provide automatic type mapping for function arguments. It is used by the unbound arguments of callback objects and their related functors and emitter objects. (A more detailed explanation is that it is used where a virtual function is at the end of a call chain, notably the dispatch() method of callback objects, with the result that we cannot templatise the virtual function itself in order to use std::forward for argument passing, but instead have to type-map the arguments using class templates.)

Mapping is as follows:

A value argument is mapped to reference to const of the value type.

A pointer argument is mapped to pointer argument (its original type).

A non-const reference argument is mapped to non-const reference (its original type).

A const reference argument is mapped to const reference (its original type).

Member Data Documentation

◆ ParamType

template<class T >
const typedef T& Cgu::Param< T >::ParamType

The documentation for this class was generated from the following file: