MessagePack RPC implementation based on vibe.d
auto client = new TCPClient(Endpoint(18800, "127.0.0.1"));
// sync request
auto num = client.call!ulong("sum", 1, 2);
// async request: return a Future object
auto future = client.callAsync("sum", 1, 2);
// notify
client.notify("hello", "hoge");
class FooServer
{
ulong sum(ulong l, ulong r)
{
return l + r;
}
void hello(string msg)
{
writeln(msg);
}
}
// TCPServer or UDPServer
auto server = new TCPServer!(FooServer)(new FooServer);
server.listen(Endpoint(18800, "127.0.0.1"));
server.start();
module foo;
ulong sum(ulong l, ulong r)
{
return l + r;
}
void hello(string msg)
{
writeln(msg);
}
auto server = new TCPServer!(foo)();
// same as Object
-
MessagePack official site
-
Github repository
Author | Masahiro Nakagawa |
Copyright | Copyright (c) 2013- Masahiro Nakagawa |
License | MIT License |