<div dir="auto"><div dir="auto"><span style="font-family:sans-serif;font-size:12.8px">Just because someone is bound to suggest it, might as well be me.</span></div><div dir="auto"><span style="font-family:sans-serif;font-size:12.8px"><br></span></div><div><span style="font-family:sans-serif;font-size:12.8px">type</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">        TRecA = record</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">                a: string;</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">                b: string;</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">        end;</span><br style="font-family:sans-serif;font-size:12.8px"><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">type</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">        TRecB = record</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">                A: TRecA</span><span style="font-family:sans-serif;font-size:12.8px">;</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">                c: integer;</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">                d: integer;</span><br style="font-family:sans-serif;font-size:12.8px"><span style="font-family:sans-serif;font-size:12.8px">        end;</span></div><div dir="auto"><font face="sans-serif"><span style="font-size:12.8px"><br></span></font></div><div dir="auto"><font face="sans-serif"><span style="font-size:12.8px">RecB.A := RecA;</span></font></div><div dir="auto"><font face="sans-serif"><span style="font-size:12.8px"><br></span></font>Jeff</div><div dir="auto"><br><div class="gmail_quote" dir="auto"><div dir="ltr">On Mon, Jul 9, 2018, 12:23 PM Ryan Joseph <<a href="mailto:ryan@thealchemistguild.com">ryan@thealchemistguild.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Could I do some RTL magic on a record to loop over its fields and set them to another record by name? In the example below I want to set all the fields in TRecA to matching named fields in TRecB. Just curious if we can do this automatically using RTL.<br>
<br>
type<br>
        TRecA = record<br>
                a: string;<br>
                b: string;<br>
        end;<br>
<br>
type<br>
        TRecB = record<br>
                a: string;<br>
                b: string;<br>
                c: integer;<br>
                d: integer;<br>
        end;<br>
<br>
<br>
for field in recA.GetFields do<br>
        recB.GetFieldByName(<a href="http://field.name" rel="noreferrer noreferrer" target="_blank">field.name</a>).value := field.value<br>
<br>
<br>
Regards,<br>
        Ryan Joseph<br>
<br>
_______________________________________________<br>
fpc-pascal maillist  -  <a href="mailto:fpc-pascal@lists.freepascal.org" target="_blank" rel="noreferrer">fpc-pascal@lists.freepascal.org</a><br>
<a href="http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal" rel="noreferrer noreferrer" target="_blank">http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal</a></blockquote></div></div></div>