#wayland-protocol #wayland #xml #protocols #parser

wayrs-proto-parser

Wayland 协议 XML 文件解析器

6 个稳定版本

2.0.3 2024 年 7 月 15 日
2.0.2 2024 年 6 月 18 日
2.0.1 2024 年 5 月 3 日
2.0.0 2024 年 1 月 27 日
1.0.1 2024 年 1 月 9 日

534GUI 中排名

Download history 470/week @ 2024-05-04 457/week @ 2024-05-11 401/week @ 2024-05-18 449/week @ 2024-05-25 444/week @ 2024-06-01 381/week @ 2024-06-08 652/week @ 2024-06-15 428/week @ 2024-06-22 381/week @ 2024-06-29 421/week @ 2024-07-06 748/week @ 2024-07-13 507/week @ 2024-07-20 491/week @ 2024-07-27 450/week @ 2024-08-03 488/week @ 2024-08-10 325/week @ 2024-08-17

1,815 每月下载量
12 个 Crates 中使用(通过 wayrs-scanner

MIT 许可证

18KB
363

wayrs

Wayland 客户端库的简单 Rust 实现。

设计决策

  • 单事件队列
  • 无内部可变性
  • libwayland 兼容性
  • 支持阻塞、非阻塞和异步 I/O

项目状态

  • 主 Crates,wayrs-client,功能完整且稳定。

项目结构

项目分为多个 Crates

  • wayrs-client:实现 Wayland 串行协议的主要 Crates。提供表示打开的 Wayland 套接字的 Connection 类型,管理对象并处理回调。
  • wayrs-protocols:与 wayrs-client 一起使用的 Wayland 协议集合。
  • wayrs-utils:为 wayrs-client 提供的一系列实用工具和抽象。包括共享内存分配器等。
  • wayrs-egl:将 OpenGL(-ES) 带到 wayrs。基于 EGL_KHR_platform_gbm
  • wayrs-scanner:实现从 .xml 文件生成粘合代码的 .wayrs_client:::generate! 宏。核心协议的生成代码已包含在 wayrs-client::protocol 中。请勿直接使用此 Crates。
  • wayrs-proto-parser:解析 wayland .xml 文件。由 wayrs-scanner 使用。
  • wayrs-core:核心类型、打包和解包实现。可供客户端和服务器使用。

使用 wayrs 的项目

以下项目使用 wayrs,可以作为额外使用示例

MSRV

1.72

依赖项

~1.5–2MB
~38K SLoC