jharmer95 / rpc.hpp

A simple header-only library for supporting remote procedure calls using a variety of extensible features
BSD 3-Clause "New" or "Revised" License
4 stars 2 forks source link

[FEATURE REQUEST] Support more STL containers #71

Open jharmer95 opened 2 years ago

jharmer95 commented 2 years ago

Feature Request: Support more STL containers

Brief Summary of Request

Currently, this library only supports sequential containers like std::vector and std::array, but other container types should also have built-in support.

These include:

As well as container adapters:

And a few other popular data structures:

What Is The Value Added With This Feature

Easier serialization without user-defined functions.

Desired Outcome

// server
void UseMap(std::map<int, std::string> map);

// client
MyClient client;
std::map<int, std::string> my_map;

client.call_func("UseMap", my_map);

Other Details

This may be updated/replaced when C++20 is adopted.

jharmer95 commented 2 years ago

It would be nice to have the support for containers be in separate headers (like adapters) to reduce the number of STL dependencies of #include <rpc.hpp> (at least until C++20).