μHAL (v2.8.17)
Part of the IPbus software repository
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Public Types | Public Member Functions | Private Attributes | List of all members
enum_< Type > Class Template Reference

Binds C++ enumerations and enumeration classes to Python. More...

#include </builds/ipbus/ipbus-software/uhal/python/pybind11-python2/include/pybind11/pybind11.h>

Inheritance diagram for enum_< Type >:
[legend]
Collaboration diagram for enum_< Type >:
[legend]

Public Types

using Base = class_< Type >
 
using Underlying = typename std::underlying_type< Type >::type
 
using Scalar = detail::conditional_t< detail::any_of< detail::is_std_char_type< Underlying >, std::is_same< Underlying, bool > >::value, detail::equivalent_integer_t< Underlying >, Underlying >
 
using Base = class_< Type >
 
using Underlying = typename std::underlying_type< Type >::type
 
using Scalar = detail::conditional_t< detail::any_of< detail::is_std_char_type< Underlying >, std::is_same< Underlying, bool > >::value, detail::equivalent_integer_t< Underlying >, Underlying >
 
- Public Types inherited from class_< Type >
using type = Type
 
using type = Type
 
using type_alias = detail::exactly_one_t< is_subtype, void, options... >
 
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... >
 
using holder_type = detail::exactly_one_t< is_holder, std::unique_ptr< type >, options... >
 

Public Member Functions

template<typename... Extra>
 enum_ (const handle &scope, const char *name, const Extra &...extra)
 
enum_export_values ()
 Export enumeration entries into the parent scope. More...
 
enum_value (char const *name, Type value, const char *doc=nullptr)
 Add an enumeration entry. More...
 
template<typename... Extra>
 enum_ (const handle &scope, const char *name, const Extra &...extra)
 
enum_export_values ()
 Export enumeration entries into the parent scope. More...
 
enum_value (char const *name, Type value, const char *doc=nullptr)
 Add an enumeration entry. More...
 
- Public Member Functions inherited from class_< Type >
 class_ (handle scope, const char *name, const Extra &...extra)
 
 class_ (handle scope, const char *name, const Extra &...extra)
 
class_def (const char *name_, Func &&f, const Extra &...extra)
 
class_def (const detail::op_< id, ot, L, R > &op, const Extra &...extra)
 
class_def (const detail::initimpl::constructor< Args... > &init, const Extra &...extra)
 
class_def (const detail::initimpl::alias_constructor< Args... > &init, const Extra &...extra)
 
class_def (detail::initimpl::factory< Args... > &&init, const Extra &...extra)
 
class_def (detail::initimpl::pickle_factory< Args... > &&pf, const Extra &...extra)
 
class_def (const char *name_, Func &&f, const Extra &...extra)
 
class_def (const T &op, const Extra &...extra)
 
class_def (const detail::initimpl::constructor< Args... > &init, const Extra &...extra)
 
class_def (const detail::initimpl::alias_constructor< Args... > &init, const Extra &...extra)
 
class_def (detail::initimpl::factory< Args... > &&init, const Extra &...extra)
 
class_def (detail::initimpl::pickle_factory< Args... > &&pf, const Extra &...extra)
 
class_def_static (const char *name_, Func &&f, const Extra &...extra)
 
class_def_static (const char *name_, Func &&f, const Extra &...extra)
 
class_def_cast (const detail::op_< id, ot, L, R > &op, const Extra &...extra)
 
class_def_cast (const T &op, const Extra &...extra)
 
class_def_buffer (Func &&func)
 
class_def_buffer (Return(Class::*func)(Args...))
 
class_def_buffer (Return(Class::*func)(Args...) const)
 
class_def_buffer (Func &&func)
 
class_def_buffer (Return(Class::*func)(Args...))
 
class_def_buffer (Return(Class::*func)(Args...) const)
 
class_def_readwrite (const char *name, D C::*pm, const Extra &...extra)
 
class_def_readwrite (const char *name, D C::*pm, const Extra &...extra)
 
class_def_readonly (const char *name, const D C::*pm, const Extra &...extra)
 
class_def_readonly (const char *name, const D C::*pm, const Extra &...extra)
 
class_def_readwrite_static (const char *name, D *pm, const Extra &...extra)
 
class_def_readwrite_static (const char *name, D *pm, const Extra &...extra)
 
class_def_readonly_static (const char *name, const D *pm, const Extra &...extra)
 
class_def_readonly_static (const char *name, const D *pm, const Extra &...extra)
 
class_def_property_readonly (const char *name, const Getter &fget, const Extra &...extra)
 Uses return_value_policy::reference_internal by default. More...
 
class_def_property_readonly (const char *name, const cpp_function &fget, const Extra &...extra)
 Uses cpp_function's return_value_policy by default. More...
 
class_def_property_readonly (const char *name, const Getter &fget, const Extra &...extra)
 Uses return_value_policy::reference_internal by default. More...
 
class_def_property_readonly (const char *name, const cpp_function &fget, const Extra &...extra)
 Uses cpp_function's return_value_policy by default. More...
 
class_def_property_readonly_static (const char *name, const Getter &fget, const Extra &...extra)
 Uses return_value_policy::reference by default. More...
 
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...
 
class_def_property_readonly_static (const char *name, const Getter &fget, const Extra &...extra)
 Uses return_value_policy::reference by default. More...
 
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...
 
class_def_property (const char *name, const Getter &fget, const Setter &fset, const Extra &...extra)
 Uses return_value_policy::reference_internal by default. More...
 
class_def_property (const char *name, const Getter &fget, const cpp_function &fset, const Extra &...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...
 
class_def_property (const char *name, const Getter &fget, const Setter &fset, const Extra &...extra)
 Uses return_value_policy::reference_internal by default. More...
 
class_def_property (const char *name, const Getter &fget, const cpp_function &fset, const Extra &...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...
 
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...
 
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...
 
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...
 
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...
 

Private Attributes

detail::enum_base m_base
 

Additional Inherited Members

- Static Public Member Functions inherited from class_< Type >
static void add_base (detail::type_record &rec)
 
static void add_base (detail::type_record &)
 
static void add_base (detail::type_record &rec)
 
static void add_base (detail::type_record &)
 
- Static Public Attributes inherited from class_< Type >
static constexpr bool has_alias
 

Detailed Description

template<typename Type>
class enum_< Type >

Binds C++ enumerations and enumeration classes to Python.

Definition at line 2151 of file pybind11.h.

Member Typedef Documentation

◆ Base [1/2]

template<typename Type >
using enum_< Type >::Base = class_<Type>

Definition at line 2153 of file pybind11.h.

◆ Base [2/2]

template<typename Type >
using enum_< Type >::Base = class_<Type>

Definition at line 2164 of file pybind11.h.

◆ Scalar [1/2]

template<typename Type >
using enum_< Type >::Scalar = detail::conditional_t<detail::any_of<detail::is_std_char_type<Underlying>, std::is_same<Underlying, bool> >::value, detail::equivalent_integer_t<Underlying>, Underlying>

Definition at line 2160 of file pybind11.h.

◆ Scalar [2/2]

template<typename Type >
using enum_< Type >::Scalar = detail::conditional_t<detail::any_of<detail::is_std_char_type<Underlying>, std::is_same<Underlying, bool> >::value, detail::equivalent_integer_t<Underlying>, Underlying>

Definition at line 2171 of file pybind11.h.

◆ Underlying [1/2]

template<typename Type >
using enum_< Type >::Underlying = typename std::underlying_type<Type>::type

Definition at line 2158 of file pybind11.h.

◆ Underlying [2/2]

template<typename Type >
using enum_< Type >::Underlying = typename std::underlying_type<Type>::type

Definition at line 2169 of file pybind11.h.

Constructor & Destructor Documentation

◆ enum_() [1/2]

template<typename Type >
template<typename... Extra>
enum_< Type >::enum_ ( const handle scope,
const char *  name,
const Extra &...  extra 
)
inline

◆ enum_() [2/2]

template<typename Type >
template<typename... Extra>
enum_< Type >::enum_ ( const handle scope,
const char *  name,
const Extra &...  extra 
)
inline

Member Function Documentation

◆ export_values() [1/2]

template<typename Type >
enum_ & enum_< Type >::export_values ( )
inline

Export enumeration entries into the parent scope.

Definition at line 2191 of file pybind11.h.

References enum_< Type >::m_base.

◆ export_values() [2/2]

template<typename Type >
enum_ & enum_< Type >::export_values ( )
inline

Export enumeration entries into the parent scope.

Definition at line 2199 of file pybind11.h.

References enum_< Type >::m_base.

◆ value() [1/2]

template<typename Type >
enum_ & enum_< Type >::value ( char const *  name,
Type  value,
const char *  doc = nullptr 
)
inline

Add an enumeration entry.

Definition at line 2197 of file pybind11.h.

References enum_< Type >::m_base, and enum_< Type >::value().

Referenced by enum_< Type >::enum_(), and enum_< Type >::value().

◆ value() [2/2]

template<typename Type >
enum_ & enum_< Type >::value ( char const *  name,
Type  value,
const char *  doc = nullptr 
)
inline

Add an enumeration entry.

Definition at line 2205 of file pybind11.h.

References enum_< Type >::m_base, and enum_< Type >::value().

Member Data Documentation

◆ m_base

template<typename Type >
detail::enum_base enum_< Type >::m_base
private

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