12 个版本

0.3.6 2023年9月26日
0.3.5 2023年8月31日
0.2.2 2023年8月11日
0.1.2 2023年8月11日

#6 in #i64

每月 28 次下载
用于 sap-scripting

MIT 许可证

18KB
424 行代码(不含注释)

COM 适配器

轻松编写可以从 COM 读取的接口,无需担心底层功能(除非你想这么做!)。

示例

use com_shim::com_shim;

com_shim! {
    class GuiComponent {
        Text: String,
    }
}

com_shim! {
    class GuiVComponent {
        fn SetFocus(),
    }
}

com_shim! {
    class 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");
}

您还可以在 sap-scripting 包中看到其实现。

依赖项

~130MB
~2M SLoC