mirror of
https://github.com/pybind/pybind11.git
synced 2024-11-26 07:02:11 +00:00
import size_t into pybind11 namespace (fixes #498)
This commit is contained in:
parent
0780655808
commit
06bd27f536
@ -93,6 +93,7 @@
|
|||||||
# pragma warning(pop)
|
# pragma warning(pop)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include <cstddef>
|
||||||
#include <forward_list>
|
#include <forward_list>
|
||||||
#include <vector>
|
#include <vector>
|
||||||
#include <string>
|
#include <string>
|
||||||
@ -182,7 +183,8 @@ extern "C" {
|
|||||||
|
|
||||||
NAMESPACE_BEGIN(pybind11)
|
NAMESPACE_BEGIN(pybind11)
|
||||||
|
|
||||||
typedef Py_ssize_t ssize_t;
|
using ssize_t = Py_ssize_t;
|
||||||
|
using size_t = std::size_t;
|
||||||
|
|
||||||
/// Approach used to cast a previously unknown C++ instance into a Python object
|
/// Approach used to cast a previously unknown C++ instance into a Python object
|
||||||
enum class return_value_policy : uint8_t {
|
enum class return_value_policy : uint8_t {
|
||||||
@ -320,7 +322,7 @@ template <typename type, typename holder_type = std::unique_ptr<type>> struct in
|
|||||||
};
|
};
|
||||||
|
|
||||||
struct overload_hash {
|
struct overload_hash {
|
||||||
inline std::size_t operator()(const std::pair<const PyObject *, const char *>& v) const {
|
inline size_t operator()(const std::pair<const PyObject *, const char *>& v) const {
|
||||||
size_t value = std::hash<const void *>()(v.first);
|
size_t value = std::hash<const void *>()(v.first);
|
||||||
value ^= std::hash<const void *>()(v.second) + 0x9e3779b9 + (value<<6) + (value>>2);
|
value ^= std::hash<const void *>()(v.second) + 0x9e3779b9 + (value<<6) + (value>>2);
|
||||||
return value;
|
return value;
|
||||||
|
Loading…
Reference in New Issue
Block a user