μHAL (v2.8.17)
Part of the IPbus software repository
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Typedefs | Functions
stl.h File Reference
#include "pybind11.h"
#include "detail/common.h"
#include <deque>
#include <iostream>
#include <list>
#include <map>
#include <set>
#include <unordered_map>
#include <unordered_set>
#include <valarray>
Include dependency graph for stl.h:

Go to the source code of this file.

Classes

struct  set_caster< Type, Key >
 
struct  map_caster< Type, Key, Value >
 
struct  list_caster< Type, Value >
 
struct  type_caster< std::vector< Type, Alloc > >
 
struct  type_caster< std::deque< Type, Alloc > >
 
struct  type_caster< std::list< Type, Alloc > >
 
struct  array_caster< ArrayType, Value, Resizable, Size >
 
struct  type_caster< std::array< Type, Size > >
 
struct  type_caster< std::valarray< Type > >
 
struct  type_caster< std::set< Key, Compare, Alloc > >
 
struct  type_caster< std::unordered_set< Key, Hash, Equal, Alloc > >
 
struct  type_caster< std::map< Key, Value, Compare, Alloc > >
 
struct  type_caster< std::unordered_map< Key, Value, Hash, Equal, Alloc > >
 
struct  optional_caster< Type, Value >
 
struct  variant_caster_visitor
 Visit a variant and cast any found type to Python. More...
 
struct  visit_helper< Variant >
 Helper class which abstracts away variant's visit function. More...
 
struct  variant_caster< V< Ts... > >
 

Typedefs

template<typename T , typename U >
using forwarded_type = conditional_t< std::is_lvalue_reference< T >::value, remove_reference_t< U > &, remove_reference_t< U > && >
 Extracts an const lvalue reference or rvalue reference for U based on the type of T (e.g. More...
 

Functions

template<typename T , typename U >
forwarded_type< T, U > forward_like (U &&u)
 Forwards a value U as rvalue or lvalue according to whether T is rvalue or lvalue; typically used for forwarding a container's elements. More...
 
std::ostream & operator<< (std::ostream &os, const handle &obj)
 

Typedef Documentation

◆ forwarded_type

template<typename T , typename U >
using forwarded_type = conditional_t<std::is_lvalue_reference<T>::value, remove_reference_t<U> &, remove_reference_t<U> &&>

Extracts an const lvalue reference or rvalue reference for U based on the type of T (e.g.

for forwarding a container element). Typically used indirect via forwarded_type(), below.

Definition at line 41 of file stl.h.

Function Documentation

◆ forward_like()

template<typename T , typename U >
forwarded_type< T, U > forward_like ( U &&  u)

Forwards a value U as rvalue or lvalue according to whether T is rvalue or lvalue; typically used for forwarding a container's elements.

Definition at line 48 of file stl.h.

◆ operator<<()

std::ostream & operator<< ( std::ostream &  os,
const handle obj 
)
inline

Definition at line 413 of file stl.h.

References object::cast().