delphyne
Subtype< Derived, Base >::ConstructibleWith< Args > Class Template Reference

Detailed Description

template<class Derived, class Base>
template<typename... Args>
class delphyne::utility::internal::Subtype< Derived, Base >::ConstructibleWith< Args >

A runtime representation of a Subtype, that is constructible from a given set of parameter types.

Template Parameters
ArgsParameters type pack for construction of Derived instance. Said instance must be constructible from the provided types.

#include <include/delphyne/utility/resources/resources.h>

Inheritance diagram for Subtype< Derived, Base >::ConstructibleWith< Args >:
[legend]

Public Member Functions

 DELPHYNE_NO_COPY_NO_MOVE_NO_ASSIGN (ConstructibleWith)
 
std::unique_ptr< BaseInstantiate (Args... args) const override
 
virtual ~ConstructibleWith ()=default
 
- Public Member Functions inherited from Subtype< Derived, Base >
 DELPHYNE_NO_COPY_NO_MOVE_NO_ASSIGN (Subtype)
 
virtual ~Subtype ()=default
 
- Public Member Functions inherited from Type< Base >
 DELPHYNE_NO_COPY_NO_MOVE_NO_ASSIGN (Type)
 
virtual ~Type ()=default
 

Static Public Member Functions

static const ConstructibleWithInstance ()
 Retrieves singleton type instance. More...
 

Protected Member Functions

 ConstructibleWith ()=default
 
- Protected Member Functions inherited from Subtype< Derived, Base >
 Subtype ()=default
 
- Protected Member Functions inherited from Type< Base >
 Type ()=default
 

Constructor & Destructor Documentation

◆ ~ConstructibleWith()

virtual ~ConstructibleWith ( )
virtualdefault

◆ ConstructibleWith()

ConstructibleWith ( )
protecteddefault

Member Function Documentation

◆ DELPHYNE_NO_COPY_NO_MOVE_NO_ASSIGN()

DELPHYNE_NO_COPY_NO_MOVE_NO_ASSIGN ( ConstructibleWith< Args >  )

◆ Instance()

static const ConstructibleWith* Instance ( )
static

Retrieves singleton type instance.

◆ Instantiate()

std::unique_ptr<Base> Instantiate ( Args...  args) const
override

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