add placeholder-variant pipeline stage of Record
[ieee754fpu.git] / src / add / example_buf_pipe.py
index 578aed8e6cbe20e7d08b838c3267b305df43765b..005dbc172cbfa9aba2868a2450c2afd96efe610f 100644 (file)
@@ -187,9 +187,14 @@ def eq(o, i):
         if isinstance(ao, Record):
             for idx, (field_name, field_shape, _) in enumerate(ao.layout):
                 if isinstance(field_shape, Layout):
-                    rres = eq(ao.fields[field_name], ai.fields[field_name])
+                    val = ai.fields
                 else:
-                    rres = eq(ao.fields[field_name], ai[field_name])
+                    val = ai
+                if hasattr(val, field_name):
+                    val = getattr(val, field_name)
+                else:
+                    val = val[field_name]
+                rres = eq(ao.fields[field_name], val)
                 res += rres
         else:
             rres = ao.eq(ai)