diff options
| author | Jeff Olson <olson.jeffery@gmail.com> | 2012-03-30 07:19:45 -0700 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2012-04-06 15:35:49 -0700 |
| commit | 2c26cf7f96252aad623dd2ca688a8d9782fc57c5 (patch) | |
| tree | 2ac99558f17ca4cc0d27dbf175a1c8edc930e8bd /src/rt/rust_uv.cpp | |
| parent | 717632168515cc3249fa6610baf484713c132226 (diff) | |
| download | rust-2c26cf7f96252aad623dd2ca688a8d9782fc57c5.tar.gz rust-2c26cf7f96252aad623dd2ca688a8d9782fc57c5.zip | |
add low-level uv_async bindings for use in tcp test
Diffstat (limited to 'src/rt/rust_uv.cpp')
| -rw-r--r-- | src/rt/rust_uv.cpp | 27 |
1 files changed, 19 insertions, 8 deletions
diff --git a/src/rt/rust_uv.cpp b/src/rt/rust_uv.cpp index 7a6a79ce17b..6303bd700a6 100644 --- a/src/rt/rust_uv.cpp +++ b/src/rt/rust_uv.cpp @@ -167,15 +167,22 @@ rust_uv_async_send(uv_async_t* handle) { uv_async_send(handle); } +extern "C" int +rust_uv_async_init(uv_loop_t* loop_handle, + uv_async_t* async_handle, + uv_async_cb cb) { + return uv_async_init(loop_handle, async_handle, cb); +} + extern "C" void* -rust_uv_async_init(uv_loop_t* loop, crust_simple_cb cb, - uint8_t* buf) { - uv_async_t* async = (uv_async_t*)current_kernel_malloc( - sizeof(uv_async_t), - "uv_async_t"); - uv_async_init(loop, async, native_async_cb); - handle_data* data = new_handle_data_from(buf, cb); - async->data = data; +rust_uv_hilvl_async_init(uv_loop_t* loop, crust_simple_cb cb, + uint8_t* buf) { + uv_async_t* async = (uv_async_t*)current_kernel_malloc( + sizeof(uv_async_t), + "uv_async_t"); + uv_async_init(loop, async, native_async_cb); + handle_data* data = new_handle_data_from(buf, cb); + async->data = data; return async; } @@ -270,6 +277,10 @@ extern "C" size_t rust_uv_helper_sockaddr_in_size() { return sizeof(sockaddr_in); } +extern "C" size_t +rust_uv_helper_uv_async_t_size() { + return sizeof(uv_async_t); +} extern "C" uv_stream_t* rust_uv_get_stream_handle_from_connect_req(uv_connect_t* connect) { |
