4 个版本
使用旧的 Rust 2015
0.1.2 | 2017 年 5 月 11 日 |
---|---|
0.1.1 | 2017 年 4 月 21 日 |
0.1.0 | 2017 年 4 月 20 日 |
0.0.1 | 2017 年 4 月 2 日 |
#1176 in GUI
48KB
124 代码行
Skylane
skylane
是用 Rust 编写的 Wayland 协议的实现。
项目由三个仓库组成
-
skylane
- 核心协议实现 -
skylane_scanner
- 从 XML 协议描述(相当于wayland-scanner
)生成 marshalling 代码 -
skylane_protocols
- 使用skylane_scanner
生成协议 marshalling 代码 + 一些粘合代码
文档
文档可以在 docs.rs 上找到。
项目
skylane
是作为 perceptia
项目的组成部分开发的。最新的使用示例可以在那里找到。
许可证
skylane_protocols
在 MIT 许可证 下发布。
lib.rs
:
此 crate 通过从 XML 协议描述文件自动生成的 Wayland
协议绑定来补充 skylane
crate。
此 crate 计划提供所有(稳定和不稳定)协议的实现。如果缺少某些内容,请告诉我们。
实现
每个协议描述文件包含请求(从客户端到服务器)和事件(从服务器到客户端)。在服务器部分,请求被转换为
- 接口 - 描述 Wayland 协议对象方法的特质
- 调度器 - 将套接字数据转换为调用实现适当接口的对象上的方法的结构的转换器。而事件则为独立函数。在客户端部分反之。
Handler
结构帮助将 Dispatcher
与其实现的 Interface
绑定,并在 server::Connection
中注册它(来自 skylane
crate)。
服务器示例
待办事项:添加服务器示例。
客户端示例
待办事项:添加客户端示例。
依赖关系
~2MB
~40K SLoC