#include "class.h"
Go to the source code of this file.
Classes | |
struct | alias_constructor< Args > |
struct | constructor< Args > |
struct | factory< CFunc, AFunc, typename, typename > |
struct | factory< CFunc, AFunc, CReturn(CArgs...), AReturn(AArgs...)> |
struct | factory< Func, void_type(*)(), Return(Args...)> |
struct | pickle_factory< Get, Set, typename, typename > |
Implementation for py::pickle(GetState, SetState) More... | |
struct | pickle_factory< Get, Set, RetState(Self), NewInstance(ArgState)> |
class | type_caster< value_and_holder > |
Typedefs | |
template<typename Class > | |
using | Alias = typename Class::type_alias |
template<typename Class > | |
using | Cpp = typename Class::type |
template<typename Class > | |
using | Holder = typename Class::holder_type |
template<typename Class > | |
using | is_alias_constructible = std::is_constructible< Alias< Class >, Cpp< Class > && > |
Functions | |
template<typename Class > | |
void | construct (...) |
template<typename Class > | |
void | construct (value_and_holder &v_h, Alias< Class > &&result, bool) |
template<typename Class , enable_if_t< Class::has_alias, int > = 0> | |
void | construct (value_and_holder &v_h, Alias< Class > *alias_ptr, bool) |
template<typename Class > | |
void | construct (value_and_holder &v_h, Cpp< Class > &&result, bool need_alias) |
template<typename Class > | |
void | construct (value_and_holder &v_h, Cpp< Class > *ptr, bool need_alias) |
template<typename Class > | |
void | construct (value_and_holder &v_h, Holder< Class > holder, bool need_alias) |
template<typename Class > | |
void | construct_alias_from_cpp (std::false_type, value_and_holder &, Cpp< Class > &&) |
template<typename Class > | |
void | construct_alias_from_cpp (std::true_type, value_and_holder &v_h, Cpp< Class > &&base) |
template<typename Class , typename... Args, detail::enable_if_t< std::is_constructible< Class, Args... >::value, int > = 0> | |
Class * | construct_or_initialize (Args &&...args) |
template<typename Class , enable_if_t< Class::has_alias, int > = 0> | |
bool | is_alias (Cpp< Class > *ptr) |
template<typename > | |
constexpr bool | is_alias (void *) |
void | no_nullptr (void *ptr) |
template<typename Class , typename T , typename O , enable_if_t< std::is_convertible< O, handle >::value, int > = 0> | |
void | setstate (value_and_holder &v_h, std::pair< T, O > &&result, bool need_alias) |
Set both the C++ and Python states. More... | |
template<typename Class , typename T > | |
void | setstate (value_and_holder &v_h, T &&result, bool need_alias) |
Set just the C++ state. Same as __init__ . More... | |
using Alias = typename Class::type_alias |
using Holder = typename Class::holder_type |
using is_alias_constructible = std::is_constructible<Alias<Class>, Cpp<Class> &&> |
void construct | ( | value_and_holder & | v_h, |
Alias< Class > && | result, | ||
bool | |||
) |
void construct | ( | value_and_holder & | v_h, |
Alias< Class > * | alias_ptr, | ||
bool | |||
) |
void construct | ( | value_and_holder & | v_h, |
Cpp< Class > && | result, | ||
bool | need_alias | ||
) |
void construct | ( | value_and_holder & | v_h, |
Cpp< Class > * | ptr, | ||
bool | need_alias | ||
) |
void construct | ( | value_and_holder & | v_h, |
Holder< Class > | holder, | ||
bool | need_alias | ||
) |
void construct_alias_from_cpp | ( | std::false_type | , |
value_and_holder & | , | ||
Cpp< Class > && | |||
) |
void construct_alias_from_cpp | ( | std::true_type | , |
value_and_holder & | v_h, | ||
Cpp< Class > && | base | ||
) |
|
inline |
|
constexpr |
void setstate | ( | value_and_holder & | v_h, |
std::pair< T, O > && | result, | ||
bool | need_alias | ||
) |
void setstate | ( | value_and_holder & | v_h, |
T && | result, | ||
bool | need_alias | ||
) |