Audacity 3.2.0
Static Public Attributes | List of all members
Composite::Traits< Base, Derived > Struct Template Reference

#include <Composite.h>

Static Public Attributes

static constexpr auto ItemBuilder = std::move<typename Base::value_type>
template<typename T >
static constexpr auto enables_item_type_v = true

Detailed Description

template<typename Base, typename Derived>
struct Composite::Traits< Base, Derived >

You may specialize this template, defining ItemBuilder that converts other types to Base::value_type

A trait lets the Builder and Extension templates have parameter packs for other purposes. enables_item_type_v may be redefined to return false for certain types, which removes the overload resolution candidate for push_back taking those types.

Definition at line 78 of file Composite.h.

Member Data Documentation

◆ enables_item_type_v

template<typename Base , typename Derived >
template<typename T >
constexpr auto Composite::Traits< Base, Derived >::enables_item_type_v = true

Definition at line 80 of file Composite.h.

◆ ItemBuilder

template<typename Base , typename Derived >
constexpr auto Composite::Traits< Base, Derived >::ItemBuilder = std::move<typename Base::value_type>

Definition at line 79 of file Composite.h.

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