6 个版本
0.3.0 | 2023年4月9日 |
---|---|
0.2.1 | 2023年2月23日 |
0.2.0 | 2023年1月21日 |
0.1.0 | 2022年12月11日 |
#47 in #plugin-system
每月下载量 55
用于 vplugin-package
81KB
546 行
但为什么呢?
自从我开始编程以来,我就一直在寻找一个合适的解决方案来创建插件API,而无需复制他人的代码。最终,我决定编写自己的库,这最终变成了一套功能齐全的工具,使我能够轻松地从零开始编写插件系统,而无需重复同样的工作1000次。
一般来说,VPlugin旨在成为您应用程序的基础模块,您将在其之上构建一切。VPlugin不仅会为您创建插件系统;它还会做那些底层的工作,并为您提供高级抽象。
选择版本
使用 master
树进行整个开发,所以除非您愿意承担项目突然无法编译的风险,否则请避免使用它。尽管尚未发布任何“稳定版本”(VPlugin通常被视为处于alpha状态),但您建议使用最新的crates.io 发布版,该版本已验证可以正常工作。
通常,升级版本可能会导致API破坏。这是自然的;请查看变更日志并相应地调整您的代码库。
特性
- 🚀 飞快的速度(多亏了Rust!)
- 🔥 易于使用,没有在灵活性上妥协。
- 💻 跨平台和可移植,将在大多数主要平台上运行。
- ❤️🔥 现代:忘记您代码中的糟糕解决方案和奇怪的错误。
MSRV
VPlugin官方只支持Rust语言的最新稳定版本。您可能能够将其编译到几个较旧版本上,但如果您的计算机崩溃或控制台上有大量错误消息,请不要感到困惑。
仓库内容
此仓库包含实现VPlugin的库,以及插件格式规范和其他一些相关内容。有关其他相关项目,请参阅GitHub 组织。
示例
示例应用程序可在此处找到。有关更多信息,请参阅README文件。
支持的语言
通常情况下,大多数编译型语言都将得到支持,只要它们能够构建为共享对象文件(共享库)。这意味着尽管VPlugin目前只支持Rust语言,但完全有可能用C、C++或甚至是Vala编写一个可以被VPlugin使用的插件。更多详情请参见插件规范。这里的关键要求是提供一种将您的类型导出到这些语言的方法,这需要提供安全保证和大量的专业知识。
依赖项
~6.5MB
~113K SLoC