Classes | Typedefs | Functions
stl_bind.h File Reference
#include "detail/common.h"
#include "operators.h"
#include <algorithm>
#include <sstream>
Include dependency graph for stl_bind.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  container_traits< T >
 
struct  is_comparable< T, SFINAE >
 
struct  is_comparable< T, enable_if_t< container_traits< T >::is_element &&container_traits< T >::is_comparable > >
 
struct  is_comparable< T, enable_if_t< container_traits< T >::is_pair > >
 
struct  is_comparable< T, enable_if_t< container_traits< T >::is_vector > >
 
struct  value< Vector >
 
struct  vector_has_data_and_format< Vector, typename >
 

Typedefs

template<typename Vector >
using vector_needs_copy = negation< std::is_same< decltype(std::declval< Vector >()[typename Vector::size_type()]), typename Vector::value_type & >>
 

Functions

template<typename Map , typename holder_type = std::unique_ptr<Map>, typename... Args>
class_< Map, holder_type > bind_map (handle scope, const std::string &name, Args &&...args)
 
template<typename Vector , typename holder_type = std::unique_ptr<Vector>, typename... Args>
class_< Vector, holder_type > bind_vector (handle scope, std::string const &name, Args &&...args)
 
template<typename , typename , typename... Args>
void map_assignment (const Args &...)
 
template<typename Map , typename Class_ >
void map_assignment (enable_if_t< is_copy_assignable< typename Map::mapped_type >::value, Class_ > &cl)
 
template<typename Map , typename Class_ >
void map_assignment (enable_if_t< !is_copy_assignable< typename Map::mapped_type >::value &&is_copy_constructible< typename Map::mapped_type >::value, Class_ > &cl)
 
template<typename , typename , typename... Args>
void map_if_insertion_operator (const Args &...)
 
template<typename Map , typename Class_ >
auto map_if_insertion_operator (Class_ &cl, std::string const &name) -> decltype(std::declval< std::ostream & >()<< std::declval< typename Map::key_type >()<< std::declval< typename Map::mapped_type >(), void())
 
template<typename Vector , typename Class_ >
void vector_accessor (enable_if_t<!vector_needs_copy< Vector >::value, Class_ > &cl)
 
template<typename Vector , typename Class_ >
void vector_accessor (enable_if_t< vector_needs_copy< Vector >::value, Class_ > &cl)
 
template<typename Vector , typename Class_ , typename... Args>
enable_if_t< detail::any_of< std::is_same< Args, buffer_protocol >... >::value > vector_buffer (Class_ &cl)
 
template<typename Vector , typename Class_ , typename... Args>
enable_if_t<!detail::any_of< std::is_same< Args, buffer_protocol >... >::value > vector_buffer (Class_ &)
 
template<typename , typename , typename... Args>
void vector_if_copy_constructible (const Args &...)
 
template<typename Vector , typename Class_ >
void vector_if_copy_constructible (enable_if_t< is_copy_constructible< Vector >::value, Class_ > &cl)
 
template<typename , typename , typename... Args>
void vector_if_equal_operator (const Args &...)
 
template<typename Vector , typename Class_ >
void vector_if_equal_operator (enable_if_t< is_comparable< Vector >::value, Class_ > &cl)
 
template<typename , typename , typename... Args>
void vector_if_insertion_operator (const Args &...)
 
template<typename Vector , typename Class_ >
auto vector_if_insertion_operator (Class_ &cl, std::string const &name) -> decltype(std::declval< std::ostream & >()<< std::declval< typename Vector::value_type >(), void())
 
template<typename , typename , typename... Args>
void vector_modifiers (const Args &...)
 
template<typename Vector , typename Class_ >
void vector_modifiers (enable_if_t< is_copy_constructible< typename Vector::value_type >::value, Class_ > &cl)
 

Typedef Documentation

template<typename Vector >
using vector_needs_copy = negation< std::is_same<decltype(std::declval<Vector>()[typename Vector::size_type()]), typename Vector::value_type &>>

Definition at line 288 of file stl_bind.h.

Function Documentation

template<typename Map , typename holder_type = std::unique_ptr<Map>, typename... Args>
class_<Map, holder_type> bind_map ( handle  scope,
const std::string &  name,
Args &&...  args 
)

Definition at line 588 of file stl_bind.h.

template<typename Vector , typename holder_type = std::unique_ptr<Vector>, typename... Args>
class_<Vector, holder_type> bind_vector ( handle  scope,
std::string const &  name,
Args &&...  args 
)

Definition at line 427 of file stl_bind.h.

template<typename , typename , typename... Args>
void map_assignment ( const Args &  ...)

Definition at line 523 of file stl_bind.h.

template<typename Map , typename Class_ >
void map_assignment ( enable_if_t< is_copy_assignable< typename Map::mapped_type >::value, Class_ > &  cl)

Definition at line 527 of file stl_bind.h.

template<typename Map , typename Class_ >
void map_assignment ( enable_if_t< !is_copy_assignable< typename Map::mapped_type >::value &&is_copy_constructible< typename Map::mapped_type >::value, Class_ > &  cl)

Definition at line 542 of file stl_bind.h.

template<typename , typename , typename... Args>
void map_if_insertion_operator ( const Args &  ...)

Definition at line 522 of file stl_bind.h.

template<typename Map , typename Class_ >
auto map_if_insertion_operator ( Class_ &  cl,
std::string const &  name 
) -> decltype(std::declval<std::ostream&>() << std::declval<typename Map::key_type>() << std::declval<typename Map::mapped_type>(), void())

Definition at line 563 of file stl_bind.h.

template<typename Vector , typename Class_ >
void vector_accessor ( enable_if_t<!vector_needs_copy< Vector >::value, Class_ > &  cl)

Definition at line 292 of file stl_bind.h.

template<typename Vector , typename Class_ >
void vector_accessor ( enable_if_t< vector_needs_copy< Vector >::value, Class_ > &  cl)

Definition at line 326 of file stl_bind.h.

template<typename Vector , typename Class_ , typename... Args>
enable_if_t<detail::any_of<std::is_same<Args, buffer_protocol>...>::value> vector_buffer ( Class_ &  cl)

Definition at line 381 of file stl_bind.h.

template<typename Vector , typename Class_ , typename... Args>
enable_if_t<!detail::any_of<std::is_same<Args, buffer_protocol>...>::value> vector_buffer ( Class_ &  )

Definition at line 419 of file stl_bind.h.

template<typename , typename , typename... Args>
void vector_if_copy_constructible ( const Args &  ...)

Definition at line 63 of file stl_bind.h.

template<typename Vector , typename Class_ >
void vector_if_copy_constructible ( enable_if_t< is_copy_constructible< Vector >::value, Class_ > &  cl)

Definition at line 69 of file stl_bind.h.

template<typename , typename , typename... Args>
void vector_if_equal_operator ( const Args &  ...)

Definition at line 64 of file stl_bind.h.

template<typename Vector , typename Class_ >
void vector_if_equal_operator ( enable_if_t< is_comparable< Vector >::value, Class_ > &  cl)

Definition at line 74 of file stl_bind.h.

template<typename , typename , typename... Args>
void vector_if_insertion_operator ( const Args &  ...)

Definition at line 65 of file stl_bind.h.

template<typename Vector , typename Class_ >
auto vector_if_insertion_operator ( Class_ &  cl,
std::string const &  name 
) -> decltype(std::declval<std::ostream&>() << std::declval<typename Vector::value_type>(), void())

Definition at line 351 of file stl_bind.h.

template<typename , typename , typename... Args>
void vector_modifiers ( const Args &  ...)

Definition at line 66 of file stl_bind.h.

template<typename Vector , typename Class_ >
void vector_modifiers ( enable_if_t< is_copy_constructible< typename Vector::value_type >::value, Class_ > &  cl)

Slicing protocol

Definition at line 113 of file stl_bind.h.



gtsam
Author(s):
autogenerated on Sat May 8 2021 02:51:40