WebCFace 2.5.2
Web-based Communication Framework & Dashboard-like UI
Loading...
Searching...
No Matches
FuncSignatureTrait< Ret(Args...)> Struct Template Reference

#include <webcface/func.h>

Inheritance diagram for FuncSignatureTrait< Ret(Args...)>:
[legend]

Public Types

using ReturnTypeTrait = FuncReturnTypeTrait< Ret >
 
using ArgTypesTrait = FuncArgTypesTrait< Args... >
 
using ReturnType = Ret
 
using ArgsTuple = std::tuple< std::decay_t< Args >... >
 

Static Public Member Functions

static bool assertArgsNum (const CallHandle &handle)
 
static std::vector< ArgargsInfo ()
 

Static Public Attributes

static constexpr bool return_void = std::is_same_v<Ret, void>
 

Detailed Description

template<typename Ret, typename... Args>
struct webcface::traits::FuncSignatureTrait< Ret(Args...)>

RetとArgsが条件を満たすときだけ、 ReturnTypeTrait::ReturnTypeSupportedByWebCFaceFunc と ArgTypesTrait::ArgTypesSupportedByWebCFaceFunc が定義される (enable_ifを使ってないのはエラーメッセージがわかりにくかったから)

Member Typedef Documentation

◆ ArgsTuple

template<typename Ret , typename... Args>
using ArgsTuple = std::tuple<std::decay_t<Args>...>

◆ ArgTypesTrait

template<typename Ret , typename... Args>
using ArgTypesTrait = FuncArgTypesTrait<Args...>

◆ ReturnType

template<typename Ret , typename... Args>
using ReturnType = Ret

◆ ReturnTypeTrait

template<typename Ret , typename... Args>
using ReturnTypeTrait = FuncReturnTypeTrait<Ret>

Member Function Documentation

◆ argsInfo()

template<typename Ret , typename... Args>
static std::vector< Arg > argsInfo ( )
inlinestatic

◆ assertArgsNum()

template<typename Ret , typename... Args>
static bool assertArgsNum ( const CallHandle handle)
inlinestatic

Member Data Documentation

◆ return_void

template<typename Ret , typename... Args>
constexpr bool return_void = std::is_same_v<Ret, void>
staticconstexpr

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