##// END OF EJS Templates
phabricator: correct the default value of `phabhunk.corpus`...
phabricator: correct the default value of `phabhunk.corpus` There's only one caller to this constructor (which does provide this argument), and no direct assignments, so there's no runtime bug here. However, when pytype is tricked into using the standard `attr` package instead of the vendored version, it flags this because bytes is passed to the one constructor invocation. Tricking pytype into using the standard package will generate many more type hints, noteably around `@attr.s` decorated things.

File last commit:

r49730:6000f5b2 default
r52619:587153c9 default
Show More
bdiffbuild.py
34 lines | 717 B | text/x-python | PythonLexer
import cffi
import os
ffi = cffi.FFI()
with open(
os.path.join(os.path.join(os.path.dirname(__file__), '..'), 'bdiff.c')
) as f:
ffi.set_source(
"mercurial.cffi._bdiff", f.read(), include_dirs=['mercurial']
)
ffi.cdef(
"""
struct bdiff_line {
int hash, n, e;
ssize_t len;
const char *l;
};
struct bdiff_hunk;
struct bdiff_hunk {
int a1, a2, b1, b2;
struct bdiff_hunk *next;
};
int bdiff_splitlines(const char *a, ssize_t len, struct bdiff_line **lr);
int bdiff_diff(struct bdiff_line *a, int an, struct bdiff_line *b, int bn,
struct bdiff_hunk *base);
void bdiff_freehunks(struct bdiff_hunk *l);
void free(void*);
"""
)
if __name__ == '__main__':
ffi.compile()