197 Commits

Author SHA1 Message Date
Isaac Freund
5878169e56 Make all enums based on u32
This may not be the perfect fix, but it'll work for now
2020-10-11 21:52:06 +02:00
Isaac Freund
c1d16f45f1 Import std.os in all generated code
this is needed for fd arguments
2020-10-11 21:48:58 +02:00
Isaac Freund
66d50b6d91 Link libwayland generated interface structs
This is a workaround for a limitation of the stage1 zig compiler
See: https://github.com/ziglang/zig/issues/131
2020-10-11 20:01:03 +02:00
Isaac Freund
aa3edd365e Move client/server core to wl namespace
This makes using the api nicer as the organization is closer to
libwayland and wl is shorter to type than client or server.
2020-10-11 17:51:17 +02:00
Isaac Freund
d710b3cec3 Fix generation of wl.Registry.bind 2020-10-08 16:56:57 +02:00
Isaac Freund
de5909ae8c Handle messages with no args 2020-10-08 14:41:46 +02:00
Isaac Freund
8d7f1f546e Handle dashes is xml filenames 2020-10-08 13:52:35 +02:00
Isaac Freund
3665ebf961 Fix typo 2020-10-08 13:48:16 +02:00
Isaac Freund
92f3f7548a Rename emitInterface -> emitCommon 2020-10-08 13:42:54 +02:00
Isaac Freund
1b0b4f0294 Move enums to common 2020-10-08 13:40:21 +02:00
Isaac Freund
bc9b3b8488 Fix emiting args for client requests 2020-10-08 13:31:46 +02:00
Isaac Freund
45834da450 Emit send functions for server 2020-10-08 13:07:09 +02:00
Isaac Freund
74cd6de62e Emit server Requests 2020-10-08 00:42:55 +02:00
Isaac Freund
9d2505e4c7 Add some example generated server code 2020-10-07 00:26:44 +02:00
Isaac Freund
40232ae394 Make Dispatcher work for server as well 2020-10-07 00:04:35 +02:00
Isaac Freund
85bef02e7b Preform some general cleanup 2020-10-06 23:32:00 +02:00
Isaac Freund
49780b9609 Add ShmBuffer and ShmPool bindings 2020-10-06 22:17:18 +02:00
Isaac Freund
8315c1d1e5 Consolidate and flush out server bindings 2020-10-06 22:04:37 +02:00
Isaac Freund
46f1eb5b17 Add server display functions 2020-10-05 18:39:17 +02:00
Isaac Freund
76845eaabc Fix bitrot in client display functions 2020-10-05 16:50:28 +02:00
Isaac Freund
9026e1007f Move client display functions to src/ 2020-10-05 16:44:56 +02:00
Isaac Freund
3bf6bbea66 Move non protocol related code to util 2020-10-05 16:35:59 +02:00
Isaac Freund
e713606356 Start server bindings 2020-10-05 16:18:25 +02:00
Isaac Freund
3340f8831f Add wl_list implementation 2020-10-05 13:29:23 +02:00
Isaac Freund
ee5ffdbba8 Ignore generated files 2020-10-03 16:00:59 +02:00
Isaac Freund
ab3428cc87 Wrangle everything into proper namespaces 2020-10-03 15:53:16 +02:00
Isaac Freund
327681081e Skip emitting events if there are none 2020-10-03 04:20:55 +02:00
Isaac Freund
7cbddbbf85 Get the example working with generated code 2020-10-03 04:10:30 +02:00
Isaac Freund
3c04592ba9 Emit request functions 2020-10-03 03:16:22 +02:00
Isaac Freund
ca2cdd4fab Emit setListener() 2020-10-01 14:31:29 +02:00
Isaac Freund
f33ff5a09e Move Dispatcher to common 2020-10-01 14:13:22 +02:00
Isaac Freund
5560b7481e Generate Event structs 2020-10-01 14:08:42 +02:00
Isaac Freund
02567c5299 Generate enums and handle invalid identifiers 2020-10-01 13:09:51 +02:00
Isaac Freund
2fef3717ee Emit Interface structs with the scanner 2020-09-30 01:07:12 +02:00
Isaac Freund
288695f5c9 Remove dead code 2020-09-28 15:10:13 +02:00
Isaac Freund
5f48d0846c Strings and Arrays may also be null 2020-09-28 12:21:23 +02:00
Isaac Freund
3e2207a533 Use tagged unions for events
Made possible by wl_proxy_add_dispatcher() instead of add_listener().
Probably UB curretly for some times, needs cleanup.
2020-09-28 01:42:38 +02:00
Isaac Freund
bf0684066a Use new opaque {} syntax 2020-09-26 01:29:51 +02:00
Isaac Freund
dae8765366 Make globals example work
This currently uses "manually" generate code as a proof of concept,
generation from the protocol xml will eventually use the scanner.
2020-09-25 00:07:11 +02:00
Isaac Freund
697309766d Add MIT (expat) license 2020-09-23 20:47:32 +02:00
Isaac Freund
5c566bbf32 Test parsing of actual wayland.xml 2020-09-23 20:40:29 +02:00
Isaac Freund
de61447c13 Add trivial parsing test case 2020-09-23 19:33:46 +02:00
Isaac Freund
cca2cd4943 Implement rest of essential parsing
Summaries, descriptions and what not are currently ignored.
2020-09-23 19:16:19 +02:00
Isaac Freund
c808a20610 Implement some parsing 2020-09-19 00:53:00 +02:00
Isaac Freund
430c7dc20a Start work on scanner 2020-09-16 02:27:51 +02:00
Isaac Freund
8fb886691a Start wl_proxy bindings 2020-09-15 00:54:24 +02:00
Isaac Freund
9cc3c3011e Initial commit 2020-09-13 23:26:15 +02:00