Auto merge of #304 - waywardmonkeys:remove-core-foundation-transmutes, r=jdm
core-foundation: Remove unnecessary transmutes. <!-- Reviewable:start --> This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/core-foundation-rs/304) <!-- Reviewable:end -->
This commit is contained in:
@@ -66,7 +66,7 @@ impl<T> CFArray<T> {
|
||||
pub fn from_copyable(elems: &[T]) -> CFArray<T> where T: Copy {
|
||||
unsafe {
|
||||
let array_ref = CFArrayCreate(kCFAllocatorDefault,
|
||||
mem::transmute(elems.as_ptr()),
|
||||
elems.as_ptr() as *const *const c_void,
|
||||
elems.len().to_CFIndex(),
|
||||
ptr::null());
|
||||
TCFType::wrap_under_create_rule(array_ref)
|
||||
|
||||
@@ -11,7 +11,7 @@
|
||||
|
||||
use core_foundation_sys::base::kCFAllocatorDefault;
|
||||
pub use core_foundation_sys::number::*;
|
||||
use std::mem;
|
||||
use std::os::raw::c_void;
|
||||
|
||||
use base::TCFType;
|
||||
|
||||
@@ -30,7 +30,7 @@ impl CFNumber {
|
||||
pub fn to_i32(&self) -> Option<i32> {
|
||||
unsafe {
|
||||
let mut value: i32 = 0;
|
||||
let ok = CFNumberGetValue(self.0, kCFNumberSInt32Type, mem::transmute(&mut value));
|
||||
let ok = CFNumberGetValue(self.0, kCFNumberSInt32Type, &mut value as *mut i32 as *mut c_void);
|
||||
if ok { Some(value) } else { None }
|
||||
}
|
||||
}
|
||||
@@ -39,7 +39,7 @@ impl CFNumber {
|
||||
pub fn to_i64(&self) -> Option<i64> {
|
||||
unsafe {
|
||||
let mut value: i64 = 0;
|
||||
let ok = CFNumberGetValue(self.0, kCFNumberSInt64Type, mem::transmute(&mut value));
|
||||
let ok = CFNumberGetValue(self.0, kCFNumberSInt64Type, &mut value as *mut i64 as *mut c_void);
|
||||
if ok { Some(value) } else { None }
|
||||
}
|
||||
}
|
||||
@@ -48,7 +48,7 @@ impl CFNumber {
|
||||
pub fn to_f32(&self) -> Option<f32> {
|
||||
unsafe {
|
||||
let mut value: f32 = 0.0;
|
||||
let ok = CFNumberGetValue(self.0, kCFNumberFloat32Type, mem::transmute(&mut value));
|
||||
let ok = CFNumberGetValue(self.0, kCFNumberFloat32Type, &mut value as *mut f32 as *mut c_void);
|
||||
if ok { Some(value) } else { None }
|
||||
}
|
||||
}
|
||||
@@ -57,7 +57,7 @@ impl CFNumber {
|
||||
pub fn to_f64(&self) -> Option<f64> {
|
||||
unsafe {
|
||||
let mut value: f64 = 0.0;
|
||||
let ok = CFNumberGetValue(self.0, kCFNumberFloat64Type, mem::transmute(&mut value));
|
||||
let ok = CFNumberGetValue(self.0, kCFNumberFloat64Type, &mut value as *mut f64 as *mut c_void);
|
||||
if ok { Some(value) } else { None }
|
||||
}
|
||||
}
|
||||
@@ -70,7 +70,7 @@ impl From<i32> for CFNumber {
|
||||
let number_ref = CFNumberCreate(
|
||||
kCFAllocatorDefault,
|
||||
kCFNumberSInt32Type,
|
||||
mem::transmute(&value),
|
||||
&value as *const i32 as *const c_void,
|
||||
);
|
||||
TCFType::wrap_under_create_rule(number_ref)
|
||||
}
|
||||
@@ -84,7 +84,7 @@ impl From<i64> for CFNumber {
|
||||
let number_ref = CFNumberCreate(
|
||||
kCFAllocatorDefault,
|
||||
kCFNumberSInt64Type,
|
||||
mem::transmute(&value),
|
||||
&value as *const i64 as *const c_void,
|
||||
);
|
||||
TCFType::wrap_under_create_rule(number_ref)
|
||||
}
|
||||
@@ -98,7 +98,7 @@ impl From<f32> for CFNumber {
|
||||
let number_ref = CFNumberCreate(
|
||||
kCFAllocatorDefault,
|
||||
kCFNumberFloat32Type,
|
||||
mem::transmute(&value),
|
||||
&value as *const f32 as *const c_void,
|
||||
);
|
||||
TCFType::wrap_under_create_rule(number_ref)
|
||||
}
|
||||
@@ -112,7 +112,7 @@ impl From<f64> for CFNumber {
|
||||
let number_ref = CFNumberCreate(
|
||||
kCFAllocatorDefault,
|
||||
kCFNumberFloat64Type,
|
||||
mem::transmute(&value),
|
||||
&value as *const f64 as *const c_void,
|
||||
);
|
||||
TCFType::wrap_under_create_rule(number_ref)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user