cppyabm  1.0.17
An agent-based library to integrate C++ and Python
Classes | Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | List of all members
class_< type_, options > Class Template Reference

#include <pybind11.h>

Inheritance diagram for class_< type_, options >:

Public Types

using type = type_
 
using type_alias = detail::exactly_one_t< is_subtype, void, options... >
 
using holder_type = detail::exactly_one_t< is_holder, std::unique_ptr< type >, options... >
 

Public Member Functions

template<typename... Extra>
 class_ (handle scope, const char *name, const Extra &... extra)
 
template<typename Func , typename... Extra>
class_def (const char *name_, Func &&f, const Extra &... extra)
 
template<typename Func , typename... Extra>
class_def_static (const char *name_, Func &&f, const Extra &... extra)
 
template<detail::op_id id, detail::op_type ot, typename L , typename R , typename... Extra>
class_def (const detail::op_< id, ot, L, R > &op, const Extra &... extra)
 
template<detail::op_id id, detail::op_type ot, typename L , typename R , typename... Extra>
class_def_cast (const detail::op_< id, ot, L, R > &op, const Extra &... extra)
 
template<typename... Args, typename... Extra>
class_def (const detail::initimpl::constructor< Args... > &init, const Extra &... extra)
 
template<typename... Args, typename... Extra>
class_def (const detail::initimpl::alias_constructor< Args... > &init, const Extra &... extra)
 
template<typename... Args, typename... Extra>
class_def (detail::initimpl::factory< Args... > &&init, const Extra &... extra)
 
template<typename... Args, typename... Extra>
class_def (detail::initimpl::pickle_factory< Args... > &&pf, const Extra &...extra)
 
template<typename Func >
class_def_buffer (Func &&func)
 
template<typename Return , typename Class , typename... Args>
class_def_buffer (Return(Class::*func)(Args...))
 
template<typename Return , typename Class , typename... Args>
class_def_buffer (Return(Class::*func)(Args...) const)
 
template<typename C , typename D , typename... Extra>
class_def_readwrite (const char *name, D C::*pm, const Extra &... extra)
 
template<typename C , typename D , typename... Extra>
class_def_readonly (const char *name, const D C::*pm, const Extra &...extra)
 
template<typename D , typename... Extra>
class_def_readwrite_static (const char *name, D *pm, const Extra &...extra)
 
template<typename D , typename... Extra>
class_def_readonly_static (const char *name, const D *pm, const Extra &...extra)
 
template<typename Getter , typename... Extra>
class_def_property_readonly (const char *name, const Getter &fget, const Extra &...extra)
 Uses return_value_policy::reference_internal by default. More...
 
template<typename... Extra>
class_def_property_readonly (const char *name, const cpp_function &fget, const Extra &...extra)
 Uses cpp_function's return_value_policy by default. More...
 
template<typename Getter , typename... Extra>
class_def_property_readonly_static (const char *name, const Getter &fget, const Extra &...extra)
 Uses return_value_policy::reference by default. More...
 
template<typename... Extra>
class_def_property_readonly_static (const char *name, const cpp_function &fget, const Extra &...extra)
 Uses cpp_function's return_value_policy by default. More...
 
template<typename Getter , typename Setter , typename... Extra>
class_def_property (const char *name, const Getter &fget, const Setter &fset, const Extra &...extra)
 Uses return_value_policy::reference_internal by default. More...
 
template<typename Getter , typename... Extra>
class_def_property (const char *name, const Getter &fget, const cpp_function &fset, const Extra &...extra)
 
template<typename... Extra>
class_def_property (const char *name, const cpp_function &fget, const cpp_function &fset, const Extra &...extra)
 Uses cpp_function's return_value_policy by default. More...
 
template<typename Getter , typename... Extra>
class_def_property_static (const char *name, const Getter &fget, const cpp_function &fset, const Extra &...extra)
 Uses return_value_policy::reference by default. More...
 
template<typename... Extra>
class_def_property_static (const char *name, const cpp_function &fget, const cpp_function &fset, const Extra &...extra)
 Uses cpp_function's return_value_policy by default. More...
 

Static Public Member Functions

template<typename Base , detail::enable_if_t< is_base< Base >::value, int > = 0>
static void add_base (detail::type_record &rec)
 
template<typename Base , detail::enable_if_t<!is_base< Base >::value, int > = 0>
static void add_base (detail::type_record &)
 

Static Public Attributes

constexpr static bool has_alias = !std::is_void<type_alias>::value
 

Detailed Description

template<typename type_, typename... options>
class class_< type_, options >

Definition at line 1243 of file pybind11.h.

Member Typedef Documentation

◆ holder_type

template<typename type_ , typename... options>
using class_< type_, options >::holder_type = detail::exactly_one_t<is_holder, std::unique_ptr<type>, options...>

Definition at line 1255 of file pybind11.h.

◆ type

template<typename type_ , typename... options>
using class_< type_, options >::type = type_

Definition at line 1252 of file pybind11.h.

◆ type_alias

template<typename type_ , typename... options>
using class_< type_, options >::type_alias = detail::exactly_one_t<is_subtype, void, options...>

Definition at line 1253 of file pybind11.h.

Constructor & Destructor Documentation

◆ class_()

template<typename type_ , typename... options>
template<typename... Extra>
class_< type_, options >::class_ ( handle  scope,
const char *  name,
const Extra &...  extra 
)
inline

Definition at line 1266 of file pybind11.h.

Member Function Documentation

◆ add_base() [1/2]

template<typename type_ , typename... options>
template<typename Base , detail::enable_if_t<!is_base< Base >::value, int > = 0>
static void class_< type_, options >::add_base ( detail::type_record &  )
inlinestatic

Definition at line 1312 of file pybind11.h.

◆ add_base() [2/2]

template<typename type_ , typename... options>
template<typename Base , detail::enable_if_t< is_base< Base >::value, int > = 0>
static void class_< type_, options >::add_base ( detail::type_record &  rec)
inlinestatic

Definition at line 1305 of file pybind11.h.

◆ def() [1/6]

template<typename type_ , typename... options>
template<typename Func , typename... Extra>
class_& class_< type_, options >::def ( const char *  name_,
Func &&  f,
const Extra &...  extra 
)
inline

Definition at line 1315 of file pybind11.h.

◆ def() [2/6]

template<typename type_ , typename... options>
template<typename... Args, typename... Extra>
class_& class_< type_, options >::def ( const detail::initimpl::alias_constructor< Args... > &  init,
const Extra &...  extra 
)
inline

Definition at line 1351 of file pybind11.h.

◆ def() [3/6]

template<typename type_ , typename... options>
template<typename... Args, typename... Extra>
class_& class_< type_, options >::def ( const detail::initimpl::constructor< Args... > &  init,
const Extra &...  extra 
)
inline

Definition at line 1345 of file pybind11.h.

◆ def() [4/6]

template<typename type_ , typename... options>
template<detail::op_id id, detail::op_type ot, typename L , typename R , typename... Extra>
class_& class_< type_, options >::def ( const detail::op_< id, ot, L, R > &  op,
const Extra &...  extra 
)
inline

Definition at line 1333 of file pybind11.h.

◆ def() [5/6]

template<typename type_ , typename... options>
template<typename... Args, typename... Extra>
class_& class_< type_, options >::def ( detail::initimpl::factory< Args... > &&  init,
const Extra &...  extra 
)
inline

Definition at line 1357 of file pybind11.h.

◆ def() [6/6]

template<typename type_ , typename... options>
template<typename... Args, typename... Extra>
class_& class_< type_, options >::def ( detail::initimpl::pickle_factory< Args... > &&  pf,
const Extra &...  extra 
)
inline

Definition at line 1363 of file pybind11.h.

◆ def_buffer() [1/3]

template<typename type_ , typename... options>
template<typename Func >
class_& class_< type_, options >::def_buffer ( Func &&  func)
inline

Definition at line 1369 of file pybind11.h.

◆ def_buffer() [2/3]

template<typename type_ , typename... options>
template<typename Return , typename Class , typename... Args>
class_& class_< type_, options >::def_buffer ( Return(Class::*)(Args...) const  func)
inline

Definition at line 1391 of file pybind11.h.

◆ def_buffer() [3/3]

template<typename type_ , typename... options>
template<typename Return , typename Class , typename... Args>
class_& class_< type_, options >::def_buffer ( Return(Class::*)(Args...)  func)
inline

Definition at line 1386 of file pybind11.h.

◆ def_cast()

template<typename type_ , typename... options>
template<detail::op_id id, detail::op_type ot, typename L , typename R , typename... Extra>
class_& class_< type_, options >::def_cast ( const detail::op_< id, ot, L, R > &  op,
const Extra &...  extra 
)
inline

Definition at line 1339 of file pybind11.h.

◆ def_property() [1/3]

template<typename type_ , typename... options>
template<typename... Extra>
class_& class_< type_, options >::def_property ( const char *  name,
const cpp_function fget,
const cpp_function fset,
const Extra &...  extra 
)
inline

Uses cpp_function's return_value_policy by default.

Definition at line 1465 of file pybind11.h.

◆ def_property() [2/3]

template<typename type_ , typename... options>
template<typename Getter , typename... Extra>
class_& class_< type_, options >::def_property ( const char *  name,
const Getter &  fget,
const cpp_function fset,
const Extra &...  extra 
)
inline

Definition at line 1458 of file pybind11.h.

◆ def_property() [3/3]

template<typename type_ , typename... options>
template<typename Getter , typename Setter , typename... Extra>
class_& class_< type_, options >::def_property ( const char *  name,
const Getter &  fget,
const Setter &  fset,
const Extra &...  extra 
)
inline

Uses return_value_policy::reference_internal by default.

Definition at line 1454 of file pybind11.h.

◆ def_property_readonly() [1/2]

template<typename type_ , typename... options>
template<typename... Extra>
class_& class_< type_, options >::def_property_readonly ( const char *  name,
const cpp_function fget,
const Extra &...  extra 
)
inline

Uses cpp_function's return_value_policy by default.

Definition at line 1436 of file pybind11.h.

◆ def_property_readonly() [2/2]

template<typename type_ , typename... options>
template<typename Getter , typename... Extra>
class_& class_< type_, options >::def_property_readonly ( const char *  name,
const Getter &  fget,
const Extra &...  extra 
)
inline

Uses return_value_policy::reference_internal by default.

Definition at line 1429 of file pybind11.h.

◆ def_property_readonly_static() [1/2]

template<typename type_ , typename... options>
template<typename... Extra>
class_& class_< type_, options >::def_property_readonly_static ( const char *  name,
const cpp_function fget,
const Extra &...  extra 
)
inline

Uses cpp_function's return_value_policy by default.

Definition at line 1448 of file pybind11.h.

◆ def_property_readonly_static() [2/2]

template<typename type_ , typename... options>
template<typename Getter , typename... Extra>
class_& class_< type_, options >::def_property_readonly_static ( const char *  name,
const Getter &  fget,
const Extra &...  extra 
)
inline

Uses return_value_policy::reference by default.

Definition at line 1442 of file pybind11.h.

◆ def_property_static() [1/2]

template<typename type_ , typename... options>
template<typename... Extra>
class_& class_< type_, options >::def_property_static ( const char *  name,
const cpp_function fget,
const cpp_function fset,
const Extra &...  extra 
)
inline

Uses cpp_function's return_value_policy by default.

Definition at line 1477 of file pybind11.h.

◆ def_property_static() [2/2]

template<typename type_ , typename... options>
template<typename Getter , typename... Extra>
class_& class_< type_, options >::def_property_static ( const char *  name,
const Getter &  fget,
const cpp_function fset,
const Extra &...  extra 
)
inline

Uses return_value_policy::reference by default.

Definition at line 1471 of file pybind11.h.

◆ def_readonly()

template<typename type_ , typename... options>
template<typename C , typename D , typename... Extra>
class_& class_< type_, options >::def_readonly ( const char *  name,
const D C::*  pm,
const Extra &...  extra 
)
inline

Definition at line 1405 of file pybind11.h.

◆ def_readonly_static()

template<typename type_ , typename... options>
template<typename D , typename... Extra>
class_& class_< type_, options >::def_readonly_static ( const char *  name,
const D *  pm,
const Extra &...  extra 
)
inline

Definition at line 1421 of file pybind11.h.

◆ def_readwrite()

template<typename type_ , typename... options>
template<typename C , typename D , typename... Extra>
class_& class_< type_, options >::def_readwrite ( const char *  name,
D C::*  pm,
const Extra &...  extra 
)
inline

Definition at line 1396 of file pybind11.h.

◆ def_readwrite_static()

template<typename type_ , typename... options>
template<typename D , typename... Extra>
class_& class_< type_, options >::def_readwrite_static ( const char *  name,
D *  pm,
const Extra &...  extra 
)
inline

Definition at line 1413 of file pybind11.h.

◆ def_static()

template<typename type_ , typename... options>
template<typename Func , typename... Extra>
class_& class_< type_, options >::def_static ( const char *  name_,
Func &&  f,
const Extra &...  extra 
)
inline

Definition at line 1323 of file pybind11.h.

Member Data Documentation

◆ has_alias

template<typename type_ , typename... options>
constexpr static bool class_< type_, options >::has_alias = !std::is_void<type_alias>::value
staticconstexpr

Definition at line 1254 of file pybind11.h.


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