All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Make
CArray
fields public
0.6.1 - 2023-03-23
- Performance improvements for
CReprOf
andAsRust
ofCArray
when using primitive types
- Add missing impl of
RawPointerConverter
forCStringArray
0.6.0 - 2023-01-18
CDrop
CReprOf
andAsRust
are now implemented for fixed size arrays.
- Updated rust edition to 2021
- Removed legacy
CReprOfConvertOverrideArgs
andTargetNameArgs
struct that weren't used in the api anymore
0.5.0 - 2021-02-23
CDrop
andCReprOf
are now implemented foru8
andi8
.
bool
in Rust is no longer converted tou8
in C. Instead it is converted tobool
, which is guaranteed to be the same as_Bool
in C.- The
size
field ofCStringArray
is now anusize
0.4.0 - 2020-12-17
as_rust_extra_field
attribute forAsRust
custom derive, can be used to specify initialize fields in the rust struct that are not present in the C onec_repr_of_convert
attribute forCReprOf
custom derive, can be used to perform custom conversion. Note that fields with this attribute are ignored by theAsRust
custom derive.target_name
attribute forAsRust
andCReprOf
custom derive, can be used if a field has different names in rust and C
RawPointerConverter
no longer has a blanket implementation for all types (this could to easily be misused leading to nasty errors), the trait as been reworked to include mut variants, and a custom derive has been added for it
- Missing
Drop
implementation forCStringArray
causing memory leaks
- Removed the
point_to_string
legacy function (this should have been markedunsafe
and has no place in this crate)
0.3.0 - 2020-10-05
CReprOf
,CDrop
andAsRust
implementations forbool
- Typos in doc
- Error management is now using
thiserror
instead offailure
- Legacy conversion macros, use directly the traits instead
0.2.2 - 2020-06-15
Debug
impl forCArray<T>
0.2.1 - 2020-04-08
CDrop
custom derive now honors the#[nullable]
field attribute
0.2.0 - 2020-03-32
CRange
a struct representing aRange
with implementations forCReprOf
,CDrop
andAsRust
0.1.2 - 2020-03-23
- use fully qualified names in macros
0.1.1 - 2020-03-19
- double free on pointer fields
0.1.0 - 2020-03-17
- first release