CEPS  24.01
Cardiac ElectroPhysiology Simulator
ceps::Function< _Res(_Args...)> Struct Template Referenceabstract

Detailed Description

template<typename _Res, typename... _Args>
struct ceps::Function< _Res(_Args...)>

base Function type for ceps. It's an abstract class which contains only a variadic operator parenthesis. Specialized to signature _Res(_Args...)

Template Parameters
_Resthe return type
_Argsvariadic arguments

Definition at line 89 of file CepsFunction.hpp.

#include <CepsFunction.hpp>

Inheritance diagram for ceps::Function< _Res(_Args...)>:
[legend]

Public Types

using ReturnType = _Res
 Return type definition. More...
 
using SignatureType = _Res(_Args...)
 signature type More...
 

Public Member Functions

 Function ()=default
 Construct a new Function object. More...
 
 Function (const Function &)=default
 Copy constructor. More...
 
 Function (Function &&) noexcept=default
 Copy constructor. More...
 
Functionoperator= (const Function &)=default
 Assignment operator. More...
 
Functionoperator= (Function &&) noexcept=default
 Assignment operator. More...
 
virtual ~Function ()=default
 Destroy the Function object. More...
 
virtual _Res eval (_Args... args)=0
 Evaluation method, must be overloaded, is called by operator() More...
 
virtual _Res operator() (_Args... args) final
 Base operator for call. Cannot be overloaded, use eval instead. We do this as the It is used to select the correct evaluation of the derived classes, as C++ seems to not do the right thing. More...
 

Member Typedef Documentation

◆ ReturnType

template<typename _Res , typename... _Args>
using ceps::Function< _Res(_Args...)>::ReturnType = _Res

Return type definition.

Definition at line 93 of file CepsFunction.hpp.

◆ SignatureType

template<typename _Res , typename... _Args>
using ceps::Function< _Res(_Args...)>::SignatureType = _Res(_Args...)

signature type

Definition at line 96 of file CepsFunction.hpp.

Constructor & Destructor Documentation

◆ Function() [1/3]

template<typename _Res , typename... _Args>
ceps::Function< _Res(_Args...)>::Function ( )
default

Construct a new Function object.

◆ Function() [2/3]

template<typename _Res , typename... _Args>
ceps::Function< _Res(_Args...)>::Function ( const Function< _Res(_Args...)> &  )
default

Copy constructor.

◆ Function() [3/3]

template<typename _Res , typename... _Args>
ceps::Function< _Res(_Args...)>::Function ( Function< _Res(_Args...)> &&  )
defaultnoexcept

Copy constructor.

◆ ~Function()

template<typename _Res , typename... _Args>
virtual ceps::Function< _Res(_Args...)>::~Function ( )
virtualdefault

Destroy the Function object.

Member Function Documentation

◆ eval()

template<typename _Res , typename... _Args>
virtual _Res ceps::Function< _Res(_Args...)>::eval ( _Args...  args)
pure virtual

◆ operator()()

template<typename _Res , typename... _Args>
virtual _Res ceps::Function< _Res(_Args...)>::operator() ( _Args...  args)
inlinefinalvirtual

Base operator for call. Cannot be overloaded, use eval instead. We do this as the It is used to select the correct evaluation of the derived classes, as C++ seems to not do the right thing.

Definition at line 129 of file CepsFunction.hpp.

◆ operator=() [1/2]

template<typename _Res , typename... _Args>
Function& ceps::Function< _Res(_Args...)>::operator= ( const Function< _Res(_Args...)> &  )
default

Assignment operator.

◆ operator=() [2/2]

template<typename _Res , typename... _Args>
Function& ceps::Function< _Res(_Args...)>::operator= ( Function< _Res(_Args...)> &&  )
defaultnoexcept

Assignment operator.


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