Mercurial > hg
diff mercurial/pure/diffhelpers.py @ 37567:53021c4ef0b2
diffhelpers: port docstrings from cext to pure
I'll remove the C implementation.
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Mon, 09 Apr 2018 20:47:43 +0900 |
parents | f53b55b162f4 |
children | c4c8d0d1267f |
line wrap: on
line diff
--- 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: