Initial wrapping of rpc-twoparty functionality

This commit is contained in:
Jason Paryani
2013-11-12 15:32:23 -08:00
parent 91c1bde833
commit 1df115d359
7 changed files with 198 additions and 32 deletions

View File

@@ -1,3 +1,5 @@
#pragma once
#include "capnp/dynamic.h"
#include <stdexcept>
#include "Python.h"
@@ -97,6 +99,10 @@ capnp::DynamicValue::Reader new_server(capnp::InterfaceSchema & schema, PyObject
return capnp::DynamicValue::Reader(kj::heap<PythonInterfaceDynamicImpl>(schema, server));
}
capnp::Capability::Client server_to_client(capnp::InterfaceSchema & schema, PyObject * server) {
return kj::heap<PythonInterfaceDynamicImpl>(schema, server);
}
::kj::Promise<PyObject *> convert_to_pypromise(capnp::RemotePromise<capnp::DynamicStruct> & promise) {
return promise.then([](capnp::Response<capnp::DynamicStruct>&& response) { return wrap_dynamic_struct_reader(response); } );
}
}