-
Notifications
You must be signed in to change notification settings - Fork 1
Open
Labels
bugSomething isn't workingSomething isn't working
Description
Actually, now that I'm looking at this code, I can see that it's quite, quite broken. The reason for the guards was because fixup_neighbor() was called on all of self's neighbors, and that fixup_neighbor() had to figure out which neighbor was being fixed up. That is really a poor way of doing it as each if statement already knows which neighbor its working on, so fixup_neighbor() is unnecessary.
That said, this does give a good opportunity to put in some debug asserts; our children should see us as their parent, and our parent should see us as their child. If these invariants are ever broken, then so is the tree.
Originally posted by @ckaran in #54 (comment)
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working