#variant #interop #com #api-bindings #data-structures #safearray

oaidl

Crate to manage conversions to/from SAFEARRAY, VARIANT, and BSTR data structures in COM interop

7 releases

Uses old Rust 2015

0.2.1 Oct 21, 2018
0.2.0 Oct 20, 2018
0.1.4 Oct 9, 2018

#247 in Windows APIs

Download history 37/week @ 2023-12-04 3/week @ 2023-12-11 8/week @ 2023-12-18 12/week @ 2023-12-25 18/week @ 2024-01-08 16/week @ 2024-01-15 18/week @ 2024-01-22 15/week @ 2024-01-29 27/week @ 2024-02-05 24/week @ 2024-02-12 38/week @ 2024-02-19 69/week @ 2024-02-26 34/week @ 2024-03-04 40/week @ 2024-03-11 54/week @ 2024-03-18

200 downloads per month
Used in 2 crates

MIT license

99KB
2K SLoC

oaidl

Crates.io![docs.rs(https://docs.rs/oaidl/badge.svg)]

A crate to convert common Rust types to common COM/OLE types, primarily for use in FFI - BSTR, SAFEARRAY, and VARIANT are the three implemented here.

This crate provides traits and trait implementations to make it easy and safe to convert between Rust types and the FFI-compatible data types.

For reference, a SAFEARRAY of VARIANTs corresponds to a C# object[]. A VARIANT is considered an object by C# interop.

Documentation

License

This project is distributed under the terms of the MIT license (LICENSE-MIT or http://opensource.org/licenses/MIT)

Contributing

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you shall be licensed as above, without any additional terms or conditions.

Dependencies

~1.6–2.1MB
~37K SLoC