I think we will want:
| Haskell |
Rust argument |
Status |
StorableArray Int a |
&mut [a'] |
see #12 |
Vector a |
Vec<a'> |
|
StablePtr a |
*const a' |
|
() |
() |
Done |
(a,b) |
(a',b') |
Done |
(a,b,c) |
(a',b',c') |
Done |
Storable data |
corresponding #[repr(C)] struct |
Done |
ByteString |
&[u8] |
see #12 |
Maybe a |
Option<a'> |
Done |
Either e a |
Result<a',e'> |
Done |
I'm still undecided on what to do around strings. I also feel like we could make good use of box somewhere here...
I think we will want:
StorableArray Int a&mut [a']Vector aVec<a'>StablePtr a*const a'()()(a,b)(a',b')(a,b,c)(a',b',c')Storabledata#[repr(C)]structByteString&[u8]Maybe aOption<a'>Either e aResult<a',e'>I'm still undecided on what to do around strings. I also feel like we could make good use of
boxsomewhere here...