diff options
author | Moonchild <mcwerewolf@gmail.com> | 2018-03-13 14:55:45 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-03-13 14:55:45 +0100 |
commit | 5462c415744a64899dcd344dee42075f9154741b (patch) | |
tree | bbbb7df9a9f18c5fd3caf406d7f5bc9e13168d1f /netwerk/base/rust-url-capi/src/string_utils.rs | |
parent | 90e68c3e3f4bb2f1a427a01586981e62bf74b898 (diff) | |
parent | 38d185280e2cad4ed6673bb38f707f54dad4ded7 (diff) | |
download | UXP-5462c415744a64899dcd344dee42075f9154741b.tar UXP-5462c415744a64899dcd344dee42075f9154741b.tar.gz UXP-5462c415744a64899dcd344dee42075f9154741b.tar.lz UXP-5462c415744a64899dcd344dee42075f9154741b.tar.xz UXP-5462c415744a64899dcd344dee42075f9154741b.zip |
Merge pull request #59 from MoonchildProductions/Evapo-Rust
Remove all rust components and libs.
Diffstat (limited to 'netwerk/base/rust-url-capi/src/string_utils.rs')
-rw-r--r-- | netwerk/base/rust-url-capi/src/string_utils.rs | 57 |
1 files changed, 0 insertions, 57 deletions
diff --git a/netwerk/base/rust-url-capi/src/string_utils.rs b/netwerk/base/rust-url-capi/src/string_utils.rs deleted file mode 100644 index ae68a60dc..000000000 --- a/netwerk/base/rust-url-capi/src/string_utils.rs +++ /dev/null @@ -1,57 +0,0 @@ -extern crate libc; -use libc::size_t; - -extern crate std; -use std::ptr; - -use error_mapping::*; - -extern "C" { - fn c_fn_set_size(user: *mut libc::c_void, size: size_t) -> i32; - fn c_fn_get_buffer(user: *mut libc::c_void) -> *mut libc::c_char; -} - -pub trait StringContainer { - fn set_size(&self, size_t) -> i32; - fn get_buffer(&self) -> *mut libc::c_char; - fn assign(&self, content: &str) -> i32; -} - -impl StringContainer for *mut libc::c_void { - fn set_size(&self, size: size_t) -> i32 { - if (*self).is_null() { - return NSError::InvalidArg.error_code(); - } - unsafe { - c_fn_set_size(*self, size); - } - - return NSError::OK.error_code(); - } - fn get_buffer(&self) -> *mut libc::c_char { - if (*self).is_null() { - return 0 as *mut libc::c_char; - } - unsafe { - c_fn_get_buffer(*self) - } - } - fn assign(&self, content: &str) -> i32 { - if (*self).is_null() { - return NSError::InvalidArg.error_code(); - } - - unsafe { - let slice = content.as_bytes(); - c_fn_set_size(*self, slice.len()); - let buf = c_fn_get_buffer(*self); - if buf.is_null() { - return NSError::Failure.error_code(); - } - - ptr::copy(slice.as_ptr(), buf as *mut u8, slice.len()); - } - - NSError::OK.error_code() - } -} |