Commit Graph

31 Commits

Author SHA1 Message Date
Robin Voetter
d0897a14da fix parsing issues with vk 1.3.278
This change introduced len/optional attributes for
arrays. Previously, we assumed that these would only
occur on pointers, but now, this information is also
available for arrays.

This adapts the registery and parsing code to also
parse these properly. No modifications are made to the
rendering part as of yet, since these partially filled
arrays cannot be cleanly represented in Zig.
2024-02-17 16:13:37 +01:00
Robin Voetter
cebfcc6045 improve error handling of generator tool
This now also prints more detailed error messages,
similar to the build step.
2024-02-17 15:33:22 +01:00
Robin Voetter
27d9b028eb fix invalid use of var 2023-11-21 19:56:00 +01:00
Robin Voetter
6d46195c99 make pointers which do not have an 'optional' attribute optional
Closes #109
2023-10-21 11:02:48 +02:00
Peter Lef
f172cbbd7d Minor readability change
To be consistent with the naming style in the previous loop.
2023-07-24 00:18:56 -04:00
Peter Lef
69402977bc Fix overwriting of pointer optionality 2023-07-24 00:18:16 -04:00
Peter Lef
c7d3723710 Nullable pointer parameters
For procedure parameters which are of pointer type: if the associated
`count` parameter is marked `optional` in the XML, this commit makes the
parameter pointer type nullable.
2023-07-10 10:59:11 -04:00
Robin Voetter
070500f5e5 Update parser for VulkanSC changes
The update that added the VulkanSC changes to vk.xml broke vulkan-zig previously.
2023-03-04 01:24:30 +01:00
ashpil
0873a35392 provide defaults for struct fields vulkan considers optional 2023-02-05 13:33:13 -05:00
Robin Voetter
a56d6e31a8 allocgate 2.0 2022-12-03 02:35:40 +01:00
Robin Voetter
be59386118 change pointer size fallback to many 2022-11-27 23:24:37 +01:00
Robin Voetter
75aa7e5556 Explicitly default pNext fields again
This undoes #5, as there are still some structs which do not properly
set this value.
2022-10-07 01:36:34 +02:00
Robin Voetter
135fc51b3b make basetypes with no clear type foreign
This allows the user to override them to the proper type
2022-10-07 01:35:26 +02:00
Robin Voetter
cc87740422 improve xml parser 2022-08-20 00:31:42 +02:00
Robin Voetter
7c2d1d466b parse pointers in function pointer declarations always as optional 2021-12-17 20:13:19 +01:00
Robin Voetter
797ae8af88 Adapt to latest Zig master
See ziglang/zig/pull/10055
2021-12-09 00:28:17 +01:00
Robin Voetter
07e530719b Update std.mem.split usage to new API 2021-08-14 01:07:08 +02:00
ashpil
871d4e7251 implements default for feature structs 2021-07-08 21:31:41 -04:00
Robin Voetter
79d901a3e0 Fix a whole bunch of issues exposed by ziglang/zig#9191
This also includes a workaround for the fact that @"type" refers to the builtin
and not to a variable called "type". See ziglang/zig#2897.
2021-06-24 02:11:36 +02:00
Robin Voetter
511211f038 zig fmt **.zig
This also replaces @byteOffsetOf with @offsetOf.
2021-06-13 15:15:42 +02:00
Robin Voetter
711bc08211 Stop fixing up bitmasks.
This seems to not be required anymore.
2021-04-08 13:02:07 +02:00
Robin Voetter
1e7b5edb10 Allow F as floating-point suffix 2021-03-30 13:08:34 +02:00
Robin Voetter
9f23e2e16d Vulkan 1.2.170 compatibility 2021-02-16 15:26:22 +01:00
antlilja
bee43cea9d Removed special case for member pNext.
Member pNext is now marked correctly as optional in vk.xml,
this special case is no longer needed.
2020-12-04 20:31:43 +01:00
Robin Voetter
9aa2899f06 Replace std.SegmentedList by std.ArrayList 2020-12-01 14:17:04 +01:00
Robin Voetter
7fdb6eaad3 Parse & render sType from spec (fixes #3) 2020-11-26 15:47:04 +01:00
Robin Voetter
7a79846b1b Update to new opaque syntax 2020-10-08 13:09:41 +02:00
Robin Voetter
c708f01e3a Move vulkan/util.zig to id_render.zig, and make it more generic 2020-08-11 18:07:21 +02:00
Robin Voetter
0928b25a53 Add Khronos license information to generated bindings 2020-07-08 01:41:03 +02:00
Robin Voetter
569c9df5c2 TagFixerUpper 2020-07-05 18:22:45 +02:00
Robin Voetter
cebecfe197 Restructure to allow for other binding generators in the future 2020-07-03 16:40:49 +02:00