<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">On Mon, Oct 16, 2017 at 7:48 AM, Brian M. Rzycki <span dir="ltr"><<a href="mailto:brzycki@gmail.com" target="_blank">brzycki@gmail.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir="ltr"><span class="gmail-"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Sounds good. I want to make sure you feel like you can make forward progress as quickly as possible (I know starting to fix all this has been a drag), so if you want to do it earlier, let me know and we'll figure something out :)</blockquote></span><div>Thanks Daniel for all the help. If it needs more work to be done right then I'll get on it. I want to make sure we get it right. :)</div><div><br></div><div> I was thinking about this over the weekend and I was thinking of a new class named DeferredDeviceTree or DeviceTreeDeferred.</div></div></blockquote><div><br></div><div>(I assume you meant dominator)<br><br></div><div>So let me try to give you my ideal design goals:<br>1. Be able to update the postdominatortree if it's around</div><div>2. Be able to update the dominatortree if it's around</div><div>(The same edge updates will work for both)</div><div>3. Only have to add one argument to existing functions to do #1 and #2</div><div>4. Only have one updater object/class that things have to use to do #1 and #2<br></div><div><br></div><div>The easiest option i see to do this:<br></div><div>Make an updater object that can take a DT and a PDT pointer, and internally apply the same edge updates to both. Modify everywhere to use it.</div><div><br></div><div>For example, you don't want everywhere to have to do</div><div><br></div><div>DT->insertedge(a, b)</div><div>PDT->insertedge(a, b)</div><div><br></div><div>The only thing this invites is getting one of the lines wrong by accident (or forgetting it).</div><div><br></div><div>Would it be okay if we had to?</div><div>Sure, but i don't (right now) see the advantage over an updater object.</div><div><br></div></div></div></div>