1
1
Fork 0
mirror of https://github.com/oxen-io/lokinet synced 2023-12-14 06:53:00 +01:00
lokinet/pybind/common.hpp

94 lines
1.6 KiB
C++
Raw Normal View History

2020-01-17 14:22:08 +01:00
#pragma once
#include <pybind11/pybind11.h>
2020-02-28 03:19:47 +01:00
#include <pybind11/stl.h>
2020-02-28 19:44:27 +01:00
#include <pybind11/functional.h>
2020-01-17 14:22:08 +01:00
#include <nonstd/optional.hpp>
#include <unordered_map>
2020-01-17 14:22:08 +01:00
namespace py = pybind11;
2020-02-28 03:19:47 +01:00
namespace pybind11
{
2020-03-07 02:20:11 +01:00
namespace detail
{
template < typename Key, typename Value, typename Hash, typename Equal,
typename Alloc >
struct type_caster<
std::unordered_multimap< Key, Value, Hash, Equal, Alloc > >
: map_caster< std::unordered_multimap< Key, Value, Hash, Equal, Alloc >,
Key, Value >
{
};
template < typename T >
struct type_caster< nonstd::optional< T > >
: public optional_caster< nonstd::optional< T > >
{
};
/*
template <typename CharT, class Traits>
struct type_caster<simple_string_view>
: string_caster<simple_string_view, true> {};
*/
} // namespace detail
} // namespace pybind11
2020-02-28 03:19:47 +01:00
2020-01-17 14:22:08 +01:00
namespace llarp
{
void
Context_Init(py::module &mod);
2020-01-17 16:06:08 +01:00
void
CryptoTypes_Init(py::module &mod);
void
RouterID_Init(py::module &mod);
2020-01-17 14:22:08 +01:00
void
RouterContact_Init(py::module &mod);
2020-02-27 23:05:25 +01:00
void
2020-03-07 02:20:11 +01:00
Config_Init(py::module &mod);
2020-02-27 23:05:25 +01:00
void
2020-03-07 02:20:11 +01:00
PathTypes_Init(py::module &mod);
namespace dht
{
void
2020-03-07 02:20:11 +01:00
DHTTypes_Init(py::module &mod);
}
namespace path
{
void
2020-03-07 02:20:11 +01:00
PathHopConfig_Init(py::module &mod);
}
2020-02-28 17:29:15 +01:00
namespace handlers
{
void
2020-03-07 02:20:11 +01:00
PyHandler_Init(py::module &mod);
2020-02-28 17:29:15 +01:00
}
2020-03-07 02:20:11 +01:00
namespace service
2020-02-28 17:29:15 +01:00
{
2020-03-07 02:20:11 +01:00
void
2020-02-28 17:29:15 +01:00
Address_Init(py::module &mod);
}
2020-01-17 14:22:08 +01:00
} // namespace llarp
2020-02-27 22:30:45 +01:00
namespace tooling
{
void
2020-03-07 02:20:11 +01:00
RouterHive_Init(py::module &mod);
2020-02-28 03:19:47 +01:00
void
2020-03-07 02:20:11 +01:00
RouterEvent_Init(py::module &mod);
} // namespace tooling