Helper class which loads arguments for C++ functions called from Python. More...
#include <cast.h>
Public Member Functions | |
template<typename Return , typename Guard , typename Func > | |
enable_if_t<!std::is_void< Return >::value, Return > | call (Func &&f)&& |
template<typename Return , typename Guard , typename Func > | |
enable_if_t< std::is_void< Return >::value, void_type > | call (Func &&f)&& |
bool | load_args (function_call &call) |
Static Public Attributes | |
static constexpr auto | arg_names = concat(type_descr(make_caster<Args>::name)...) |
static constexpr bool | has_args = args_pos < 0 |
static constexpr bool | has_kwargs = kwargs_pos < 0 |
Private Types | |
template<typename Arg > | |
using | argument_is_args = std::is_same< intrinsic_t< Arg >, args > |
template<typename Arg > | |
using | argument_is_kwargs = std::is_same< intrinsic_t< Arg >, kwargs > |
using | indices = make_index_sequence< sizeof...(Args)> |
Private Member Functions | |
template<typename Return , typename Func , size_t... Is, typename Guard > | |
Return | call_impl (Func &&f, index_sequence< Is... >, Guard &&)&& |
template<size_t... Is> | |
bool | load_impl_sequence (function_call &call, index_sequence< Is... >) |
Static Private Member Functions | |
static bool | load_impl_sequence (function_call &, index_sequence<>) |
Private Attributes | |
std::tuple< make_caster< Args >... > | argcasters |
Static Private Attributes | |
static constexpr bool | args_kwargs_are_last = kwargs_pos >= - 1 && args_pos >= kwargs_pos - 1 |
static constexpr auto | args_pos = constexpr_first<argument_is_args, Args...>() - (int) sizeof...(Args) |
static constexpr auto | kwargs_pos = constexpr_first<argument_is_kwargs, Args...>() - (int) sizeof...(Args) |
Helper class which loads arguments for C++ functions called from Python.
|
private |
|
private |
|
private |
|
inline |
|
inline |
|
inlineprivate |
|
inline |
|
inlinestaticprivate |
|
inlineprivate |
|
static |
|
private |
|
staticprivate |
|
staticprivate |
|
static |
|
static |
|
staticprivate |