Audacity 3.2.0
Public Member Functions | List of all members
Composite::Extension< Base, Base2, RequiredBaseArgs > Struct Template Reference

Extend Base with extra fields, in a second, protected base class. More...

#include <Composite.h>

Inheritance diagram for Composite::Extension< Base, Base2, RequiredBaseArgs >:
[legend]
Collaboration diagram for Composite::Extension< Base, Base2, RequiredBaseArgs >:
[legend]

Public Member Functions

template<typename... OtherBaseArgs>
 Extension (RequiredBaseArgs... args, Base2 arg2, OtherBaseArgs &&...otherArgs)
 
- Public Member Functions inherited from Composite::Base< Component, ComponentPointer, ComponentArgs >
 Base (ComponentArgs... args)
 
 Base (const Base &)=delete
 
Baseoperator= (const Base &)=delete
 
auto begin () const
 
auto end () const
 
auto cbegin () const
 
auto cend () const
 
auto rbegin () const
 
auto rend () const
 
auto crbegin () const
 
auto crend () const
 
void push_back (value_type ptr)
 
bool empty () const
 

Additional Inherited Members

- Public Types inherited from Composite::Base< Component, ComponentPointer, ComponentArgs >
using value_type = ComponentPointer
 
using Items = std::vector< value_type >
 
- Protected Attributes inherited from Composite::Base< Component, ComponentPointer, ComponentArgs >
Items items
 

Detailed Description

template<typename Base, typename Base2, typename... RequiredBaseArgs>
struct Composite::Extension< Base, Base2, RequiredBaseArgs >

Extend Base with extra fields, in a second, protected base class.

Definition at line 173 of file Composite.h.

Constructor & Destructor Documentation

◆ Extension()

template<typename Base , typename Base2 , typename... RequiredBaseArgs>
template<typename... OtherBaseArgs>
Composite::Extension< Base, Base2, RequiredBaseArgs >::Extension ( RequiredBaseArgs...  args,
Base2  arg2,
OtherBaseArgs &&...  otherArgs 
)
inline

Definition at line 178 of file Composite.h.

180 : Base{ std::forward<RequiredBaseArgs>(args)...,
181 std::forward<OtherBaseArgs>(otherArgs)...
182 }
183 , Base2{ std::move(arg2) }
184 {}
Base(ComponentArgs... args)
Definition: Composite.h:44

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