render error sets for all functions returning VkResult

> VK_ERROR_UNKNOWN will be returned by an implementation when an unexpected
> error occurs that cannot be attributed to valid behavior of the application
> and implementation. Under these conditions, it may be returned from any
> command returning a VkResult.

Fixes #42
This commit is contained in:
Robin Voetter
2022-02-22 13:29:55 +01:00
parent 5b1385de70
commit 3781fe779c

View File

@@ -1026,7 +1026,7 @@ fn Renderer(comptime WriterType: type) type {
\\ var fields_array: [fields_len]TypeInfo.StructField = undefined; \\ var fields_array: [fields_len]TypeInfo.StructField = undefined;
\\ var fields: []TypeInfo.StructField = fields_array[0..]; \\ var fields: []TypeInfo.StructField = fields_array[0..];
\\ fields.len = 0; \\ fields.len = 0;
\\ \\
\\ for (std.enums.values({0s}Command)) |cmd_tag| {{ \\ for (std.enums.values({0s}Command)) |cmd_tag| {{
\\ if (@field(cmds, @tagName(cmd_tag))) {{ \\ if (@field(cmds, @tagName(cmd_tag))) {{
\\ const PfnType = cmd_tag.PfnType(); \\ const PfnType = cmd_tag.PfnType();
@@ -1130,7 +1130,8 @@ fn Renderer(comptime WriterType: type) type {
try self.writer.writeAll(") "); try self.writer.writeAll(") ");
if (command.error_codes.len > 0) { const returns_vk_result = command.return_type.* == .name and mem.eql(u8, command.return_type.name, "VkResult");
if (returns_vk_result) {
try self.renderErrorSetName(name); try self.renderErrorSetName(name);
try self.writer.writeByte('!'); try self.writer.writeByte('!');
} }
@@ -1245,7 +1246,7 @@ fn Renderer(comptime WriterType: type) type {
try self.renderReturnStruct(name, returns); try self.renderReturnStruct(name, returns);
} }
if (command.error_codes.len > 0) { if (returns_vk_result) {
try self.writer.writeAll("pub const "); try self.writer.writeAll("pub const ");
try self.renderErrorSetName(name); try self.renderErrorSetName(name);
try self.writer.writeAll(" = "); try self.writer.writeAll(" = ");