| ... | @@ -194,12 +194,12 @@ fn FieldSearch(comptime T: type, comptime args: []const []const u8) type { | ... | @@ -194,12 +194,12 @@ fn FieldSearch(comptime T: type, comptime args: []const []const u8) type { |
| 194 | } | 194 | } |
| 195 | | 195 | |
| 196 | fn Field(comptime T: type, comptime field_name: []const u8) type { | 196 | fn Field(comptime T: type, comptime field_name: []const u8) type { |
| 197 | inline for (std.meta.fields(T)) |fld| { | | |
| 198 | if (std.mem.eql(u8, fld.name, field_name)) return fld.field_type; | | |
| 199 | } | | |
| 200 | if (std.meta.trait.isIndexable(T) and std.mem.eql(u8, field_name, "len")) { | 197 | if (std.meta.trait.isIndexable(T) and std.mem.eql(u8, field_name, "len")) { |
| 201 | return usize; | 198 | return usize; |
| 202 | } | 199 | } |
| | 200 | inline for (std.meta.fields(T)) |fld| { |
| | 201 | if (std.mem.eql(u8, fld.name, field_name)) return fld.field_type; |
| | 202 | } |
| 203 | @compileError(std.fmt.comptimePrint("pek: unknown field {s} on type {s}", .{ field_name, @typeName(T) })); | 203 | @compileError(std.fmt.comptimePrint("pek: unknown field {s} on type {s}", .{ field_name, @typeName(T) })); |
| 204 | } | 204 | } |
| 205 | | 205 | |