10个不稳定版本 (3个破坏性更新)

0.4.0 2024年8月5日
0.3.2 2024年7月4日
0.2.0 2024年5月30日
0.1.4 2024年5月30日

20#optional

Download history 315/week @ 2024-05-27 4/week @ 2024-06-03 2/week @ 2024-06-10 283/week @ 2024-07-01 12/week @ 2024-07-08 3/week @ 2024-07-29 122/week @ 2024-08-05 10/week @ 2024-08-12

每月135次 下载
用于 mailing-list

GPL-3.0 许可

14KB

mlpa

mlpa是一个用于编写邮件列表插件的API库

示例

一个问候语的插件

use std::ffi::CStr;
use std::os::raw::c_char;
use mlpa::Plugin;

#[no_mangle]
pub extern "C" fn get_plugin() -> Plugin {
    use mlpa::Optional::Some;
    Plugin {
        message_handler: Some(message_handler),
    }
}

extern "C" fn message_handler(message: *const c_char) {
    let message = unsafe { CStr::from_ptr(message) };
    let message = String::from_utf8_lossy(message.to_bytes()).to_string();

    println!("Hello from plugin!");
    println!("Message: {message}");
}

构建和使用在邮件列表中

  1. 添加到 Cargo.toml
[lib]
crate-type = ["dylib"]
  1. 构建您的插件
  2. 添加到 daemon.toml
plugins = [
    "[your plugin]"
]

无运行时依赖