16 releases
Uses new Rust 2024
| 0.4.3 | Mar 28, 2025 |
|---|---|
| 0.4.2 | Mar 28, 2025 |
| 0.3.6 | Sep 26, 2023 |
| 0.3.5 | Aug 31, 2023 |
| 0.1.2 | Aug 11, 2023 |
#145 in Windows APIs
794 downloads per month
Used in sap-scripting
18KB
418 lines
COM Shim
Easily write interfaces that can read from COM, without worrying about the underlying functionality (unless you want to!).
Example
use com_shim::com_shim;
com_shim! {
struct GuiComponent {
Text: String,
}
}
com_shim! {
struct GuiVComponent {
fn SetFocus(),
}
}
com_shim! {
struct GuiTextField: GuiVComponent + GuiComponent {
CaretPosition: i64,
DisplayedText: String,
mut Highlighted: bool,
fn GetListProperty(String) -> GuiComponent,
}
}
fn main() {
// The following call now would trigger a COM call:
// let a: GuiTextField;
// a.get_list_property("property");
}
You can also see it implemented in the sap-scripting package.
Dependencies
~129MB
~2M SLoC