Hi!

On Mon, Dec 17, 2012 at 2:42 PM, Jeff Davis <pg...@j-davis.com> wrote:

> I have attached a patch with some significant edits.
>
> * In your patch, there was still an inconsistency between the comment
> for bounds_adjacent and the code. I refactored it to ensure it always
> takes the upper bound as boundA, and the lower bound as boundB, so that
> it can invert the inclusivities to create A..B to match the comments.
>
> * In the consistent method, you were inverting upper to be a lower bound
> and lower to be an upper bound. I don't understand why (perhaps I did
> the first time I read the patch), so I removed it.
>
> * It looks like the comments for which1/2 were inconsistent with the
> code. I tried to fix that.
>
> * I significantly refactored the comments and code for the consistent
> method. I had trouble understanding the original comments, particularly
> around the edge cases.
>
> Please take a look and see if it still matches your algorithm properly.
> This patch is not intended to be a final version (I didn't analyze my
> code carefully), but just to show you what I mean and how I interpret
> what the code is trying to do. You don't need to use my refactorings,
> but if not, the comments in your version need more improvement so I can
> understand.
>
> I found it easier to reason in terms of horizontal and vertical lines,
> and which quadrants they crossed, and then work out the edge cases. I'm
> not sure if that reasoning was correct, but it seemed to make more sense
> to me.
>

Your comments and refactoring looks good for me.

------
With best regards,
Alexander Korotkov.

Reply via email to