diff options
| author | Yuval Adam <_@yuv.al> | 2019-03-19 19:45:17 +0200 |
|---|---|---|
| committer | Yuval Adam <_@yuv.al> | 2019-03-19 19:45:17 +0200 |
| commit | 602f5de85eec2b32de56cd38d441f2af2d926e27 (patch) | |
| tree | 69086f655f93bd87e80d5e563bab3aa5e32f5008 /src | |
| parent | 4e5cac1c627648fd8ade50024490d541d0c6bf93 (diff) | |
Proper init() implementation
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib.rs | 12 |
1 files changed, 8 insertions, 4 deletions
@@ -1,17 +1,21 @@ extern crate bchlib_sys as ffi; -pub fn init(m:i32, t:i32, poly: u32) { - unsafe { - let bch = ffi::init_bch(m, t, poly); +struct BCH(ffi::bch_control); + +impl BCH { + fn init(m: i32, t: i32, poly: u32) -> BCH { + let bch = unsafe { *ffi::init_bch(m, t, poly) }; + BCH(bch) } } + #[cfg(test)] mod tests { use super::*; #[test] fn it_works() { - init(); + let bch = BCH::init(5, 2, 0); } } |
