WORK-IN-PROGRESS
Communicate with Wayland using Nim but without depending on the libwayland C library (and a janky libc, GNU deps, etc).
Project priorities in descending order:
- simplicity
- efficiency
- miminal dependency graph
- Protocol compliance
The library is built against the sys I/O dispatcher and uses continuation-Passing style for asynchronicity. The implementation is simple enough to augmented later with support for different dispatchers, should patches be forthcoming.
The library provides a code-generator for producing a Nim module for a given protocol document in XML. Modules are provided for the core protocol and xdg-shell.
Modules generated from protocols contain object types that inherit from an abstract Wl_object
along with associated procedures for sending requests and methods for receiving events.
See the example test for how to use the library in practice.