summaryrefslogtreecommitdiff
path: root/patches/patches/082_anonymous_structs3.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/patches/082_anonymous_structs3.patch')
-rw-r--r--patches/patches/082_anonymous_structs3.patch48
1 files changed, 32 insertions, 16 deletions
diff --git a/patches/patches/082_anonymous_structs3.patch b/patches/patches/082_anonymous_structs3.patch
index 6965858..7beb511 100644
--- a/patches/patches/082_anonymous_structs3.patch
+++ b/patches/patches/082_anonymous_structs3.patch
@@ -1,16 +1,32 @@
-85c85
-< const fields = ???;
----
-> const fields = @typeInfo(@TypeOf(tuple)).Struct.fields;
-92c92
-< for (fields) |field| {
----
-> inline for (fields) |field| {
-120,122c120,122
-< field.???,
-< field.???,
-< ???,
----
-> field.name,
-> field.type,
-> @field(tuple, field.name),
+--- exercises/082_anonymous_structs3.zig 2023-10-03 22:15:22.125574535 +0200
++++ answers/082_anonymous_structs3.zig 2023-10-05 20:04:07.212769813 +0200
+@@ -82,14 +82,14 @@
+ // @typeInfo(Circle).Struct.fields
+ //
+ // This will be an array of StructFields.
+- const fields = ???;
++ const fields = @typeInfo(@TypeOf(tuple)).Struct.fields;
+
+ // 2. Loop through each field. This must be done at compile
+ // time.
+ //
+ // Hint: remember 'inline' loops?
+ //
+- for (fields) |field| {
++ inline for (fields) |field| {
+ // 3. Print the field's name, type, and value.
+ //
+ // Each 'field' in this loop is one of these:
+@@ -117,9 +117,9 @@
+ //
+ // The first field should print as: "0"(bool):true
+ print("\"{s}\"({any}):{any} ", .{
+- field.???,
+- field.???,
+- ???,
++ field.name,
++ field.type,
++ @field(tuple, field.name),
+ });
+ }
+ }