# HG changeset patch # User Yuya Nishihara # Date 1523274463 -32400 # Node ID 53021c4ef0b29fff87403b017fc81b89bb1d1d44 # Parent f53b55b162f4aab9846dee566c3c2e9f4803c821 diffhelpers: port docstrings from cext to pure I'll remove the C implementation. diff -r f53b55b162f4 -r 53021c4ef0b2 mercurial/pure/diffhelpers.py --- a/mercurial/pure/diffhelpers.py Mon Apr 09 20:44:41 2018 +0900 +++ b/mercurial/pure/diffhelpers.py Mon Apr 09 20:47:43 2018 +0900 @@ -8,6 +8,12 @@ from __future__ import absolute_import def addlines(fp, hunk, lena, lenb, a, b): + """Read lines from fp into the hunk + + The hunk is parsed into two arrays, a and b. a gets the old state of + the text, b gets the new state. The control char from the hunk is saved + when inserting into a, but not b (for performance while deleting files.) + """ while True: todoa = lena - len(a) todob = lenb - len(b) @@ -34,6 +40,7 @@ return 0 def fix_newline(hunk, a, b): + """Fix up the last lines of a and b when the patch has no newline at EOF""" l = hunk[-1] # tolerate CRLF in last line if l.endswith('\r\n'): @@ -50,6 +57,11 @@ def testhunk(a, b, bstart): + """Compare the lines in a with the lines in b + + a is assumed to have a control char at the start of each line, this char + is ignored in the compare. + """ alen = len(a) blen = len(b) if alen > blen - bstart: