about summary refs log tree commit diff
diff options
context:
space:
mode:
authorJeff Olson <olson.jeffery@gmail.com>2012-04-16 13:07:18 -0700
committerBrian Anderson <banderson@mozilla.com>2012-04-20 15:23:22 -0700
commite6f6a8ced4797b02a86c5143334f18a582db8d2e (patch)
tree349793e5e9d7b6de9493b156fa3fd48b68d5bfa5
parent12f2f4c15c467991d5675bbc4be7f7c2012ee5d3 (diff)
downloadrust-e6f6a8ced4797b02a86c5143334f18a582db8d2e.tar.gz
rust-e6f6a8ced4797b02a86c5143334f18a582db8d2e.zip
tweaking rust getter/setters for libuv data to use generics
-rw-r--r--src/libstd/uv_ll.rs15
1 files changed, 8 insertions, 7 deletions
diff --git a/src/libstd/uv_ll.rs b/src/libstd/uv_ll.rs
index cd2a3219196..8934d29b103 100644
--- a/src/libstd/uv_ll.rs
+++ b/src/libstd/uv_ll.rs
@@ -732,9 +732,9 @@ unsafe fn timer_t() -> uv_timer_t {
 }
 
 // data access helpers
-unsafe fn get_loop_for_uv_handle(handle: *libc::c_void)
+unsafe fn get_loop_for_uv_handle<T>(handle: *T)
     -> *libc::c_void {
-    ret rustrt::rust_uv_get_loop_for_uv_handle(handle);
+    ret rustrt::rust_uv_get_loop_for_uv_handle(handle as *libc::c_void);
 }
 unsafe fn get_stream_handle_from_connect_req(connect: *uv_connect_t)
     -> *uv_stream_t {
@@ -753,12 +753,13 @@ unsafe fn get_data_for_uv_loop(loop_ptr: *libc::c_void) -> *libc::c_void {
 unsafe fn set_data_for_uv_loop(loop_ptr: *libc::c_void, data: *libc::c_void) {
     rustrt::rust_uv_set_data_for_uv_loop(loop_ptr, data);
 }
-unsafe fn get_data_for_uv_handle(handle: *libc::c_void) -> *libc::c_void {
-    ret rustrt::rust_uv_get_data_for_uv_handle(handle);
+unsafe fn get_data_for_uv_handle<T>(handle: *T) -> *libc::c_void {
+    ret rustrt::rust_uv_get_data_for_uv_handle(handle as *libc::c_void);
 }
-unsafe fn set_data_for_uv_handle(handle: *libc::c_void,
-                    data: *libc::c_void) {
-    rustrt::rust_uv_set_data_for_uv_handle(handle, data);
+unsafe fn set_data_for_uv_handle<T, U>(handle: *T,
+                    data: *U) {
+    rustrt::rust_uv_set_data_for_uv_handle(handle as *libc::c_void,
+                                           data as *libc::c_void);
 }
 unsafe fn get_data_for_req(req: *libc::c_void) -> *libc::c_void {
     ret rustrt::rust_uv_get_data_for_req(req);