mirror of
https://github.com/facebook/sapling.git
synced 2024-10-12 17:58:27 +03:00
c12e300bb8
Summary: Move top-level Python packages `mercurial`, `hgext` and `hgdemandimport` to a new top-level package `edenscm`. This allows the Python packages provided by the upstream Mercurial to be installed side-by-side. To maintain compatibility, `edenscm/` gets added to `sys.path` in `mercurial/__init__.py`. Reviewed By: phillco, ikostia Differential Revision: D13853115 fbshipit-source-id: b296b0673dc54c61ef6a591ebc687057ff53b22e
33 lines
761 B
C
33 lines
761 B
C
#ifndef _HG_MPATCH_H_
|
|
#define _HG_MPATCH_H_
|
|
|
|
#define MPATCH_ERR_NO_MEM -3
|
|
#define MPATCH_ERR_CANNOT_BE_DECODED -2
|
|
#define MPATCH_ERR_INVALID_PATCH -1
|
|
#include "edenscm/mercurial/compat.h"
|
|
|
|
struct mpatch_frag {
|
|
int start, end, len;
|
|
const char* data;
|
|
};
|
|
|
|
struct mpatch_flist {
|
|
struct mpatch_frag *base, *head, *tail;
|
|
};
|
|
|
|
int mpatch_decode(const char* bin, ssize_t len, struct mpatch_flist** res);
|
|
ssize_t mpatch_calcsize(ssize_t len, struct mpatch_flist* l);
|
|
void mpatch_lfree(struct mpatch_flist* a);
|
|
int mpatch_apply(
|
|
char* buf,
|
|
const char* orig,
|
|
ssize_t len,
|
|
struct mpatch_flist* l);
|
|
struct mpatch_flist* mpatch_fold(
|
|
void* bins,
|
|
struct mpatch_flist* (*get_next_item)(void*, ssize_t),
|
|
ssize_t start,
|
|
ssize_t end);
|
|
|
|
#endif
|